Browse files

Remove junit source from libcore.

Will be replaced with library built from external/junit.

Bug 5826326

Change-Id: I78518a04b57bade113b1797a808ec1a39bd82ad7
  • Loading branch information...
1 parent 99e7245 commit 17cdf1ac454247016f338d84be763789e6416100 Brett Chabot committed Apr 13, 2012
View
1 Docs.mk
@@ -21,7 +21,6 @@ define libcore_to_document
dalvik/src/main/java/dalvik/annotation \
dalvik/src/main/java/dalvik/bytecode \
json/src/main/java \
- junit/src/main/java \
luni/src/main/java/java \
luni/src/main/java/javax \
luni/src/main/java/org/xml/sax \
View
21 JavaLibrary.mk
@@ -88,16 +88,6 @@ include $(BUILD_JAVA_LIBRARY)
core-intermediates := ${intermediates}
-# Make core-junit
-include $(CLEAR_VARS)
-LOCAL_SRC_FILES := $(call all-main-java-files-under,junit)
-LOCAL_NO_STANDARD_LIBRARIES := true
-LOCAL_JAVA_LIBRARIES := core
-LOCAL_JAVACFLAGS := $(local_javac_flags)
-LOCAL_MODULE_TAGS := optional
-LOCAL_MODULE := core-junit
-include $(BUILD_JAVA_LIBRARY)
-
# Make the core-tests library.
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(call all-test-java-files-under,dalvik dom json luni support xml)
@@ -153,17 +143,6 @@ ifeq ($(WITH_HOST_DALVIK),true)
include $(BUILD_HOST_JAVA_LIBRARY)
- # Make core-junit
- include $(CLEAR_VARS)
- LOCAL_SRC_FILES := $(call all-main-java-files-under,junit)
- LOCAL_NO_STANDARD_LIBRARIES := true
- LOCAL_JAVA_LIBRARIES := core-hostdex
- LOCAL_JAVACFLAGS := $(local_javac_flags)
- LOCAL_MODULE_TAGS := optional
- LOCAL_MODULE := core-junit-hostdex
- LOCAL_BUILD_HOST_DEX := true
- include $(BUILD_HOST_JAVA_LIBRARY)
-
# Make the core-tests library.
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(call all-test-java-files-under,dalvik dom json luni support xml)
View
1 junit/MODULE_LICENSE_CPL
@@ -1 +0,0 @@
-http://www.opensource.org/licenses/cpl1.0.php
View
70 junit/src/main/java/junit/extensions/ActiveTestSuite.java
@@ -1,70 +0,0 @@
-package junit.extensions;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestResult;
-import junit.framework.TestSuite;
-
-/**
- * A TestSuite for active Tests. It runs each
- * test in a separate thread and waits until all
- * threads have terminated.
- * -- Aarhus Radisson Scandinavian Center 11th floor
- */
-public class ActiveTestSuite extends TestSuite {
- private volatile int fActiveTestDeathCount;
-
- public ActiveTestSuite() {
- }
-
- public ActiveTestSuite(Class<? extends TestCase> theClass) {
- super(theClass);
- }
-
- public ActiveTestSuite(String name) {
- super (name);
- }
-
- public ActiveTestSuite(Class<? extends TestCase> theClass, String name) {
- super(theClass, name);
- }
-
- @Override
- public void run(TestResult result) {
- fActiveTestDeathCount= 0;
- super.run(result);
- waitUntilFinished();
- }
-
- @Override
- public void runTest(final Test test, final TestResult result) {
- Thread t= new Thread() {
- @Override
- public void run() {
- try {
- // inlined due to limitation in VA/Java
- //ActiveTestSuite.super.runTest(test, result);
- test.run(result);
- } finally {
- ActiveTestSuite.this.runFinished();
- }
- }
- };
- t.start();
- }
-
- synchronized void waitUntilFinished() {
- while (fActiveTestDeathCount < testCount()) {
- try {
- wait();
- } catch (InterruptedException e) {
- return; // ignore
- }
- }
- }
-
- synchronized public void runFinished() {
- fActiveTestDeathCount++;
- notifyAll();
- }
-}
View
46 junit/src/main/java/junit/extensions/ExceptionTestCase.java
@@ -1,46 +0,0 @@
-package junit.extensions;
-
-import junit.framework.*;
-
-/**
- * A TestCase that expects an Exception of class fExpected to be thrown.
- * The other way to check that an expected exception is thrown is:
- * <pre>
- * try {
- * shouldThrow();
- * }
- * catch (SpecialException e) {
- * return;
- * }
- * fail("Expected SpecialException");
- * </pre>
- *
- * To use ExceptionTestCase, create a TestCase like:
- * <pre>
- * new ExceptionTestCase("testShouldThrow", SpecialException.class);
- * </pre>
- */
-public class ExceptionTestCase extends TestCase {
- Class fExpected;
-
- public ExceptionTestCase(String name, Class exception) {
- super(name);
- fExpected= exception;
- }
- /**
- * Execute the test method expecting that an Exception of
- * class fExpected or one of its subclasses will be thrown
- */
- protected void runTest() throws Throwable {
- try {
- super.runTest();
- }
- catch (Exception e) {
- if (fExpected.isAssignableFrom(e.getClass()))
- return;
- else
- throw e;
- }
- fail("Expected exception " + fExpected);
- }
-}
View
38 junit/src/main/java/junit/extensions/RepeatedTest.java
@@ -1,38 +0,0 @@
-package junit.extensions;
-
-import junit.framework.Test;
-import junit.framework.TestResult;
-
-/**
- * A Decorator that runs a test repeatedly.
- *
- */
-public class RepeatedTest extends TestDecorator {
- private int fTimesRepeat;
-
- public RepeatedTest(Test test, int repeat) {
- super(test);
- if (repeat < 0)
- throw new IllegalArgumentException("Repetition count must be >= 0");
- fTimesRepeat= repeat;
- }
-
- @Override
- public int countTestCases() {
- return super.countTestCases() * fTimesRepeat;
- }
-
- @Override
- public void run(TestResult result) {
- for (int i= 0; i < fTimesRepeat; i++) {
- if (result.shouldStop())
- break;
- super.run(result);
- }
- }
-
- @Override
- public String toString() {
- return super.toString() + "(repeated)";
- }
-}
View
43 junit/src/main/java/junit/extensions/TestDecorator.java
@@ -1,43 +0,0 @@
-package junit.extensions;
-
-import junit.framework.Assert;
-import junit.framework.Test;
-import junit.framework.TestResult;
-
-/**
- * A Decorator for Tests. Use TestDecorator as the base class for defining new
- * test decorators. Test decorator subclasses can be introduced to add behaviour
- * before or after a test is run.
- *
- */
-public class TestDecorator extends Assert implements Test {
- protected Test fTest;
-
- public TestDecorator(Test test) {
- fTest= test;
- }
-
- /**
- * The basic run behaviour.
- */
- public void basicRun(TestResult result) {
- fTest.run(result);
- }
-
- public int countTestCases() {
- return fTest.countTestCases();
- }
-
- public void run(TestResult result) {
- basicRun(result);
- }
-
- @Override
- public String toString() {
- return fTest.toString();
- }
-
- public Test getTest() {
- return fTest;
- }
-}
View
42 junit/src/main/java/junit/extensions/TestSetup.java
@@ -1,42 +0,0 @@
-package junit.extensions;
-
-import junit.framework.Protectable;
-import junit.framework.Test;
-import junit.framework.TestResult;
-
-/**
- * A Decorator to set up and tear down additional fixture state. Subclass
- * TestSetup and insert it into your tests when you want to set up additional
- * state once before the tests are run.
- */
-public class TestSetup extends TestDecorator {
-
- public TestSetup(Test test) {
- super(test);
- }
-
- @Override
- public void run(final TestResult result) {
- Protectable p= new Protectable() {
- public void protect() throws Exception {
- setUp();
- basicRun(result);
- tearDown();
- }
- };
- result.runProtected(this, p);
- }
-
- /**
- * Sets up the fixture. Override to set up additional fixture state.
- */
- protected void setUp() throws Exception {
- }
-
- /**
- * Tears down the fixture. Override to tear down the additional fixture
- * state.
- */
- protected void tearDown() throws Exception {
- }
-}
View
6 junit/src/main/java/junit/extensions/package.html
@@ -1,6 +0,0 @@
-<HTML>
-<BODY>
-Utility classes supporting the junit test framework.
-{@hide} - Not needed for 1.0 SDK
-</BODY>
-</HTML>
View
296 junit/src/main/java/junit/framework/Assert.java
@@ -1,296 +0,0 @@
-package junit.framework;
-
-/**
- * A set of assert methods. Messages are only displayed when an assert fails.
- */
-
-public class Assert {
- /**
- * Protect constructor since it is a static only class
- */
- protected Assert() {
- }
-
- /**
- * Asserts that a condition is true. If it isn't it throws
- * an AssertionFailedError with the given message.
- */
- static public void assertTrue(String message, boolean condition) {
- if (!condition)
- fail(message);
- }
- /**
- * Asserts that a condition is true. If it isn't it throws
- * an AssertionFailedError.
- */
- static public void assertTrue(boolean condition) {
- assertTrue(null, condition);
- }
- /**
- * Asserts that a condition is false. If it isn't it throws
- * an AssertionFailedError with the given message.
- */
- static public void assertFalse(String message, boolean condition) {
- assertTrue(message, !condition);
- }
- /**
- * Asserts that a condition is false. If it isn't it throws
- * an AssertionFailedError.
- */
- static public void assertFalse(boolean condition) {
- assertFalse(null, condition);
- }
- /**
- * Fails a test with the given message.
- */
- static public void fail(String message) {
- if (message == null) {
- throw new AssertionFailedError();
- }
- throw new AssertionFailedError(message);
- }
- /**
- * Fails a test with no message.
- */
- static public void fail() {
- fail(null);
- }
- /**
- * Asserts that two objects are equal. If they are not
- * an AssertionFailedError is thrown with the given message.
- */
- static public void assertEquals(String message, Object expected, Object actual) {
- if (expected == null && actual == null)
- return;
- if (expected != null && expected.equals(actual))
- return;
- failNotEquals(message, expected, actual);
- }
- /**
- * Asserts that two objects are equal. If they are not
- * an AssertionFailedError is thrown.
- */
- static public void assertEquals(Object expected, Object actual) {
- assertEquals(null, expected, actual);
- }
- /**
- * Asserts that two Strings are equal.
- */
- static public void assertEquals(String message, String expected, String actual) {
- if (expected == null && actual == null)
- return;
- if (expected != null && expected.equals(actual))
- return;
- String cleanMessage= message == null ? "" : message;
- throw new ComparisonFailure(cleanMessage, expected, actual);
- }
- /**
- * Asserts that two Strings are equal.
- */
- static public void assertEquals(String expected, String actual) {
- assertEquals(null, expected, actual);
- }
- /**
- * Asserts that two doubles are equal concerning a delta. If they are not
- * an AssertionFailedError is thrown with the given message. If the expected
- * value is infinity then the delta value is ignored.
- */
- static public void assertEquals(String message, double expected, double actual, double delta) {
- if (Double.compare(expected, actual) == 0)
- return;
- if (!(Math.abs(expected-actual) <= delta))
- failNotEquals(message, new Double(expected), new Double(actual));
- }
- /**
- * Asserts that two doubles are equal concerning a delta. If the expected
- * value is infinity then the delta value is ignored.
- */
- static public void assertEquals(double expected, double actual, double delta) {
- assertEquals(null, expected, actual, delta);
- }
- /**
- * Asserts that two floats are equal concerning a positive delta. If they
- * are not an AssertionFailedError is thrown with the given message. If the
- * expected value is infinity then the delta value is ignored.
- */
- static public void assertEquals(String message, float expected, float actual, float delta) {
- if (Float.compare(expected, actual) == 0)
- return;
- if (!(Math.abs(expected - actual) <= delta))
- failNotEquals(message, new Float(expected), new Float(actual));
- }
- /**
- * Asserts that two floats are equal concerning a delta. If the expected
- * value is infinity then the delta value is ignored.
- */
- static public void assertEquals(float expected, float actual, float delta) {
- assertEquals(null, expected, actual, delta);
- }
- /**
- * Asserts that two longs are equal. If they are not
- * an AssertionFailedError is thrown with the given message.
- */
- static public void assertEquals(String message, long expected, long actual) {
- assertEquals(message, new Long(expected), new Long(actual));
- }
- /**
- * Asserts that two longs are equal.
- */
- static public void assertEquals(long expected, long actual) {
- assertEquals(null, expected, actual);
- }
- /**
- * Asserts that two booleans are equal. If they are not
- * an AssertionFailedError is thrown with the given message.
- */
- static public void assertEquals(String message, boolean expected, boolean actual) {
- assertEquals(message, Boolean.valueOf(expected), Boolean.valueOf(actual));
- }
- /**
- * Asserts that two booleans are equal.
- */
- static public void assertEquals(boolean expected, boolean actual) {
- assertEquals(null, expected, actual);
- }
- /**
- * Asserts that two bytes are equal. If they are not
- * an AssertionFailedError is thrown with the given message.
- */
- static public void assertEquals(String message, byte expected, byte actual) {
- assertEquals(message, new Byte(expected), new Byte(actual));
- }
- /**
- * Asserts that two bytes are equal.
- */
- static public void assertEquals(byte expected, byte actual) {
- assertEquals(null, expected, actual);
- }
- /**
- * Asserts that two chars are equal. If they are not
- * an AssertionFailedError is thrown with the given message.
- */
- static public void assertEquals(String message, char expected, char actual) {
- assertEquals(message, new Character(expected), new Character(actual));
- }
- /**
- * Asserts that two chars are equal.
- */
- static public void assertEquals(char expected, char actual) {
- assertEquals(null, expected, actual);
- }
- /**
- * Asserts that two shorts are equal. If they are not
- * an AssertionFailedError is thrown with the given message.
- */
- static public void assertEquals(String message, short expected, short actual) {
- assertEquals(message, new Short(expected), new Short(actual));
- }
- /**
- * Asserts that two shorts are equal.
- */
- static public void assertEquals(short expected, short actual) {
- assertEquals(null, expected, actual);
- }
- /**
- * Asserts that two ints are equal. If they are not
- * an AssertionFailedError is thrown with the given message.
- */
- static public void assertEquals(String message, int expected, int actual) {
- assertEquals(message, new Integer(expected), new Integer(actual));
- }
- /**
- * Asserts that two ints are equal.
- */
- static public void assertEquals(int expected, int actual) {
- assertEquals(null, expected, actual);
- }
- /**
- * Asserts that an object isn't null.
- */
- static public void assertNotNull(Object object) {
- assertNotNull(null, object);
- }
- /**
- * Asserts that an object isn't null. If it is
- * an AssertionFailedError is thrown with the given message.
- */
- static public void assertNotNull(String message, Object object) {
- assertTrue(message, object != null);
- }
- /**
- * Asserts that an object is null. If it isn't an {@link AssertionError} is
- * thrown.
- * Message contains: Expected: <null> but was: object
- *
- * @param object
- * Object to check or <code>null</code>
- */
- static public void assertNull(Object object) {
- String message = "Expected: <null> but was: " + String.valueOf(object);
- assertNull(message, object);
- }
- /**
- * Asserts that an object is null. If it is not
- * an AssertionFailedError is thrown with the given message.
- */
- static public void assertNull(String message, Object object) {
- assertTrue(message, object == null);
- }
- /**
- * Asserts that two objects refer to the same object. If they are not
- * an AssertionFailedError is thrown with the given message.
- */
- static public void assertSame(String message, Object expected, Object actual) {
- if (expected == actual)
- return;
- failNotSame(message, expected, actual);
- }
- /**
- * Asserts that two objects refer to the same object. If they are not
- * the same an AssertionFailedError is thrown.
- */
- static public void assertSame(Object expected, Object actual) {
- assertSame(null, expected, actual);
- }
- /**
- * Asserts that two objects do not refer to the same object. If they do
- * refer to the same object an AssertionFailedError is thrown with the
- * given message.
- */
- static public void assertNotSame(String message, Object expected, Object actual) {
- if (expected == actual)
- failSame(message);
- }
- /**
- * Asserts that two objects do not refer to the same object. If they do
- * refer to the same object an AssertionFailedError is thrown.
- */
- static public void assertNotSame(Object expected, Object actual) {
- assertNotSame(null, expected, actual);
- }
-
- static public void failSame(String message) {
- String formatted= "";
- if (message != null)
- formatted= message+" ";
- fail(formatted+"expected not same");
- }
-
- static public void failNotSame(String message, Object expected, Object actual) {
- String formatted= "";
- if (message != null)
- formatted= message+" ";
- fail(formatted+"expected same:<"+expected+"> was not:<"+actual+">");
- }
-
- static public void failNotEquals(String message, Object expected, Object actual) {
- fail(format(message, expected, actual));
- }
-
- public static String format(String message, Object expected, Object actual) {
- String formatted= "";
- if (message != null && message.length() > 0)
- formatted= message+" ";
- return formatted+"expected:<"+expected+"> but was:<"+actual+">";
- }
-}
View
20 junit/src/main/java/junit/framework/AssertionFailedError.java
@@ -1,20 +0,0 @@
-package junit.framework;
-
-/**
- * Thrown when an assertion failed.
- */
-public class AssertionFailedError extends AssertionError {
-
- private static final long serialVersionUID= 1L;
-
- public AssertionFailedError() {
- }
-
- public AssertionFailedError(String message) {
- super(defaultString(message));
- }
-
- private static String defaultString(String message) {
- return message == null ? "" : message;
- }
-}
View
76 junit/src/main/java/junit/framework/ComparisonCompactor.java
@@ -1,76 +0,0 @@
-package junit.framework;
-
-// android-changed add @hide
-/**
- * @hide not needed for public API
- */
-public class ComparisonCompactor {
-
- private static final String ELLIPSIS= "...";
- private static final String DELTA_END= "]";
- private static final String DELTA_START= "[";
-
- private int fContextLength;
- private String fExpected;
- private String fActual;
- private int fPrefix;
- private int fSuffix;
-
- public ComparisonCompactor(int contextLength, String expected, String actual) {
- fContextLength= contextLength;
- fExpected= expected;
- fActual= actual;
- }
-
- public String compact(String message) {
- if (fExpected == null || fActual == null || areStringsEqual())
- return Assert.format(message, fExpected, fActual);
-
- findCommonPrefix();
- findCommonSuffix();
- String expected= compactString(fExpected);
- String actual= compactString(fActual);
- return Assert.format(message, expected, actual);
- }
-
- private String compactString(String source) {
- String result= DELTA_START + source.substring(fPrefix, source.length() - fSuffix + 1) + DELTA_END;
- if (fPrefix > 0)
- result= computeCommonPrefix() + result;
- if (fSuffix > 0)
- result= result + computeCommonSuffix();
- return result;
- }
-
- private void findCommonPrefix() {
- fPrefix= 0;
- int end= Math.min(fExpected.length(), fActual.length());
- for (; fPrefix < end; fPrefix++) {
- if (fExpected.charAt(fPrefix) != fActual.charAt(fPrefix))
- break;
- }
- }
-
- private void findCommonSuffix() {
- int expectedSuffix= fExpected.length() - 1;
- int actualSuffix= fActual.length() - 1;
- for (; actualSuffix >= fPrefix && expectedSuffix >= fPrefix; actualSuffix--, expectedSuffix--) {
- if (fExpected.charAt(expectedSuffix) != fActual.charAt(actualSuffix))
- break;
- }
- fSuffix= fExpected.length() - expectedSuffix;
- }
-
- private String computeCommonPrefix() {
- return (fPrefix > fContextLength ? ELLIPSIS : "") + fExpected.substring(Math.max(0, fPrefix - fContextLength), fPrefix);
- }
-
- private String computeCommonSuffix() {
- int end= Math.min(fExpected.length() - fSuffix + 1 + fContextLength, fExpected.length());
- return fExpected.substring(fExpected.length() - fSuffix + 1, end) + (fExpected.length() - fSuffix + 1 < fExpected.length() - fContextLength ? ELLIPSIS : "");
- }
-
- private boolean areStringsEqual() {
- return fExpected.equals(fActual);
- }
-}
View
52 junit/src/main/java/junit/framework/ComparisonFailure.java
@@ -1,52 +0,0 @@
-package junit.framework;
-
-/**
- * Thrown when an assert equals for Strings failed.
- *
- * Inspired by a patch from Alex Chaffee mailto:alex@purpletech.com
- */
-public class ComparisonFailure extends AssertionFailedError {
- private static final int MAX_CONTEXT_LENGTH= 20;
- private static final long serialVersionUID= 1L;
-
- private String fExpected;
- private String fActual;
-
- /**
- * Constructs a comparison failure.
- * @param message the identifying message or null
- * @param expected the expected string value
- * @param actual the actual string value
- */
- public ComparisonFailure (String message, String expected, String actual) {
- super (message);
- fExpected= expected;
- fActual= actual;
- }
-
- /**
- * Returns "..." in place of common prefix and "..." in
- * place of common suffix between expected and actual.
- *
- * @see Throwable#getMessage()
- */
- @Override
- public String getMessage() {
- return new ComparisonCompactor(MAX_CONTEXT_LENGTH, fExpected, fActual).compact(super.getMessage());
- }
-
- /**
- * Gets the actual string value
- * @return the actual string value
- */
- public String getActual() {
- return fActual;
- }
- /**
- * Gets the expected string value
- * @return the expected string value
- */
- public String getExpected() {
- return fExpected;
- }
-}
View
14 junit/src/main/java/junit/framework/Protectable.java
@@ -1,14 +0,0 @@
-package junit.framework;
-
-/**
- * A <em>Protectable</em> can be run and can throw a Throwable.
- *
- * @see TestResult
- */
-public interface Protectable {
-
- /**
- * Run the the following method protected.
- */
- public abstract void protect() throws Throwable;
-}
View
17 junit/src/main/java/junit/framework/Test.java
@@ -1,17 +0,0 @@
-package junit.framework;
-
-/**
- * A <em>Test</em> can be run and collect its results.
- *
- * @see TestResult
- */
-public interface Test {
- /**
- * Counts the number of test cases that will be run by this test.
- */
- public abstract int countTestCases();
- /**
- * Runs a test and collects its result in a TestResult instance.
- */
- public abstract void run(TestResult result);
-}
View
212 junit/src/main/java/junit/framework/TestCase.java
@@ -1,212 +0,0 @@
-package junit.framework;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
-
-/**
- * A test case defines the fixture to run multiple tests. To define a test case<br/>
- * <ol>
- * <li>implement a subclass of <code>TestCase</code></li>
- * <li>define instance variables that store the state of the fixture</li>
- * <li>initialize the fixture state by overriding {@link #setUp()}</li>
- * <li>clean-up after a test by overriding {@link #tearDown()}.</li>
- * </ol>
- * Each test runs in its own fixture so there
- * can be no side effects among test runs.
- * Here is an example:
- * <pre>
- * public class MathTest extends TestCase {
- * protected double fValue1;
- * protected double fValue2;
- *
- * protected void setUp() {
- * fValue1= 2.0;
- * fValue2= 3.0;
- * }
- * }
- * </pre>
- *
- * For each test implement a method which interacts
- * with the fixture. Verify the expected results with assertions specified
- * by calling {@link junit.framework.Assert#assertTrue(String, boolean)} with a boolean.
- * <pre>
- * public void testAdd() {
- * double result= fValue1 + fValue2;
- * assertTrue(result == 5.0);
- * }
- * </pre>
- *
- * Once the methods are defined you can run them. The framework supports
- * both a static type safe and more dynamic way to run a test.
- * In the static way you override the runTest method and define the method to
- * be invoked. A convenient way to do so is with an anonymous inner class.
- * <pre>
- * TestCase test= new MathTest("add") {
- * public void runTest() {
- * testAdd();
- * }
- * };
- * test.run();
- * </pre>
- *
- * The dynamic way uses reflection to implement {@link #runTest()}. It dynamically finds
- * and invokes a method.
- * In this case the name of the test case has to correspond to the test method
- * to be run.
- * <pre>
- * TestCase test= new MathTest("testAdd");
- * test.run();
- * </pre>
- *
- * The tests to be run can be collected into a TestSuite. JUnit provides
- * different <i>test runners</i> which can run a test suite and collect the results.
- * A test runner either expects a static method <code>suite</code> as the entry
- * point to get a test to run or it will extract the suite automatically.
- * <pre>
- * public static Test suite() {
- * suite.addTest(new MathTest("testAdd"));
- * suite.addTest(new MathTest("testDivideByZero"));
- * return suite;
- * }
- * </pre>
- * @see TestResult
- * @see TestSuite
- */
-public abstract class TestCase extends Assert implements Test {
- /**
- * the name of the test case
- */
- private String fName;
-
- /**
- * No-arg constructor to enable serialization. This method
- * is not intended to be used by mere mortals without calling setName().
- */
- public TestCase() {
- fName= null;
- }
- /**
- * Constructs a test case with the given name.
- */
- public TestCase(String name) {
- fName= name;
- }
- /**
- * Counts the number of test cases executed by run(TestResult result).
- */
- public int countTestCases() {
- return 1;
- }
- /**
- * Creates a default TestResult object
- *
- * @see TestResult
- */
- protected TestResult createResult() {
- return new TestResult();
- }
- /**
- * A convenience method to run this test, collecting the results with a
- * default TestResult object.
- *
- * @see TestResult
- */
- public TestResult run() {
- TestResult result= createResult();
- run(result);
- return result;
- }
- /**
- * Runs the test case and collects the results in TestResult.
- */
- public void run(TestResult result) {
- result.run(this);
- }
- /**
- * Runs the bare test sequence.
- * @throws Throwable if any exception is thrown
- */
- public void runBare() throws Throwable {
- Throwable exception= null;
- setUp();
- try {
- runTest();
- } catch (Throwable running) {
- exception= running;
- }
- finally {
- try {
- tearDown();
- } catch (Throwable tearingDown) {
- if (exception == null) exception= tearingDown;
- }
- }
- if (exception != null) throw exception;
- }
- /**
- * Override to run the test and assert its state.
- * @throws Throwable if any exception is thrown
- */
- protected void runTest() throws Throwable {
- assertNotNull("TestCase.fName cannot be null", fName); // Some VMs crash when calling getMethod(null,null);
- Method runMethod= null;
- try {
- // use getMethod to get all public inherited
- // methods. getDeclaredMethods returns all
- // methods of this class but excludes the
- // inherited ones.
- runMethod= getClass().getMethod(fName, (Class[])null);
- } catch (NoSuchMethodException e) {
- fail("Method \""+fName+"\" not found");
- }
- if (!Modifier.isPublic(runMethod.getModifiers())) {
- fail("Method \""+fName+"\" should be public");
- }
-
- try {
- runMethod.invoke(this);
- }
- catch (InvocationTargetException e) {
- e.fillInStackTrace();
- throw e.getTargetException();
- }
- catch (IllegalAccessException e) {
- e.fillInStackTrace();
- throw e;
- }
- }
- /**
- * Sets up the fixture, for example, open a network connection.
- * This method is called before a test is executed.
- */
- protected void setUp() throws Exception {
- }
- /**
- * Tears down the fixture, for example, close a network connection.
- * This method is called after a test is executed.
- */
- protected void tearDown() throws Exception {
- }
- /**
- * Returns a string representation of the test case
- */
- @Override
- public String toString() {
- return getName() + "(" + getClass().getName() + ")";
- }
- /**
- * Gets the name of a TestCase
- * @return the name of the TestCase
- */
- public String getName() {
- return fName;
- }
- /**
- * Sets the name of a TestCase
- * @param name the name to set
- */
- public void setName(String name) {
- fName= name;
- }
-}
View
58 junit/src/main/java/junit/framework/TestFailure.java
@@ -1,58 +0,0 @@
-package junit.framework;
-
-import java.io.PrintWriter;
-import java.io.StringWriter;
-
-
-/**
- * A <code>TestFailure</code> collects a failed test together with
- * the caught exception.
- * @see TestResult
- */
-public class TestFailure extends Object {
- protected Test fFailedTest;
- protected Throwable fThrownException;
-
-
- /**
- * Constructs a TestFailure with the given test and exception.
- */
- public TestFailure(Test failedTest, Throwable thrownException) {
- fFailedTest= failedTest;
- fThrownException= thrownException;
- }
- /**
- * Gets the failed test.
- */
- public Test failedTest() {
- return fFailedTest;
- }
- /**
- * Gets the thrown exception.
- */
- public Throwable thrownException() {
- return fThrownException;
- }
- /**
- * Returns a short description of the failure.
- */
- @Override
- public String toString() {
- StringBuffer buffer= new StringBuffer();
- buffer.append(fFailedTest+": "+fThrownException.getMessage());
- return buffer.toString();
- }
- public String trace() {
- StringWriter stringWriter= new StringWriter();
- PrintWriter writer= new PrintWriter(stringWriter);
- thrownException().printStackTrace(writer);
- StringBuffer buffer= stringWriter.getBuffer();
- return buffer.toString();
- }
- public String exceptionMessage() {
- return thrownException().getMessage();
- }
- public boolean isFailure() {
- return thrownException() instanceof AssertionFailedError;
- }
-}
View
23 junit/src/main/java/junit/framework/TestListener.java
@@ -1,23 +0,0 @@
-package junit.framework;
-
-/**
- * A Listener for test progress
- */
-public interface TestListener {
- /**
- * An error occurred.
- */
- public void addError(Test test, Throwable t);
- /**
- * A failure occurred.
- */
- public void addFailure(Test test, AssertionFailedError t);
- /**
- * A test ended.
- */
- public void endTest(Test test);
- /**
- * A test started.
- */
- public void startTest(Test test);
-}
View
175 junit/src/main/java/junit/framework/TestResult.java
@@ -1,175 +0,0 @@
-package junit.framework;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Enumeration;
-import java.util.List;
-import java.util.Vector;
-
-/**
- * A <code>TestResult</code> collects the results of executing
- * a test case. It is an instance of the Collecting Parameter pattern.
- * The test framework distinguishes between <i>failures</i> and <i>errors</i>.
- * A failure is anticipated and checked for with assertions. Errors are
- * unanticipated problems like an {@link ArrayIndexOutOfBoundsException}.
- *
- * @see Test
- */
-public class TestResult extends Object {
- // BEGIN android-changed changed types from List<> to Vector<> for API compatibility
- protected Vector<TestFailure> fFailures;
- protected Vector<TestFailure> fErrors;
- protected Vector<TestListener> fListeners;
- // END android-changed
- protected int fRunTests;
-
- private boolean fStop;
-
- public TestResult() {
- // BEGIN android-changed to Vector
- fFailures= new Vector<TestFailure>();
- fErrors= new Vector<TestFailure>();
- fListeners= new Vector<TestListener>();
- // END android-changed
- fRunTests= 0;
- fStop= false;
- }
- /**
- * Adds an error to the list of errors. The passed in exception
- * caused the error.
- */
- public synchronized void addError(Test test, Throwable t) {
- fErrors.add(new TestFailure(test, t));
- for (TestListener each : cloneListeners())
- each.addError(test, t);
- }
- /**
- * Adds a failure to the list of failures. The passed in exception
- * caused the failure.
- */
- public synchronized void addFailure(Test test, AssertionFailedError t) {
- fFailures.add(new TestFailure(test, t));
- for (TestListener each : cloneListeners())
- each.addFailure(test, t);
- }
- /**
- * Registers a TestListener
- */
- public synchronized void addListener(TestListener listener) {
- fListeners.add(listener);
- }
- /**
- * Unregisters a TestListener
- */
- public synchronized void removeListener(TestListener listener) {
- fListeners.remove(listener);
- }
- /**
- * Returns a copy of the listeners.
- */
- private synchronized List<TestListener> cloneListeners() {
- List<TestListener> result= new ArrayList<TestListener>();
- result.addAll(fListeners);
- return result;
- }
- /**
- * Informs the result that a test was completed.
- */
- public void endTest(Test test) {
- for (TestListener each : cloneListeners())
- each.endTest(test);
- }
- /**
- * Gets the number of detected errors.
- */
- public synchronized int errorCount() {
- return fErrors.size();
- }
- /**
- * Returns an Enumeration for the errors
- */
- public synchronized Enumeration<TestFailure> errors() {
- return Collections.enumeration(fErrors);
- }
-
-
- /**
- * Gets the number of detected failures.
- */
- public synchronized int failureCount() {
- return fFailures.size();
- }
- /**
- * Returns an Enumeration for the failures
- */
- public synchronized Enumeration<TestFailure> failures() {
- return Collections.enumeration(fFailures);
- }
-
- /**
- * Runs a TestCase.
- */
- protected void run(final TestCase test) {
- startTest(test);
- Protectable p= new Protectable() {
- public void protect() throws Throwable {
- test.runBare();
- }
- };
- runProtected(test, p);
-
- endTest(test);
- }
- /**
- * Gets the number of run tests.
- */
- public synchronized int runCount() {
- return fRunTests;
- }
- /**
- * Runs a TestCase.
- */
- public void runProtected(final Test test, Protectable p) {
- try {
- p.protect();
- }
- catch (AssertionFailedError e) {
- addFailure(test, e);
- }
- catch (ThreadDeath e) { // don't catch ThreadDeath by accident
- throw e;
- }
- catch (Throwable e) {
- addError(test, e);
- }
- }
- /**
- * Checks whether the test run should stop
- */
- public synchronized boolean shouldStop() {
- return fStop;
- }
- /**
- * Informs the result that a test will be started.
- */
- public void startTest(Test test) {
- final int count= test.countTestCases();
- synchronized(this) {
- fRunTests+= count;
- }
- for (TestListener each : cloneListeners())
- each.startTest(test);
- }
- /**
- * Marks that the test run should stop.
- */
- public synchronized void stop() {
- fStop= true;
- }
- /**
- * Returns whether the entire test was successful or not.
- */
- public synchronized boolean wasSuccessful() {
- return failureCount() == 0 && errorCount() == 0;
- }
-}
View
307 junit/src/main/java/junit/framework/TestSuite.java
@@ -1,307 +0,0 @@
-package junit.framework;
-
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.List;
-import java.util.Vector;
-
-/**
- * <p>A <code>TestSuite</code> is a <code>Composite</code> of Tests.
- * It runs a collection of test cases. Here is an example using
- * the dynamic test definition.
- * <pre>
- * TestSuite suite= new TestSuite();
- * suite.addTest(new MathTest("testAdd"));
- * suite.addTest(new MathTest("testDivideByZero"));
- * </pre>
- * </p>
- *
- * <p>Alternatively, a TestSuite can extract the tests to be run automatically.
- * To do so you pass the class of your TestCase class to the
- * TestSuite constructor.
- * <pre>
- * TestSuite suite= new TestSuite(MathTest.class);
- * </pre>
- * </p>
- *
- * <p>This constructor creates a suite with all the methods
- * starting with "test" that take no arguments.</p>
- *
- * <p>A final option is to do the same for a large array of test classes.
- * <pre>
- * Class[] testClasses = { MathTest.class, AnotherTest.class }
- * TestSuite suite= new TestSuite(testClasses);
- * </pre>
- * </p>
- *
- * @see Test
- */
-public class TestSuite implements Test {
-
- /**
- * ...as the moon sets over the early morning Merlin, Oregon
- * mountains, our intrepid adventurers type...
- */
- static public Test createTest(Class<?> theClass, String name) {
- Constructor<?> constructor;
- try {
- constructor= getTestConstructor(theClass);
- } catch (NoSuchMethodException e) {
- return warning("Class "+theClass.getName()+" has no public constructor TestCase(String name) or TestCase()");
- }
- Object test;
- try {
- if (constructor.getParameterTypes().length == 0) {
- test= constructor.newInstance(new Object[0]);
- if (test instanceof TestCase)
- ((TestCase) test).setName(name);
- } else {
- test= constructor.newInstance(new Object[]{name});
- }
- } catch (InstantiationException e) {
- return(warning("Cannot instantiate test case: "+name+" ("+exceptionToString(e)+")"));
- } catch (InvocationTargetException e) {
- return(warning("Exception in constructor: "+name+" ("+exceptionToString(e.getTargetException())+")"));
- } catch (IllegalAccessException e) {
- return(warning("Cannot access test case: "+name+" ("+exceptionToString(e)+")"));
- }
- return (Test) test;
- }
-
- /**
- * Gets a constructor which takes a single String as
- * its argument or a no arg constructor.
- */
- public static Constructor<?> getTestConstructor(Class<?> theClass) throws NoSuchMethodException {
- try {
- return theClass.getConstructor(String.class);
- } catch (NoSuchMethodException e) {
- // fall through
- }
- return theClass.getConstructor(new Class[0]);
- }
-
- /**
- * Returns a test which will fail and log a warning message.
- */
- public static Test warning(final String message) {
- return new TestCase("warning") {
- @Override
- protected void runTest() {
- fail(message);
- }
- };
- }
-
- /**
- * Converts the stack trace into a string
- */
- private static String exceptionToString(Throwable t) {
- StringWriter stringWriter= new StringWriter();
- PrintWriter writer= new PrintWriter(stringWriter);
- t.printStackTrace(writer);
- return stringWriter.toString();
- }
-
- private String fName;
-
- private Vector<Test> fTests= new Vector<Test>(10); // Cannot convert this to List because it is used directly by some test runners
-
- /**
- * Constructs an empty TestSuite.
- */
- public TestSuite() {
- }
-
- /**
- * Constructs a TestSuite from the given class. Adds all the methods
- * starting with "test" as test cases to the suite.
- * Parts of this method were written at 2337 meters in the Hueffihuette,
- * Kanton Uri
- */
- public TestSuite(final Class<?> theClass) {
- addTestsFromTestCase(theClass);
- }
-
- private void addTestsFromTestCase(final Class<?> theClass) {
- fName= theClass.getName();
- try {
- getTestConstructor(theClass); // Avoid generating multiple error messages
- } catch (NoSuchMethodException e) {
- addTest(warning("Class "+theClass.getName()+" has no public constructor TestCase(String name) or TestCase()"));
- return;
- }
-
- if (!Modifier.isPublic(theClass.getModifiers())) {
- addTest(warning("Class "+theClass.getName()+" is not public"));
- return;
- }
-
- Class<?> superClass= theClass;
- List<String> names= new ArrayList<String>();
- while (Test.class.isAssignableFrom(superClass)) {
- for (Method each : superClass.getDeclaredMethods())
- addTestMethod(each, names, theClass);
- superClass= superClass.getSuperclass();
- }
- if (fTests.size() == 0)
- addTest(warning("No tests found in "+theClass.getName()));
- }
-
- /**
- * Constructs a TestSuite from the given class with the given name.
- * @see TestSuite#TestSuite(Class)
- */
- public TestSuite(Class<? extends TestCase> theClass, String name) {
- this(theClass);
- setName(name);
- }
-
- /**
- * Constructs an empty TestSuite.
- */
- public TestSuite(String name) {
- setName(name);
- }
-
- /**
- * Constructs a TestSuite from the given array of classes.
- * @param classes {@link TestCase}s
- */
- public TestSuite (Class<?>... classes) {
- for (Class<?> each : classes)
- addTest(testCaseForClass(each));
- }
-
- private Test testCaseForClass(Class<?> each) {
- if (TestCase.class.isAssignableFrom(each))
- return new TestSuite(each.asSubclass(TestCase.class));
- else
- return warning(each.getCanonicalName() + " does not extend TestCase");
- }
-
- /**
- * Constructs a TestSuite from the given array of classes with the given name.
- * @see TestSuite#TestSuite(Class[])
- */
- public TestSuite(Class<? extends TestCase>[] classes, String name) {
- this(classes);
- setName(name);
- }
-
- /**
- * Adds a test to the suite.
- */
- public void addTest(Test test) {
- fTests.add(test);
- }
-
- /**
- * Adds the tests from the given class to the suite
- */
- public void addTestSuite(Class<? extends TestCase> testClass) {
- addTest(new TestSuite(testClass));
- }
-
- /**
- * Counts the number of test cases that will be run by this test.
- */
- public int countTestCases() {
- int count= 0;
- for (Test each : fTests)
- count+= each.countTestCases();
- return count;
- }
-
- /**
- * Returns the name of the suite. Not all
- * test suites have a name and this method
- * can return null.
- */
- public String getName() {
- return fName;
- }
-
- /**
- * Runs the tests and collects their result in a TestResult.
- */
- public void run(TestResult result) {
- for (Test each : fTests) {
- if (result.shouldStop() )
- break;
- runTest(each, result);
- }
- }
-
- public void runTest(Test test, TestResult result) {
- test.run(result);
- }
-
- /**
- * Sets the name of the suite.
- * @param name the name to set
- */
- public void setName(String name) {
- fName= name;
- }
-
- /**
- * Returns the test at the given index
- */
- public Test testAt(int index) {
- return fTests.get(index);
- }
-
- /**
- * Returns the number of tests in this suite
- */
- public int testCount() {
- return fTests.size();
- }
-
- /**
- * Returns the tests as an enumeration
- */
- public Enumeration<Test> tests() {
- return fTests.elements();
- }
-
- /**
- */
- @Override
- public String toString() {
- if (getName() != null)
- return getName();
- return super.toString();
- }
-
- private void addTestMethod(Method m, List<String> names, Class<?> theClass) {
- String name= m.getName();
- if (names.contains(name))
- return;
- if (! isPublicTestMethod(m)) {
- if (isTestMethod(m))
- addTest(warning("Test method isn't public: "+ m.getName() + "(" + theClass.getCanonicalName() + ")"));
- return;
- }
- names.add(name);
- addTest(createTest(theClass, name));
- }
-
- private boolean isPublicTestMethod(Method m) {
- return isTestMethod(m) && Modifier.isPublic(m.getModifiers());
- }
-
- private boolean isTestMethod(Method m) {
- return
- m.getParameterTypes().length == 0 &&
- m.getName().startsWith("test") &&
- m.getReturnType().equals(Void.TYPE);
- }
-}
View
5 junit/src/main/java/junit/framework/package.html
@@ -1,5 +0,0 @@
-<HTML>
-<BODY>
-The junit test framework.
-</BODY>
-</HTML>

0 comments on commit 17cdf1a

Please sign in to comment.