Bug 80912 JUnit tests can't be launched with a 1.3 level jvm anymore
In latest 3.1 integration builds the eclipse textrunner doesn't work if you select a 1.3 level jvm for running the test. It crashes for a dependency from IdentityHashMap (java 1.4). Although eclipse need a 1.4 jre, selecting a 1.3 jre from the run/debug configuration should be possible: this is a show stopper for anyone needs to compile projects using jre 1.3. build 200412140010 java.lang.NoClassDefFoundError: java/util/IdentityHashMap at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:448) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:343) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:195)
org.eclipse.jdt.junit.runtime/src/org/eclipse/jdt/internal/junit/runner/RemoteTestRunner.java
/**
	 * Returns a test which will fail and log a warning message.
	 */
	 private Test warning(final String message) {
		return new TestCase("warning") { 
			protected void runTest() {
				fail(message);
			}
		};		
	}
	private Test createTest(String testName, Class testClass) {
		Class[] classArgs= { String.class };
		Test test;
		Constructor constructor= null;
		try {
			try {
				constructor= testClass.getConstructor(classArgs);
				test= (Test)constructor.newInstance(new Object[]{testName});
			} catch (NoSuchMethodException e) {
				
				constructor= testClass.getConstructor(new Class[0]);
				test= (Test)constructor.newInstance(new Object[0]);
				if (test instanceof TestCase)
					((TestCase) test).setName(testName);
			}
			if (test != null)
				return test;
		} catch (InstantiationException e) {
		} catch (IllegalAccessException e) {
		} catch (InvocationTargetException e) {