64 lines
1.6 KiB
Java
64 lines
1.6 KiB
Java
package android.test;
|
|
|
|
import java.io.PrintStream;
|
|
|
|
import android.os.Bundle;
|
|
|
|
import junit.framework.AssertionFailedError;
|
|
import junit.framework.Test;
|
|
import junit.framework.TestCase;
|
|
import junit.runner.BaseTestRunner;
|
|
import junit.textui.ResultPrinter;
|
|
|
|
|
|
/**
|
|
* Subclass of ResultPrinter that adds test case results to a bundle.
|
|
*
|
|
* {@hide} - This class is deprecated, and will be going away. Please don't use it.
|
|
*/
|
|
public class BundlePrinter extends ResultPrinter {
|
|
|
|
private Bundle mResults;
|
|
private boolean mFailure;
|
|
private boolean mError;
|
|
|
|
public BundlePrinter(PrintStream writer, Bundle result) {
|
|
super(writer);
|
|
mResults = result;
|
|
}
|
|
|
|
@Override
|
|
public void addError(Test test, Throwable t) {
|
|
mResults.putString(getComboName(test), BaseTestRunner.getFilteredTrace(t));
|
|
mFailure = true;
|
|
super.addError(test, t);
|
|
}
|
|
|
|
@Override
|
|
public void addFailure(Test test, AssertionFailedError t) {
|
|
mResults.putString(getComboName(test), BaseTestRunner.getFilteredTrace(t));
|
|
mError = true;
|
|
super.addFailure(test, t);
|
|
}
|
|
|
|
@Override
|
|
public void endTest(Test test) {
|
|
if (!mFailure && !mError) {
|
|
mResults.putString(getComboName(test), "passed");
|
|
}
|
|
super.endTest(test);
|
|
}
|
|
|
|
@Override
|
|
public void startTest(Test test) {
|
|
mFailure = false;
|
|
mError = false;
|
|
super.startTest(test);
|
|
}
|
|
|
|
private String getComboName(Test test) {
|
|
return test.getClass().getName() + ":" + ((TestCase) test).getName();
|
|
}
|
|
|
|
}
|