@Override public void testEnded(TestIdentifier test, Map<String, String> testMetrics) { TestResult result = mTestResults.get(test); if (result == null) { result = new TestResult(); } if (result.getStatus().equals(TestStatus.INCOMPLETE)) { result.setStatus(TestStatus.PASSED); } result.setEndTime(System.currentTimeMillis()); result.setMetrics(testMetrics); addTestResult(test, result); }
@Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } TestResult other = (TestResult) obj; return equal(mMetrics, other.mMetrics) && equal(mStackTrace, other.mStackTrace) && equal(mStatus, other.mStatus); }
private void updateTestResult(TestIdentifier test, TestStatus status, String trace) { TestResult r = mTestResults.get(test); if (r == null) { Log.d(LOG_TAG, String.format("received test event without test start for %s", test)); r = new TestResult(); } r.setStatus(status); r.setStackTrace(trace); addTestResult(test, r); }
void print(KXmlSerializer serializer, TestIdentifier testId, TestResult testResult) throws IOException { serializer.startTag(ns, TESTCASE); serializer.attribute(ns, ATTR_NAME, getTestName(testId)); serializer.attribute(ns, ATTR_CLASSNAME, testId.getClassName()); long elapsedTimeMs = testResult.getEndTime() - testResult.getStartTime(); serializer.attribute(ns, ATTR_TIME, Double.toString((double)elapsedTimeMs / 1000.f)); switch (testResult.getStatus()) { case FAILURE: printFailedTest(serializer, FAILURE, testResult.getStackTrace()); break; case ASSUMPTION_FAILURE: printFailedTest(serializer, SKIPPED_TAG, testResult.getStackTrace()); break; case IGNORED: serializer.startTag(ns, SKIPPED_TAG); serializer.endTag(ns, SKIPPED_TAG); break; } serializer.endTag(ns, TESTCASE); }
/** * Gets the set of completed tests. */ public Set<TestIdentifier> getCompletedTests() { Set<TestIdentifier> completedTests = new LinkedHashSet<TestIdentifier>(); for (Map.Entry<TestIdentifier, TestResult> testEntry : getTestResults().entrySet()) { if (!testEntry.getValue().getStatus().equals(TestStatus.INCOMPLETE)) { completedTests.add(testEntry.getKey()); } } return completedTests; }
@Override public void testStarted(TestIdentifier test) { addTestResult(test, new TestResult()); }
/** * Gets the number of tests in given state for this run. */ public int getNumTestsInState(TestStatus status) { if (mIsCountDirty) { // clear counts for (int i=0; i < mStatusCounts.length; i++) { mStatusCounts[i] = 0; } // now recalculate for (TestResult r : mTestResults.values()) { mStatusCounts[r.getStatus().ordinal()]++; } mIsCountDirty = false; } return mStatusCounts[status.ordinal()]; }