This commit was manufactured by cvs2svn to create tag 'v20040209'.

Sprout from master 2004-02-09 17:08:18 UTC Darin Swanson <darins> 'Adjusted for the AST deprecations'
Cherrypick from master 2004-02-10 04:27:11 UTC Darin Swanson <darins> '*** empty log message ***':
    org.eclipse.jdt.debug.ui/icons/full/obj16/cp_order_obj.gif
    org.eclipse.jdt.debug/buildnotes_jdt-debug.html
    org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/MethodImpl.java
    org.eclipse.jdt.debug/model/org/eclipse/jdt/internal/debug/core/breakpoints/JavaLineBreakpoint.java
Delete:
    org.eclipse.jdt.debug.jdi.tests/.classpath
    org.eclipse.jdt.debug.jdi.tests/.cvsignore
    org.eclipse.jdt.debug.jdi.tests/.project
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractJDITest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractReader.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AccessibleTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ArrayReferenceTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ArrayTypeTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/BooleanValueTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/BreakpointRequestTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ByteValueTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/CharValueTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassLoaderReferenceTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareEventTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareEventWaiter.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareRequestTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassTypeTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassesByNameTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/DoubleValueTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventListener.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventReader.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestManagerTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventWaiter.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ExceptionEventTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ExceptionRequestTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FieldTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FileConsoleReader.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FloatValueTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/HotCodeReplacementTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/IntegerValueTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/InterfaceTypeTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/JDITestCase.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/JDITestSuite.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocalVariableTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocatableTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocationTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LongValueTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodEntryRequestTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodExitRequestTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MirrorTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ModificationWatchpointEventTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/NotYetImplementedException.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/NullConsoleReader.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ObjectReferenceTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/PrimitiveValueTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ReferenceTypeTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ShortValueTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StackFrameTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StepEventTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StringReferenceTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TestAll.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TextTestResult.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadDeathEventTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadGroupReferenceTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadReferenceTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadStartEventTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TypeComponentTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TypeTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisconnectEventTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisconnectEventWaiter.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisposeTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMInformation.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ValueTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VirtualMachineExitTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VirtualMachineTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/WatchpointEventTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/WatchpointRequestTest.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/MainClass.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/OtherClass.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/Printable.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass1.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass2.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass3.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass4.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass5.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass6.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass7.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz10.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz8.java
    org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz9.java
diff --git a/org.eclipse.jdt.debug.jdi.tests/.classpath b/org.eclipse.jdt.debug.jdi.tests/.classpath
deleted file mode 100644
index 3467cbe..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="tests"/>
-	<classpathentry kind="src" path="/org.eclipse.jdt.debug"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="var" path="ECLIPSE_HOME/plugins/org.junit_3.8.1/junit.jar"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.eclipse.jdt.debug.jdi.tests/.cvsignore b/org.eclipse.jdt.debug.jdi.tests/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/org.eclipse.jdt.debug.jdi.tests/.project b/org.eclipse.jdt.debug.jdi.tests/.project
deleted file mode 100644
index 3f27311..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/.project
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jdt.debug.jdi.tests</name>
-	<comment></comment>
-	<projects>
-		<project>org.eclipse.jdt.debug</project>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractJDITest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractJDITest.java
deleted file mode 100644
index 343d18a..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractJDITest.java
+++ /dev/null
@@ -1,1427 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Iterator;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Map;
-import java.util.Vector;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import org.eclipse.jdi.Bootstrap;
-
-import com.sun.jdi.AbsentInformationException;
-import com.sun.jdi.ArrayReference;
-import com.sun.jdi.ArrayType;
-import com.sun.jdi.ClassLoaderReference;
-import com.sun.jdi.ClassNotLoadedException;
-import com.sun.jdi.ClassType;
-import com.sun.jdi.Field;
-import com.sun.jdi.IncompatibleThreadStateException;
-import com.sun.jdi.InterfaceType;
-import com.sun.jdi.InvalidTypeException;
-import com.sun.jdi.LocalVariable;
-import com.sun.jdi.Location;
-import com.sun.jdi.Method;
-import com.sun.jdi.ObjectReference;
-import com.sun.jdi.StackFrame;
-import com.sun.jdi.StringReference;
-import com.sun.jdi.ThreadReference;
-import com.sun.jdi.VMDisconnectedException;
-import com.sun.jdi.Value;
-import com.sun.jdi.VirtualMachineManager;
-import com.sun.jdi.connect.AttachingConnector;
-import com.sun.jdi.connect.Connector;
-import com.sun.jdi.connect.IllegalConnectorArgumentsException;
-import com.sun.jdi.event.ClassPrepareEvent;
-import com.sun.jdi.event.Event;
-import com.sun.jdi.event.ExceptionEvent;
-import com.sun.jdi.event.StepEvent;
-import com.sun.jdi.request.AccessWatchpointRequest;
-import com.sun.jdi.request.BreakpointRequest;
-import com.sun.jdi.request.EventRequest;
-import com.sun.jdi.request.ExceptionRequest;
-import com.sun.jdi.request.ModificationWatchpointRequest;
-import com.sun.jdi.request.StepRequest;
-
-/**
- * Tests for com.sun.jdi.* and JDWP commands.
- * These tests assume that the target program is 
- * "org.eclipse.debug.jdi.tests.program.MainClass".
- *
- * Examples of arguments:
- *   -launcher SunVMLauncher -address c:\jdk1.2.2\ -cp d:\target
- *   -launcher J9VMLauncher -address d:\ive\ -cp d:\target
- */
-public abstract class AbstractJDITest extends TestCase {
-	static int TIMEOUT = 10000; //ms
-	static protected int fBackEndPort = 9900;
-	// We want subsequent connections to use different ports.
-	protected String fVMLauncherName;
-	protected String fTargetAddress;
-	protected String fClassPath;
-	protected String fBootPath;
-	protected String fVMType;
-	protected com.sun.jdi.VirtualMachine fVM;
-	protected Process fLaunchedProxy;
-	protected Process fLaunchedVM;
-	protected int fVMTraceFlags = com.sun.jdi.VirtualMachine.TRACE_NONE;
-	protected EventReader fEventReader;
-	protected AbstractReader fConsoleReader;
-	protected AbstractReader fConsoleErrorReader;
-	protected AbstractReader fProxyReader;
-	protected AbstractReader fProxyErrorReader;
-	protected boolean fInControl = true;
-	// Whether this test should control the VM (ie. starting it and shutting it down)
-	protected boolean fVerbose;
-	protected String fStdoutFile;
-	protected String fStderrFile;
-	protected String fProxyoutFile;
-	protected String fProxyerrFile;
-	protected String fVmCmd;
-	protected String fProxyCmd;
-
-	// Stack offset to the MainClass.run() method
-	protected static final int RUN_FRAME_OFFSET = 1;
-
-	/**
-	 * Constructs a test case with a default name.
-	 */
-	public AbstractJDITest() {
-		super("JDI Test");
-	}
-	/**
-	 * Returns the names of the tests that are known to not work
-	 * By default, none are excluded.
-	 */
-	protected String[] excludedTests() {
-		return new String[] {
-		};
-	}
-	/**
-	 * Creates and returns an access watchpoint request
-	 * for the field "fBool" in 
-	 * org.eclipse.debug.jdi.tests.program.MainClass
-	 * NOTE: This assumes that the VM can watch field access.
-	 */
-	protected AccessWatchpointRequest getAccessWatchpointRequest() {
-		// Get the field
-		Field field = getField("fBool");
-
-		// Create an access watchpoint for this field
-		return fVM.eventRequestManager().createAccessWatchpointRequest(field);
-	}
-	/**
-	 * Returns all tests that start with the given string.
-	 * Returns a vector of String.
-	 */
-	protected Vector getAllMatchingTests(String match) {
-		Class theClass = this.getClass();
-		java.lang.reflect.Method[] methods = theClass.getDeclaredMethods();
-		Vector result = new Vector();
-		for (int i = 0; i < methods.length; i++) {
-			java.lang.reflect.Method m = methods[i];
-			String name = m.getName();
-			Class[] parameters = m.getParameterTypes();
-			if (parameters.length == 0 && name.startsWith(match)) {
-				if (!isExcludedTest(name)) {
-					result.add(name);
-				} else
-					System.out.println(name + " is excluded.");
-			}
-		}
-		return result;
-	}
-	
-	/**
-	 * Returns an array reference.
-	 */
-	protected ArrayReference getObjectArrayReference() {
-		// Get static field "fArray"
-		Field field = getField("fArray");
-
-		// Get value of "fArray"
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	
-	/**
-	 * Returns another array reference.
-	 */
-	protected ArrayReference getNonEmptyDoubleArrayReference() {
-		// Get static field "fDoubleArray"
-		Field field = getField("fDoubleArray");
-
-		// Get value of "fDoubleArray"
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	
-	/**
-	 * One-dimensional empty array reference getters
-	 */
-	protected ArrayReference getByteArrayReference() {
-		Field field = getField("byteArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getShortArrayReference() {
-		Field field = getField("shortArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getIntArrayReference() {
-		Field field = getField("intArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getLongArrayReference() {
-		Field field = getField("longArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getDoubleArrayReference() {
-		Field field = getField("doubleArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getFloatArrayReference() {
-		Field field = getField("floatArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getCharArrayReference() {
-		Field field = getField("charArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getBooleanArrayReference() {
-		Field field = getField("booleanArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	/**
-	 * Two-dimensional array reference getters
-	 */
-	protected ArrayReference getByteDoubleArrayReference() {
-		Field field = getField("byteDoubleArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getShortDoubleArrayReference() {
-		Field field = getField("shortDoubleArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getIntDoubleArrayReference() {
-		Field field = getField("intDoubleArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getLongDoubleArrayReference() {
-		Field field = getField("longDoubleArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getFloatDoubleArrayReference() {
-		Field field = getField("floatDoubleArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getDoubleDoubleArrayReference() {
-		Field field = getField("doubleDoubleArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getCharDoubleArrayReference() {
-		Field field = getField("charDoubleArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	protected ArrayReference getBooleanDoubleArrayReference() {
-		Field field = getField("booleanDoubleArray");
-		return (ArrayReference) getMainClass().getValue(field);
-	}
-	
-	/**
-	 * Returns the array type.
-	 */
-	protected ArrayType getArrayType() {
-		// Get array reference
-		ArrayReference value = getObjectArrayReference();
-
-		// Get reference type of "fArray"
-		return (ArrayType) value.referenceType();
-	}
-	/**
-	 * One-dimensional primitive array getters
-	 */
-	protected ArrayType getByteArrayType() {
-		ArrayReference value = getByteArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getShortArrayType() {
-		ArrayReference value = getShortArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getIntArrayType() {
-		ArrayReference value = getIntArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getLongArrayType() {
-		ArrayReference value = getLongArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getFloatArrayType() {
-		ArrayReference value = getFloatArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getDoubleArrayType() {
-		ArrayReference value = getDoubleArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getCharArrayType() {
-		ArrayReference value = getCharArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getBooleanArrayType() {
-		ArrayReference value = getBooleanArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	/**
-	 * Two-dimensional primitive array getters
-	 */
-	protected ArrayType getByteDoubleArrayType() {
-		ArrayReference value = getByteDoubleArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getShortDoubleArrayType() {
-		ArrayReference value = getShortDoubleArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getIntDoubleArrayType() {
-		ArrayReference value = getIntDoubleArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getLongDoubleArrayType() {
-		ArrayReference value = getLongDoubleArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getFloatDoubleArrayType() {
-		ArrayReference value = getFloatDoubleArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getDoubleDoubleArrayType() {
-		ArrayReference value = getDoubleDoubleArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getCharDoubleArrayType() {
-		ArrayReference value = getCharDoubleArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	protected ArrayType getBooleanDoubleArrayType() {
-		ArrayReference value = getBooleanDoubleArrayReference();
-		return (ArrayType) value.referenceType();
-	}
-	
-	/**
-	 * Creates and returns a breakpoint request in the first 
-	 * instruction of the MainClass.triggerBreakpointEvent() method.
-	 */
-	protected BreakpointRequest getBreakpointRequest() {
-		// Create a breakpoint request
-		return fVM.eventRequestManager().createBreakpointRequest(getLocation());
-	}
-	/**
-	 * Returns the class with the given name or null if not loaded.
-	 */
-	protected ClassType getClass(String name) {
-		List classes = fVM.classesByName(name);
-		if (classes.size() == 0)
-			return null;
-		else
-			return (ClassType) classes.get(0);
-	}
-	/**
-	 * Returns the class loader of
-	 * org.eclipse.debug.jdi.tests.program.MainClass
-	 */
-	protected ClassLoaderReference getClassLoaderReference() {
-		// Get main class
-		ClassType type = getMainClass();
-
-		// Get its class loader
-		return type.classLoader();
-	}
-	/**
-	 * Creates and returns an exception request for uncaught exceptions.
-	 */
-	protected ExceptionRequest getExceptionRequest() {
-		return fVM.eventRequestManager().createExceptionRequest(null, false, true);
-	}
-	/**
-	 * Returns the static field "fObject" in 
-	 * org.eclipse.debug.jdi.tests.program.MainClass
-	 */
-	protected Field getField() {
-		return getField("fObject");
-	}
-	/**
-	 * Returns the field with the given name in 
-	 * org.eclipse.debug.jdi.tests.program.MainClass.
-	 */
-	protected Field getField(String fieldName) {
-		// Get main class
-		ClassType type = getMainClass();
-
-		// Get field 
-		Field result = type.fieldByName(fieldName);
-		if (result == null)
-			throw new Error("Unknown field: " + fieldName);
-		else
-			return result;
-	}
-	/**
-	 * Returns the n frame (starting at the top of the stack) of the thread 
-	 * contained in the static field "fThread" of org.eclipse.debug.jdi.tests.program.MainClass.
-	 */
-	protected StackFrame getFrame(int n) {
-		// Make sure the thread is suspended
-		ThreadReference thread = getThread();
-		assertTrue(thread.isSuspended());
-
-		// Get the frame
-		StackFrame frame = null;
-		try {
-			List frames = thread.frames();
-			frame = (StackFrame) frames.get(n);
-		} catch (IncompatibleThreadStateException e) {
-			throw new Error("Thread was not suspended");
-		}
-
-		return frame;
-	}
-	/**
-	 * Returns the interface type org.eclipse.debug.jdi.tests.program.Printable.
-	 */
-	protected InterfaceType getInterfaceType() {
-		List types = fVM.classesByName("org.eclipse.debug.jdi.tests.program.Printable");
-		return (InterfaceType) types.get(0);
-	}
-	/**
-	 * Returns the variable "t" in the frame running MainClass.run().
-	 */
-	protected LocalVariable getLocalVariable() {
-		try {
-			return getFrame(RUN_FRAME_OFFSET).visibleVariableByName("t");
-		} catch (AbsentInformationException e) {
-			return null;
-		}
-	}
-	/**
-	 * Returns the firt location in MainClass.print(OutputStream).
-	 */
-	protected Location getLocation() {
-		return getMethod().location();
-	}
-	/**
-	 * Returns the class org.eclipse.debug.jdi.tests.program.MainClass.
-	 */
-	protected ClassType getMainClass() {
-		return getClass("org.eclipse.debug.jdi.tests.program.MainClass");
-	}
-	/**
-	 * Returns the method "print(Ljava/io/OutputStream;)V" 
-	 * in org.eclipse.debug.jdi.tests.program.MainClass
-	 */
-	protected Method getMethod() {
-		return getMethod("print", "(Ljava/io/OutputStream;)V");
-	}
-	/**
-	 * Returns the method with the given name and signature
-	 * in org.eclipse.debug.jdi.tests.program.MainClass
-	 */
-	protected Method getMethod(String name, String signature) {
-		return getMethod(
-			"org.eclipse.debug.jdi.tests.program.MainClass",
-			name,
-			signature);
-	}
-	/**
-	 * Returns the method with the given name and signature
-	 * in the given class.
-	 */
-	protected Method getMethod(String className, String name, String signature) {
-		// Get main class
-		ClassType type = getClass(className);
-
-		// Get method print(OutputStream)
-		Method method = null;
-		List methods = type.methods();
-		ListIterator iterator = methods.listIterator();
-		while (iterator.hasNext()) {
-			Method m = (Method) iterator.next();
-			if ((m.name().equals(name)) && (m.signature().equals(signature))) {
-				method = m;
-				break;
-			}
-		}
-		if (method == null)
-			throw new Error("Unknown method: " + name + signature);
-		else
-			return method;
-	}
-	/**
-	 * Creates and returns a modification watchpoint request
-	 * for the field "fBool" in
-	 * org.eclipse.debug.jdi.tests.program.MainClass.
-	 * NOTE: This assumes that the VM can watch field modification.
-	 */
-	protected ModificationWatchpointRequest getModificationWatchpointRequest() {
-		// Get the field
-		Field field = getField("fBool");
-
-		// Create a modification watchpoint for this field
-		return fVM.eventRequestManager().createModificationWatchpointRequest(field);
-	}
-	/**
-	 * Returns the value of the static field "fObject" in 
-	 * org.eclipse.debug.jdi.tests.program.MainClass
-	 */
-	protected ObjectReference getObjectReference() {
-		// Get main class
-		ClassType type = getMainClass();
-
-		// Get field "fObject"
-		Field field = getField();
-
-		// Get value of "fObject"
-		return (ObjectReference) type.getValue(field);
-	}
-	/**
-	 * Creates and returns an access watchpoint request
-	 * for the static field "fString" in 
-	 * org.eclipse.debug.jdi.tests.program.MainClass
-	 * NOTE: This assumes that the VM can watch field access.
-	 */
-	protected AccessWatchpointRequest getStaticAccessWatchpointRequest() {
-		// Get the static field
-		Field field = getField("fString");
-
-		// Create an access watchpoint for this field
-		return fVM.eventRequestManager().createAccessWatchpointRequest(field);
-	}
-	/**
-	 * Creates and returns a modification watchpoint request
-	 * for the static field "fString" in
-	 * org.eclipse.debug.jdi.tests.program.MainClass.
-	 * NOTE: This assumes that the VM can watch field modification.
-	 */
-	protected ModificationWatchpointRequest getStaticModificationWatchpointRequest() {
-		// Get the field
-		Field field = getField("fString");
-
-		// Create a modification watchpoint for this field
-		return fVM.eventRequestManager().createModificationWatchpointRequest(field);
-	}
-	/**
-	 * Returns the value of the static field "fString" in 
-	 * org.eclipse.debug.jdi.tests.program.MainClass
-	 */
-	protected StringReference getStringReference() {
-		// Get field "fString"
-		Field field = getField("fString");
-
-		// Get value of "fString"
-		return (StringReference) getMainClass().getValue(field);
-	}
-	/**
-	 * Returns the class java.lang.Object.
-	 */
-	protected ClassType getSystemType() {
-		List classes = fVM.classesByName("java.lang.Object");
-		if (classes.size() == 0)
-			return null;
-		else
-			return (ClassType) classes.get(0);
-	}
-	/**
-	 * Returns the thread contained in the static field "fThread" in 
-	 * org.eclipse.debug.jdi.tests.program.MainClass
-	 */
-	protected ThreadReference getThread() {
-		return getThread("fThread");
-	}
-
-	protected ThreadReference getMainThread() {
-		return getThread("fMainThread");
-	}
-
-	private ThreadReference getThread(String fieldName) {
-		ClassType type = getMainClass();
-		if (type == null)
-			return null;
-
-		// Get static field "fThread"
-		List fields = type.fields();
-		ListIterator iterator = fields.listIterator();
-		Field field = null;
-		while (iterator.hasNext()) {
-			field = (Field) iterator.next();
-			if (field.name().equals(fieldName))
-				break;
-		}
-
-		// Get value of "fThread"
-		Value value = type.getValue(field);
-		if (value == null)
-			return null;
-		else
-			return (ThreadReference) value;
-	}
-	/**
-	 * Returns the VM info for this test.
-	 */
-	VMInformation getVMInfo() {
-		return new VMInformation(
-			fVM,
-			fVMType,
-			fLaunchedVM,
-			fEventReader,
-			fConsoleReader);
-	}
-	/**
-	 * Returns whether the given test is excluded for the VM we are testing.
-	 */
-	private boolean isExcludedTest(String testName) {
-		String[] excludedTests = excludedTests();
-		if (excludedTests == null)
-			return false;
-		for (int i = 0; i < excludedTests.length; i++)
-			if (testName.equals(excludedTests[i]))
-				return true;
-		return false;
-	}
-
-	/**
-	 * Launches the target VM and connects to VM.
-	 */
-	protected void launchTargetAndConnectToVM() {
-		launchTarget();
-		connectToVM();
-	}
-
-	protected boolean vmIsRunning() {
-		boolean isRunning = false;
-		try {
-			if (fLaunchedVM != null)
-				fLaunchedVM.exitValue();
-		} catch (IllegalThreadStateException e) {
-			isRunning = true;
-		}
-		return isRunning;
-	}
-
-	protected void launchTarget() {
-		if (fVmCmd != null)
-			launchCommandLineTarget();
-		else if (fVMLauncherName.equals("SunVMLauncher"))
-			launchSunTarget();
-		else if (fVMLauncherName.equals("IBMVMLauncher"))
-			launchIBMTarget();
-		else
-			launchJ9Target();
-	}
-
-	/**
-	 * Launches the target VM specified on the command line.
-	 */
-	private void launchCommandLineTarget() {
-		try {
-			if (fProxyCmd != null) {
-				fLaunchedProxy = Runtime.getRuntime().exec(fProxyCmd);
-			}
-			fLaunchedVM = Runtime.getRuntime().exec(fVmCmd);
-		} catch (IOException e) {
-			throw new Error("Could not launch the VM because " + e.getMessage());
-		}
-	}
-
-	/**
-	 * Launches the target J9 VM.
-	 */
-	private void launchJ9Target() {
-		try {
-			// Launch proxy
-			String proxyString[] = new String[3];
-			int index = 0;
-			String binDirectory =
-				fTargetAddress
-					+ System.getProperty("file.separator")
-					+ "bin"
-					+ System.getProperty("file.separator");
-			proxyString[index++] = binDirectory + "j9proxy";
-			proxyString[index++] = "localhost:" + (fBackEndPort - 1);
-			proxyString[index++] = "" + fBackEndPort;
-			fLaunchedProxy = Runtime.getRuntime().exec(proxyString);
-
-			// Launch target VM
-			String[] vmString;
-			if (fBootPath.length() > 0)
-				vmString = new String[5];
-			else
-				vmString = new String[4];
-
-			index = 0;
-			vmString[index++] = binDirectory + "j9w";
-			File vm= new File(vmString[index - 1] + ".exe");
-			if (!vm.exists()) {
-				vmString[index - 1] = binDirectory + "j9";
-			}
-			if (fBootPath.length() > 0)
-				vmString[index++] = "-bp:" + fBootPath;
-			vmString[index++] = "-cp:" + fClassPath;
-			vmString[index++] = "-debug:" + (fBackEndPort - 1);
-			vmString[index++] = "org.eclipse.debug.jdi.tests.program.MainClass";
-			fLaunchedVM = Runtime.getRuntime().exec(vmString);
-
-		} catch (IOException e) {
-			throw new Error("Could not launch the VM because " + e.getMessage());
-		}
-	}
-
-	/**
-	 * Launches the target Sun VM.
-	 */
-	private void launchSunTarget() {
-		try {
-			// Launch target VM
-			StringBuffer binDirectory= new StringBuffer();
-			if (fTargetAddress.endsWith("jre")) {
-				binDirectory.append(fTargetAddress.substring(0, fTargetAddress.length() - 4));
-			} else {
-				binDirectory.append(fTargetAddress);
-			}
-			binDirectory.append(System.getProperty("file.separator"));
-			binDirectory.append("bin").append(System.getProperty("file.separator"));
-			String[] vmString;
-			if (fBootPath.length() > 0)
-				vmString = new String[10];
-			else
-				vmString = new String[8];
-
-			int index = 0;
-			vmString[index++] = binDirectory.toString() + "javaw";
-			File vm= new File(vmString[index - 1] + ".exe");
-			if (!vm.exists()) {
-				vmString[index - 1] = binDirectory + "java";
-			}
-			if (fBootPath.length() > 0) {
-				vmString[index++] = "-bootpath";
-				vmString[index++] = fBootPath;
-			}
-			vmString[index++] = "-classpath";
-			vmString[index++] = fClassPath;
-			vmString[index++] = "-Xdebug";
-			vmString[index++] = "-Xnoagent";
-			vmString[index++] = "-Djava.compiler=NONE";
-			vmString[index++] =
-				"-Xrunjdwp:transport=dt_socket,address=" + fBackEndPort + ",suspend=y,server=y";
-			vmString[index++] = "org.eclipse.debug.jdi.tests.program.MainClass";
-			fLaunchedVM = Runtime.getRuntime().exec(vmString);
-
-		} catch (IOException e) {
-			throw new Error("Could not launch the VM because " + e.getMessage());
-		}
-	}
-	/**
-	 * Launches the target IBM VM.
-	 */
-	private void launchIBMTarget() {
-		try {
-			// Launch target VM
-			String binDirectory =
-				fTargetAddress
-					+ System.getProperty("file.separator")
-					+ "bin"
-					+ System.getProperty("file.separator");
-			String[] vmString;
-			if (fBootPath.length() > 0)
-				vmString = new String[10];
-			else
-				vmString = new String[8];
-
-			int index = 0;
-			vmString[index++] = binDirectory + "javaw";
-			if (fBootPath.length() > 0) {
-				vmString[index++] = "-bootpath";
-				vmString[index++] = fBootPath;
-			}
-			vmString[index++] = "-classpath";
-			vmString[index++] = fClassPath;
-			vmString[index++] = "-Xdebug";
-			vmString[index++] = "-Xnoagent";
-			vmString[index++] = "-Djava.compiler=NONE";
-			vmString[index++] =
-				"-Xrunjdwp:transport=dt_socket,address=" + fBackEndPort + ",suspend=y,server=y";
-			vmString[index++] = "org.eclipse.debug.jdi.tests.program.MainClass";
-			fLaunchedVM = Runtime.getRuntime().exec(vmString);
-
-		} catch (IOException e) {
-			throw new Error("Could not launch the VM because " + e.getMessage());
-		}
-	}
-
-	/**
-	 * Conects to the target vm.
-	 */
-	protected void connectToVM() {
-		// Start the console reader if possible so that the VM doesn't block when the stdout is full
-		startConsoleReaders();
-
-		// Contact the VM (try 10 times)
-		for (int i = 0; i < 10; i++) {
-			try {
-				VirtualMachineManager manager = Bootstrap.virtualMachineManager();
-				List connectors = manager.attachingConnectors();
-				if (connectors.size() == 0)
-					break;
-				AttachingConnector connector = (AttachingConnector) connectors.get(0);
-				Map args = connector.defaultArguments();
-				((Connector.Argument) args.get("port")).setValue(String.valueOf(fBackEndPort));
-				((Connector.Argument) args.get("hostname")).setValue("localhost");
-
-				fVM = connector.attach(args);
-				if (fVMTraceFlags != com.sun.jdi.VirtualMachine.TRACE_NONE)
-					fVM.setDebugTraceMode(fVMTraceFlags);
-				break;
-			} catch (IllegalConnectorArgumentsException e) {
-			} catch (IOException e) {
-				System.out.println("Got exception: " + e.getMessage());
-				try {
-					System.out.println(
-						"Could not contact the VM at localhost" + ":" + fBackEndPort + ". Retrying...");
-					Thread.sleep(200);
-				} catch (InterruptedException e2) {
-				}
-			}
-		}
-		if (fVM == null) {
-			if (fLaunchedVM != null) {
-				// If the VM is not running, output error stream
-				try {
-					if (!vmIsRunning()) {
-						InputStream in = fLaunchedVM.getErrorStream();
-						int read;
-						do {
-							read = in.read();
-							if (read != -1)
-								System.out.print((char) read);
-						} while (read != -1);
-					}
-				} catch (IOException e) {
-				}
-
-				// Shut it down
-				killVM();
-			}
-			throw new Error("Could not contact the VM");
-		}
-		startEventReader();
-	}
-	/**
-	 * Initializes the fields that are used by this test only.
-	 */
-	public abstract void localSetUp();
-	/**
-	 * Makes sure the test leaves the VM in the same state it found it.
-	 * Default is to do nothing.
-	 */
-	public void localTearDown() {
-	}
-	/**
-	 * Parses the given arguments and store them in this tests
-	 * fields.
-	 * Returns whether the parsing was successfull.
-	 */
-	protected boolean parseArgs(String[] args) {
-		// Default values
-		String vmVendor = System.getProperty("java.vm.vendor");
-		String vmVersion = System.getProperty("java.vm.version");
-		String targetAddress = System.getProperty("java.home");
-		String vmLauncherName;
-		if (vmVendor != null
-			&& vmVendor.equals("Sun Microsystems Inc.")
-			&& vmVersion != null) {
-			vmLauncherName = "SunVMLauncher";
-		} else if (
-			vmVendor != null && vmVendor.equals("IBM Corporation") && vmVersion != null) {
-			vmLauncherName = "IBMVMLauncher";
-		} else {
-			vmLauncherName = "J9VMLauncher";
-		}
-		String classPath = System.getProperty("java.class.path");
-		String bootPath = "";
-		String vmType = "?";
-		boolean verbose = false;
-
-		// Parse arguments
-		for (int i = 0; i < args.length; ++i) {
-			String arg = args[i];
-			if (arg.startsWith("-")) {
-				if (arg.equals("-verbose") || arg.equals("-v")) {
-					verbose = true;
-				} else {
-					String next = (i < args.length - 1) ? args[++i] : null;
-					// If specified, passed values overide default values
-					if (arg.equals("-launcher")) {
-						vmLauncherName = next;
-					} else if (arg.equals("-address")) {
-						targetAddress = next;
-					} else if (arg.equals("-port")) {
-						fBackEndPort = Integer.parseInt(next);
-					} else if (arg.equals("-cp")) {
-						classPath = next;
-					} else if (arg.equals("-bp")) {
-						bootPath = next;
-					} else if (arg.equals("-vmtype")) {
-						vmType = next;
-					} else if (arg.equals("-stdout")) {
-						fStdoutFile = next;
-					} else if (arg.equals("-stderr")) {
-						fStderrFile = next;
-					} else if (arg.equals("-proxyout")) {
-						fProxyoutFile = next;
-					} else if (arg.equals("-proxyerr")) {
-						fProxyerrFile = next;
-					} else if (arg.equals("-vmcmd")) {
-						fVmCmd = next;
-					} else if (arg.equals("-proxycmd")) {
-						fProxyCmd = next;
-					} else if (arg.equals("-trace")) {
-						if (next.equals("all")) {
-							fVMTraceFlags = com.sun.jdi.VirtualMachine.TRACE_ALL;
-						} else {
-							fVMTraceFlags = Integer.decode(next).intValue();
-						}
-					} else {
-						System.out.println("Invalid option: " + arg);
-						printUsage();
-						return false;
-					}
-				}
-			}
-		}
-		fVMLauncherName = vmLauncherName;
-		fTargetAddress = targetAddress;
-		fClassPath = classPath;
-		fBootPath = bootPath;
-		fVMType = vmType;
-		fVerbose = verbose;
-		return true;
-	}
-	/**
-	 * Prints the various options to pass to the constructor.
-	 */
-	protected void printUsage() {
-		System.out.println("Possible options:");
-		System.out.println("-launcher <Name of the launcher class>");
-		System.out.println("-address <Address of the target VM>");
-		System.out.println("-port <Debug port number>");
-		System.out.println("-cp <Path to the test program>");
-		System.out.println("-bp <Boot classpath for the system class library>");
-		System.out.println("-vmtype <The type of VM: JDK, J9, ...>");
-		System.out.println("-verbose | -v");
-		System.out.println("-stdout <file where VM output is written to>");
-		System.out.println("-stderr <file where VM error output is written to>");
-		System.out.println("-proxyout <file where proxy output is written to>");
-		System.out.println("-proxyerr <file where proxy error output is written to>");
-		System.out.println("-vmcmd <exec string to start VM>");
-		System.out.println("-proxycmd <exec string to start proxy>");
-	}
-	/**
-	 * Set the value of the "fBool" field back to its original value
-	 */
-	protected void resetField() {
-		Field field = getField("fBool");
-		Value value = null;
-		value = fVM.mirrorOf(false);
-		try {
-			getObjectReference().setValue(field, value);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("resetField.2", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("resetField.3", false);
-		}
-	}
-	/**
-	 * Set the value of the "fString" field back to its original value
-	 */
-	protected void resetStaticField() {
-		Field field = getField("fString");
-		Value value = null;
-		value = fVM.mirrorOf("Hello World");
-		try {
-			getMainClass().setValue(field, value);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("resetField.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("resetField.2", false);
-		}
-	}
-	/**
-	 * Runs this test's suite with the given arguments.
-	 */
-	protected void runSuite(String[] args) {
-		// Check args
-		if (!parseArgs(args))
-			return;
-
-		// Run test
-		System.out.println(new java.util.Date());
-		System.out.println("Begin testing " + getName() + "...");
-		junit.textui.TestRunner.run(suite());
-		System.out.println("Done testing " + getName() + ".");
-	}
-	/**
-	 * Sets the 'in control of the VM' flag for this test.
-	 */
-	void setInControl(boolean inControl) {
-		fInControl = inControl;
-	}
-	/**
-	 * Launch target VM and start program in target VM.
-	 */
-	protected void launchTargetAndStartProgram() {
-		launchTargetAndConnectToVM();
-		startProgram();
-	}
-	/**
-	 * Init tests
-	 */
-	protected void setUp() {
-		if (fVM == null && fInControl) {
-			launchTargetAndStartProgram();
-		}
-		try {
-			verbose("Setting up the test");
-			localSetUp();
-		} catch (RuntimeException e) {
-			System.out.println("Runtime exception during set up:");
-			e.printStackTrace();
-		} catch (Error e) {
-			System.out.println("Error during set up:");
-			e.printStackTrace();
-		}
-	}
-	/**
-	 * Sets the VM info for this test.
-	 */
-	void setVMInfo(VMInformation info) {
-		if (info != null) {
-			fVM = info.fVM;
-			fLaunchedVM = info.fLaunchedVM;
-			fEventReader = info.fEventReader;
-			fConsoleReader = info.fConsoleReader;
-		}
-	}
-	/**
-	 * Stop console and event readers.
-	 */
-	protected void stopReaders() {
-		stopEventReader();
-		stopConsoleReaders();
-	}
-	/**
-	 * Shut down the target.
-	 */
-	protected void shutDownTarget() {
-		stopReaders();
-		if (fVM != null) {
-			try {
-				fVM.exit(0);
-			} catch (VMDisconnectedException e) {
-			}
-		}
-
-		fVM = null;
-		fLaunchedVM = null;
-
-		// We want subsequent connections to use different ports, unless a
-		// VM exec sting is given.
-		if (fVmCmd == null)
-			fBackEndPort += 2;
-	}
-	/**
-	 * Starts the threads that reads from the VM and proxy input and error streams
-	 */
-	private void startConsoleReaders() {
-		if (fStdoutFile != null) {
-			fConsoleReader =
-				new FileConsoleReader(
-					"JDI Tests Console Reader",
-					fStdoutFile,
-					fLaunchedVM.getInputStream());
-		} else {
-			fConsoleReader =
-				new NullConsoleReader("JDI Tests Console Reader", fLaunchedVM.getInputStream());
-		}
-		fConsoleReader.start();
-
-		if (fStderrFile != null) {
-			fConsoleErrorReader =
-				new FileConsoleReader(
-					"JDI Tests Console Error Reader",
-					fStderrFile,
-					fLaunchedVM.getErrorStream());
-		} else {
-			fConsoleErrorReader =
-				new NullConsoleReader(
-					"JDI Tests Console Error Reader",
-					fLaunchedVM.getErrorStream());
-		}
-		fConsoleErrorReader.start();
-
-		if (fLaunchedProxy == null)
-			return;
-
-		if (fProxyoutFile != null) {
-			fProxyReader =
-				new FileConsoleReader(
-					"JDI Tests Proxy Reader",
-					fProxyoutFile,
-					fLaunchedProxy.getInputStream());
-		} else {
-			fProxyReader =
-				new NullConsoleReader(
-					"JDI Tests Proxy Reader",
-					fLaunchedProxy.getInputStream());
-		}
-		fProxyReader.start();
-
-		if (fProxyerrFile != null) {
-			fProxyErrorReader =
-				new FileConsoleReader(
-					"JDI Tests Proxy Error Reader",
-					fProxyerrFile,
-					fLaunchedProxy.getErrorStream());
-		} else {
-			fProxyErrorReader =
-				new NullConsoleReader(
-					"JDI Tests Proxy Error Reader",
-					fLaunchedProxy.getErrorStream());
-		}
-		fProxyErrorReader.start();
-	}
-	/**
-	 * Stops the console reader.
-	 */
-	private void stopConsoleReaders() {
-		if (fConsoleReader != null)
-			fConsoleReader.stop();
-		if (fConsoleErrorReader != null)
-			fConsoleErrorReader.stop();
-		if (fProxyReader != null)
-			fProxyReader.stop();
-		if (fProxyErrorReader != null)
-			fProxyErrorReader.stop();
-	}
-	/**
-	 * Starts event reader.
-	 */
-	private void startEventReader() {
-		// Create the VM event reader.
-		fEventReader = new EventReader("JDI Tests Event Reader", fVM.eventQueue());
-	}
-	/**
-	 * Stops the event reader.
-	 */
-	private void stopEventReader() {
-		fEventReader.stop();
-	}
-	protected void killVM() {
-		if (fLaunchedVM != null)
-			fLaunchedVM.destroy();
-		if (fLaunchedProxy != null)
-			fLaunchedProxy.destroy();
-	}
-	/**
-	 * Starts the target program.
-	 */
-	protected void startProgram() {
-		verbose("Starting target program");
-
-		// Request class prepare events
-		EventRequest classPrepareRequest =
-			fVM.eventRequestManager().createClassPrepareRequest();
-		classPrepareRequest.enable();
-
-		// Prepare to receive the token class prepare event
-		ClassPrepareEventWaiter waiter =
-			new ClassPrepareEventWaiter(
-				classPrepareRequest,
-				true,
-				"org.eclipse.debug.jdi.tests.program.MainClass");
-		fEventReader.addEventListener(waiter);
-
-		// Start the event reader (this will start the VM when the VMStartEvent is picked up)
-		fEventReader.start();
-
-		// Wait until the program has started
-		Event event = (ClassPrepareEvent) waitForEvent(waiter, 3 * TIMEOUT);
-		fEventReader.removeEventListener(waiter);
-		if (event == null) {
-			try {
-				System.out.println(
-					"\nThe program doesn't seem to have started after " + (3 * TIMEOUT) + "ms");
-				InputStream errorStream = fLaunchedVM.getErrorStream();
-				int read;
-				do {
-					read = errorStream.read();
-					if (read != -1)
-						System.out.print((char) read);
-				} while (read != -1);
-			} catch (IOException e) {
-			}
-		}
-
-		// Stop class prepare events
-		fVM.eventRequestManager().deleteEventRequest(classPrepareRequest);
-
-		// Wait for the program to be ready to be tested
-		waitUntilReady();
-	}
-	/**
-	 * Returns all tests 
-	 */
-	protected Test suite() {
-		JDITestSuite suite = new JDITestSuite(this);
-		Vector testNames = getAllMatchingTests("testJDI");
-		Iterator iterator = testNames.iterator();
-		while (iterator.hasNext()) {
-			String name = (String) iterator.next();
-			suite.addTest(new JDITestCase(this, name));
-		}
-		return suite;
-	}
-	/**
-	 * Undo the initialization of the test.
-	 */
-	protected void tearDown() {
-		try {
-			super.tearDown();
-		} catch (Exception e) {
-			System.out.println("Exception during tear down:");
-			e.printStackTrace();
-		}
-		try {
-			verbose("Tearing down the test");
-			localTearDown();
-
-			// Ensure that the test didn't leave a modification watchpoint that could change the expected state of the program
-			if (fVM != null) {
-				assertTrue(fVM.eventRequestManager().modificationWatchpointRequests().size() == 0);
-				if (fInControl) {
-					shutDownTarget();
-				}
-			}
-
-		} catch (RuntimeException e) {
-			System.out.println("Runtime exception during tear down:");
-			e.printStackTrace();
-		} catch (Error e) {
-			System.out.println("Error during tear down:");
-			e.printStackTrace();
-		}
-
-	}
-	/**
-	 * Triggers and waits for the given event to come in.
-	 * Let the thread go if asked.
-	 * Throws an Error if the event didn't come in after TIMEOUT ms
-	 */
-	protected Event triggerAndWait(
-		EventRequest request,
-		String eventType,
-		boolean shouldGo) {
-		Event event = triggerAndWait(request, eventType, shouldGo, TIMEOUT);
-		if (event == null)
-			throw new Error(
-				"Event for " + request + " didn't come in after " + TIMEOUT + "ms");
-		else
-			return event;
-	}
-	/**
-	 * Triggers and waits for the given event to come in.
-	 * Let the thread go if asked.
-	 * Returns null if the event didn't come in after the given amount of time (in ms)
-	 */
-	protected Event triggerAndWait(
-		EventRequest request,
-		String eventType,
-		boolean shouldGo,
-		long time) {
-		// Suspend only if asked
-		if (shouldGo)
-			request.setSuspendPolicy(EventRequest.SUSPEND_NONE);
-		else
-			request.setSuspendPolicy(EventRequest.SUSPEND_EVENT_THREAD);
-
-		// Enable request
-		request.enable();
-
-		// Prepare to receive the event
-		EventWaiter waiter = new EventWaiter(request, shouldGo);
-		fEventReader.addEventListener(waiter);
-
-		// Trigger the event
-		triggerEvent(eventType);
-
-		// Wait for the event to come in
-		Event event = waitForEvent(waiter, TIMEOUT);
-		fEventReader.removeEventListener(waiter);
-
-		if (shouldGo) {
-			// Wait for the program to be ready
-			waitUntilReady();
-		}
-
-		// Clear request
-		fVM.eventRequestManager().deleteEventRequest(request);
-
-		return event;
-	}
-	/**
-	 * Triggers the given type of event. See the MainClass for details on types of event.
-	 */
-	protected void triggerEvent(String eventType) {
-		// Set the "fEventType" field to the given eventType
-		ClassType type = getMainClass();
-		Field field = type.fieldByName("fEventType");
-		assertTrue("1", field != null);
-
-		Value value = null;
-		value = fVM.mirrorOf(eventType);
-		try {
-			type.setValue(field, value);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("2", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("3", false);
-		}
-
-		// Resume the test thread
-		ThreadReference thread = getThread();
-		int suspendCount = thread.suspendCount();
-		for (int i = 0; i < suspendCount; i++)
-			thread.resume();
-	}
-	/**
-	 * Triggers a step event and waits for it to come in.
-	 */
-	protected StepEvent triggerStepAndWait() {
-		return triggerStepAndWait(
-			getThread(),
-			StepRequest.STEP_MIN,
-			StepRequest.STEP_OVER);
-	}
-
-	protected StepEvent triggerStepAndWait(
-		ThreadReference thread,
-		int gran,
-		int depth) {
-		// Request for step events
-		EventRequest eventRequest =
-			fVM.eventRequestManager().createStepRequest(thread, gran, depth);
-		eventRequest.addCountFilter(1);
-		eventRequest.setSuspendPolicy(EventRequest.SUSPEND_NONE);
-		eventRequest.enable();
-
-		return triggerStepAndWait(thread, eventRequest, TIMEOUT);
-	}
-
-	protected StepEvent triggerStepAndWait(
-		ThreadReference thread,
-		EventRequest eventRequest,
-		int timeout) {
-		// Prepare to receive the event
-		EventWaiter waiter = new EventWaiter(eventRequest, true);
-		fEventReader.addEventListener(waiter);
-
-		// Trigger step event
-		int suspendCount = thread.suspendCount();
-		for (int i = 0; i < suspendCount; i++)
-			thread.resume();
-
-		// Wait for the event to come in
-		StepEvent event = (StepEvent) waitForEvent(waiter, timeout);
-		fEventReader.removeEventListener(waiter);
-		if (event == null)
-			throw new Error("StepEvent didn't come in after " + timeout + "ms");
-
-		// Stop getting step events
-		fVM.eventRequestManager().deleteEventRequest(eventRequest);
-
-		// Wait for the program to be ready
-		waitUntilReady();
-
-		return event;
-	}
-	/**
-	 * Output verbose string if asked for.
-	 */
-	protected void verbose(String verboseString) {
-		if (fVerbose)
-			System.out.println(verboseString);
-	}
-	/**
-	 * Waits for an event to come in using the given waiter.
-	 * Waits for the given time. If it times out, returns null.
-	 */
-	protected Event waitForEvent(EventWaiter waiter, long time) {
-		Event event;
-		try {
-			event = waiter.waitEvent(time);
-		} catch (InterruptedException e) {
-			event = null;
-		}
-		return event;
-	}
-	/**
-	 * Waits until the program is ready to be tested.
-	 * The default behaviour is to wait until the "Test Thread" throws and catches
-	 * an exception.
-	 */
-	protected void waitUntilReady() {
-		// Make sure the program is running
-		ThreadReference thread = getThread();
-		while (thread == null || thread.suspendCount() > 0) {
-			fVM.resume();
-			thread = getThread();
-		}
-
-		// Create exception request
-		EventRequest request =
-			fVM.eventRequestManager().createExceptionRequest(null, true, false);
-		request.setSuspendPolicy(EventRequest.SUSPEND_EVENT_THREAD);
-
-		// Prepare to receive the event
-		EventWaiter waiter = new EventWaiter(request, false);
-		fEventReader.addEventListener(waiter);
-
-		request.enable();
-
-		while (true) {
-			// Wait for the event to come in
-			ExceptionEvent event = (ExceptionEvent) waitForEvent(waiter, TIMEOUT);
-
-			// Throw error if event is null
-			if (event == null)
-				throw new Error("Target program was not ready after " + TIMEOUT + "ms");
-
-			// Get the method where the exception was thrown
-			Method meth = event.location().method();
-			if (meth == null || !meth.name().equals("printAndSignal"))
-				fVM.resume();
-			else
-				break;
-		}
-
-		// Disable request
-		fEventReader.removeEventListener(waiter);
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractReader.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractReader.java
deleted file mode 100644
index 8142e5b..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractReader.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AccessibleTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AccessibleTest.java
deleted file mode 100644
index 6d9b638..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AccessibleTest.java
+++ /dev/null
@@ -1,89 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.Accessible;
-
-/**
- * Tests for JDI com.sun.jdi.Accessible.
- */
-public class AccessibleTest extends AbstractJDITest {
-
-	private Accessible fArrayType, fClassType, fInterfaceType, fField, fMethod;
-	/**
-	 * Creates a new test.
-	 */
-	public AccessibleTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get the all kinds of accessible
-
-		// ReferenceType
-		fArrayType = getArrayType();
-		fClassType = getMainClass();
-		fInterfaceType = getInterfaceType();
-
-		// TypeComponent
-		fField = getField();
-		fMethod = getMethod();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new AccessibleTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.Accessible";
-	}
-	/**
-	 * Test JDI isPackagePrivate().
-	 */
-	public void testJDIIsPackagePrivate() {
-		assertTrue("1", !fArrayType.isPackagePrivate());
-		assertTrue("2", !fClassType.isPackagePrivate());
-		assertTrue("3", !fInterfaceType.isPackagePrivate());
-		assertTrue("4", !fField.isPackagePrivate());
-		assertTrue("5", !fMethod.isPackagePrivate());
-	}
-	/**
-	 * Test JDI isPrivate().
-	 */
-	public void testJDIIsPrivate() {
-		assertTrue("1", !fField.isPrivate());
-		assertTrue("2", !fMethod.isPrivate());
-
-		// NB: isPrivate() is undefined for a type
-	}
-	/**
-	 * Test JDI isProtected().
-	 */
-	public void testJDIIsProtected() {
-		assertTrue("1", !fField.isProtected());
-		assertTrue("2", !fMethod.isProtected());
-
-		// NB: isProtected() is undefined for a type
-	}
-	/**
-	 * Test JDI isPublic().
-	 */
-	public void testJDIIsPublic() {
-		assertTrue("1", fArrayType.isPublic());
-		assertTrue("2", fClassType.isPublic());
-		assertTrue("3", fInterfaceType.isPublic());
-		assertTrue("4", fField.isPublic());
-		assertTrue("5", fMethod.isPublic());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ArrayReferenceTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ArrayReferenceTest.java
deleted file mode 100644
index c20b890..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ArrayReferenceTest.java
+++ /dev/null
@@ -1,245 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.List;
-import java.util.ListIterator;
-
-import com.sun.jdi.ArrayReference;
-import com.sun.jdi.ClassNotLoadedException;
-import com.sun.jdi.DoubleValue;
-import com.sun.jdi.InvalidTypeException;
-import com.sun.jdi.StringReference;
-
-/**
- * Tests for JDI com.sun.jdi.ArrayReference
- * and JDWP Array command set.
- */
-public class ArrayReferenceTest extends AbstractJDITest {
-
-	private ArrayReference fArray;
-	private ArrayReference fDoubleArray;
-
-	/**
-	 * Creates a new test.
-	 */
-	public ArrayReferenceTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get array references
-		fArray = getObjectArrayReference();
-		fDoubleArray = getNonEmptyDoubleArrayReference();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ArrayReferenceTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.ArrayReference";
-	}
-	/**
-	 * Test JDI getValue(int), getValues(), getValues(int,int)
-	 * setValue(Value,int), setValues(List) and setValues(int,List,int,int),
-	 * and JDWP 'Array - Get values' and 'Array - Set values'.
-	 */
-	public void testJDIGetSetDoubleValue() {
-		double one = 1.0;
-		double pi = 3.1415926535;
-		double twos = 2.2;
-		double threes = 3.33;
-		double cnt = 12345;
-		double zero = 0.0;
-		double delta = 0.0;
-
-		DoubleValue dbl = (DoubleValue) fDoubleArray.getValue(0);
-		assertEquals("testJDIGetSetDoubleValue.1", one, dbl.value(), delta);
-
-		DoubleValue piValue = fVM.mirrorOf(pi);
-		DoubleValue cntValue = fVM.mirrorOf(cnt);
-		DoubleValue zeroValue = fVM.mirrorOf(zero);
-		try {
-			fDoubleArray.setValue(0, piValue);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("testJDIGetSetDoubleValue.3.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("testJDIGetSetDoubleValue.3.2", false);
-		}
-		DoubleValue value = (DoubleValue) fDoubleArray.getValue(0);
-		assertEquals("testJDIGetSetDoubleValue.4.1", value, piValue);
-		assertEquals("testJDIGetSetDoubleValue.4.2", pi, value.value(), delta);
-
-		// getValues()
-		List values = fDoubleArray.getValues();
-		double[] expected = new double[] { pi, twos, threes };
-		ListIterator iterator = values.listIterator();
-		while (iterator.hasNext()) {
-			DoubleValue dv = (DoubleValue) iterator.next();
-			boolean included = false;
-			for (int i = 0; i < expected.length; i++) {
-				if (dv.value() == expected[i]) {
-					included = true;
-					break;
-				}
-			}
-			assertTrue("testJDIGetSetDoubleValue.5." + dv.value(), included);
-		}
-
-		// setValues(List)
-		List newValues = values;
-		newValues.set(1, cntValue);
-		try {
-			fDoubleArray.setValues(newValues);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("testJDIGetSetDoubleValue.7.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("testJDIGetSetDoubleValue.7.2", false);
-		}
-		values = fDoubleArray.getValues();
-		assertEquals("testJDIGetSetDoubleValue.8", values, newValues);
-
-		// getValues(int,int)
-		values = fDoubleArray.getValues(1, 2);
-		expected = new double[] { cnt, threes };
-		iterator = values.listIterator();
-		while (iterator.hasNext()) {
-			DoubleValue dv = (DoubleValue) iterator.next();
-			boolean included = false;
-			for (int i = 0; i < expected.length; i++) {
-				if (dv.value() == expected[i]) {
-					included = true;
-					break;
-				}
-			}
-			assertTrue("testJDIGetSetDoubleValue.9." + dv.value(), included);
-		}
-
-		// setValues(int,List,int,int)
-		newValues = fDoubleArray.getValues(0, 2);
-		newValues.set(0, zeroValue);
-		try {
-			fDoubleArray.setValues(0, newValues, 0, 2);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("testJDIGetSetDoubleValue.11.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("testJDIGetSetDoubleValue.11.2", false);
-		}
-		values = fDoubleArray.getValues(0, 2);
-		assertEquals("testJDIGetSetDoubleValue.12", values, newValues);
-	}
-	/**
-	 * Test JDI getValue(int), getValues(), getValues(int,int)
-	 * setValue(Value,int), setValues(List) and setValues(int,List,int,int),
-	 * and JDWP 'Array - Get values' and 'Array - Set values'.
-	 */
-	public void testJDIGetSetValue() {
-		// getValue(int)
-		StringReference string = (StringReference) fArray.getValue(0);
-		assertEquals("1", "foo", string.value());
-
-		// setValue(int,Value)
-		StringReference newValue = null;
-		newValue = fVM.mirrorOf("biz");
-		try {
-			fArray.setValue(0, newValue);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("2.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("2.2", false);
-		}
-		StringReference value = (StringReference) fArray.getValue(0);
-		assertEquals("3", value, newValue);
-
-		// getValues()
-		List values = fArray.getValues();
-		String[] expected = new String[] { "biz", "bar", "hop" };
-		ListIterator iterator = values.listIterator();
-		while (iterator.hasNext()) {
-			StringReference ref = (StringReference) iterator.next();
-			boolean included = false;
-			for (int i = 0; i < expected.length; i++) {
-				if (ref.value().equals(expected[i])) {
-					included = true;
-					break;
-				}
-			}
-			assertTrue("4." + ref.value(), included);
-		}
-
-		// setValues(List)
-		List newValues = values;
-		newValue = fVM.mirrorOf("hip");
-		newValues.set(1, newValue);
-		try {
-			fArray.setValues(newValues);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("5.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("6.2", false);
-		}
-		values = fArray.getValues();
-		assertEquals("7", values, newValues);
-
-		// getValues(int,int)
-		values = fArray.getValues(1, 2);
-		expected = new String[] { "hip", "hop" };
-		iterator = values.listIterator();
-		while (iterator.hasNext()) {
-			StringReference ref = (StringReference) iterator.next();
-			boolean included = false;
-			for (int i = 0; i < expected.length; i++) {
-				if (ref.value().equals(expected[i])) {
-					included = true;
-					break;
-				}
-			}
-			assertTrue("8." + ref.value(), included);
-		}
-
-		// setValues(int,List,int,int)
-		newValues = fArray.getValues(0, 2);
-		newValue = fVM.mirrorOf("rap");
-		newValues.set(0, newValue);
-		try {
-			fArray.setValues(0, newValues, 0, 2);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("9.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("9.2", false);
-		}
-		values = fArray.getValues(0, 2);
-		assertEquals("10", values, newValues);
-
-		// test null value
-		newValues.set(0, null);
-		try {
-			fArray.setValues(0, newValues, 0, 2);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("11.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("11.2", false);
-		}
-		values = fArray.getValues(0, 2);
-		assertEquals("12", values.get(0), null);
-	}
-	/**
-	 * Test JDI length() and JDWP 'Array - Get length'.
-	 */
-	public void testJDILength() {
-		int length = fArray.length();
-		assertEquals("1", 3, length);
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ArrayTypeTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ArrayTypeTest.java
deleted file mode 100644
index 27bda01..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ArrayTypeTest.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.ArrayReference;
-import com.sun.jdi.ArrayType;
-import com.sun.jdi.ClassNotLoadedException;
-import com.sun.jdi.InvalidTypeException;
-import com.sun.jdi.StringReference;
-import com.sun.jdi.Type;
-
-/**
- * Tests for JDI com.sun.jdi.ArrayType
- * and JDWP Array command set.
- */
-public class ArrayTypeTest extends AbstractJDITest {
-
-	private ArrayType fType;
-	/**
-	 * Creates a new test.
-	 */
-	public ArrayTypeTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get array type
-		fType = getArrayType();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ArrayTypeTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.ArrayType";
-	}
-	/**
-	 * Test JDI componentSignature().
-	 */
-	public void testJDIComponentSignature() {
-		String signature = fType.componentSignature();
-		assertEquals("1", "Ljava/lang/String;", signature);
-	}
-	/**
-	 * Test JDI componentType().
-	 */
-	public void testJDIComponentType() {
-		Type expected = (Type) fVM.classesByName("java.lang.String").get(0);
-		Type type = null;
-		try {
-			type = fType.componentType();
-		} catch (ClassNotLoadedException e) {
-			assertTrue("1", false);
-		}
-		assertEquals("2", expected, type);
-	}
-	/**
-	 * Test JDI componentTypeName().
-	 */
-	public void testJDIComponentTypeName() {
-		String typeName = fType.componentTypeName();
-		assertEquals("1", "java.lang.String", typeName);
-	}
-	/**
-	 * Test JDI newInstance(long).
-	 */
-	public void testJDINewInstance() {
-		ArrayReference instance = fType.newInstance(1);
-		assertTrue("1", instance.type().equals(fType));
-		assertEquals("2", 1, instance.length());
-		assertTrue("3", null == instance.getValue(0));
-
-		ArrayReference instance2 = fType.newInstance(5);
-		try {
-			instance2.setValue(3, fVM.mirrorOf("Yo"));
-		} catch (InvalidTypeException exc) {
-		} catch (ClassNotLoadedException exc) {
-		}
-		assertTrue("4", instance2.getValue(2) == null);
-		assertEquals(
-			"5",
-			((StringReference) (instance2.getValue(3))).value(),
-			"Yo");
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/BooleanValueTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/BooleanValueTest.java
deleted file mode 100644
index 5610e42..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/BooleanValueTest.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.BooleanValue;
-
-/**
- * Tests for JDI com.sun.jdi.BooleanValue.
- */
-public class BooleanValueTest extends AbstractJDITest {
-
-	private BooleanValue fValue;
-	/**
-	 * Creates a new test.
-	 */
-	public BooleanValueTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get boolean value for "true"
-		fValue = fVM.mirrorOf(true);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new BooleanValueTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.BooleanValue";
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fValue.equals(fVM.mirrorOf(true)));
-		assertTrue("2", !fValue.equals(fVM.mirrorOf(false)));
-		assertTrue("3", !fValue.equals(new Object()));
-		assertTrue("4", !fValue.equals(null));
-		assertEquals("5", fValue.hashCode(), fVM.mirrorOf(true).hashCode());
-		assertTrue("6", fValue.hashCode() != fVM.mirrorOf(false).hashCode());
-	}
-	/**
-	 * Test JDI value().
-	 */
-	public void testJDIValue() {
-		assertTrue("1", true == fValue.value());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/BreakpointRequestTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/BreakpointRequestTest.java
deleted file mode 100644
index 7a1d0ba..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/BreakpointRequestTest.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.request.BreakpointRequest;
-
-/**
- * Tests for JDI com.sun.jdi.request.BreakpointRequest.
- */
-public class BreakpointRequestTest extends AbstractJDITest {
-
-	private BreakpointRequest fRequest;
-	/**
-	 * Creates a new test .
-	 */
-	public BreakpointRequestTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get the breakpoint request
-		fRequest = getBreakpointRequest();
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// Delete the breakpoint request we created in this test
-		fVM.eventRequestManager().deleteEventRequest(fRequest);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new BreakpointRequestTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.request.BreakpointRequest";
-	}
-	/**
-	 * Test JDI location().
-	 */
-	public void testJDILocation() {
-		assertEquals("1", getLocation(), fRequest.location());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ByteValueTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ByteValueTest.java
deleted file mode 100644
index 3efe5ec..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ByteValueTest.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.ByteValue;
-
-/**
- * Tests for JDI com.sun.jdi.ByteValue.
- */
-public class ByteValueTest extends AbstractJDITest {
-
-	private ByteValue fValue;
-	/**
-	 * Creates a new test.
-	 */
-	public ByteValueTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get byte value for 1
-		fValue = fVM.mirrorOf((byte) 1);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ByteValueTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.ByteValue";
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fValue.equals(fVM.mirrorOf((byte) 1)));
-		assertTrue("2", !fValue.equals(fVM.mirrorOf((byte) 2)));
-		assertTrue("3", !fValue.equals(new Object()));
-		assertTrue("4", !fValue.equals(null));
-		assertEquals("5", fValue.hashCode(), fVM.mirrorOf((byte) 1).hashCode());
-		assertTrue("6", fValue.hashCode() != fVM.mirrorOf((byte) 2).hashCode());
-	}
-	/**
-	 * Test JDI value().
-	 */
-	public void testJDIValue() {
-		assertTrue("1", 1 == fValue.value());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/CharValueTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/CharValueTest.java
deleted file mode 100644
index 21d4f1b..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/CharValueTest.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.CharValue;
-
-/**
- * Tests for JDI com.sun.jdi.CharValue.
- */
-public class CharValueTest extends AbstractJDITest {
-
-	private CharValue fValue;
-	/**
-	 * Creates a new test.
-	 */
-	public CharValueTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get char value for 'a'
-		fValue = fVM.mirrorOf('a');
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new CharValueTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.CharValue";
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fValue.equals(fVM.mirrorOf('a')));
-		assertTrue("2", !fValue.equals(fVM.mirrorOf('b')));
-		assertTrue("3", !fValue.equals(new Object()));
-		assertTrue("4", !fValue.equals(null));
-		assertEquals("5", fValue.hashCode(), fVM.mirrorOf('a').hashCode());
-		assertTrue("6", fValue.hashCode() != fVM.mirrorOf('b').hashCode());
-	}
-	/**
-	 * Test JDI value().
-	 */
-	public void testJDIValue() {
-		assertTrue("1", 'a' == fValue.value());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassLoaderReferenceTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassLoaderReferenceTest.java
deleted file mode 100644
index 0567605..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassLoaderReferenceTest.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.Iterator;
-import java.util.List;
-
-import com.sun.jdi.ClassLoaderReference;
-import com.sun.jdi.ReferenceType;
-
-/**
- * Tests for JDI com.sun.jdi.ClassLoaderReference.
- */
-public class ClassLoaderReferenceTest extends AbstractJDITest {
-
-	private ClassLoaderReference fClassLoader;
-	/**
-	 * Creates a new test.
-	 */
-	public ClassLoaderReferenceTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get the class loader of org.eclipse.debug.jdi.tests.program.MainClass
-		fClassLoader = getClassLoaderReference();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ClassLoaderReferenceTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.ClassLoaderReference";
-	}
-	/**
-	 * Test JDI definedClasses().
-	 */
-	public void testJDIDefinedClasses() {
-		Iterator defined = fClassLoader.definedClasses().iterator();
-		int i = 0;
-		while (defined.hasNext())
-			assertTrue(
-				Integer.toString(i++),
-				defined.next() instanceof ReferenceType);
-	}
-	/**
-	 * Test JDI visibleClasses().
-	 */
-	public void testJDIVisibleClasses() {
-		List visible = fClassLoader.visibleClasses();
-		Iterator defined = fClassLoader.definedClasses().iterator();
-		while (defined.hasNext()) {
-			ReferenceType next = (ReferenceType) defined.next();
-			assertTrue(next.name(), visible.contains(next));
-		}
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareEventTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareEventTest.java
deleted file mode 100644
index 4c7b330..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareEventTest.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.event.ClassPrepareEvent;
-import com.sun.jdi.request.ClassPrepareRequest;
-
-/**
- * Tests for JDI com.sun.jdi.event.ClassPrepareEvent.
- */
-public class ClassPrepareEventTest extends AbstractJDITest {
-	private ClassPrepareRequest fRequest;
-	private ClassPrepareEvent fEvent;
-	/**
-	 * Creates a new test.
-	 */
-	public ClassPrepareEventTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Trigger a class prepare event
-		fRequest = fVM.eventRequestManager().createClassPrepareRequest();
-		fEvent =
-			(ClassPrepareEvent) triggerAndWait(fRequest,
-				"ClassPrepareEvent",
-				true);
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// The test has resumed the test thread, so suspend it
-		waitUntilReady();
-
-		// Delete the class prepare request
-		fVM.eventRequestManager().deleteEventRequest(fRequest);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ClassPrepareEventTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.event.ClassPrepareEvent";
-	}
-	/**
-	 * Test JDI referenceType().
-	 */
-	public void testJDIReferenceType() {
-		assertEquals(
-			"1",
-			"org.eclipse.debug.jdi.tests.program.TestClass",
-			fEvent.referenceType().name());
-	}
-	/**
-	 * Test JDI thread().
-	 */
-	public void testJDIThread() {
-		assertEquals("1", "Test Thread", fEvent.thread().name());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareEventWaiter.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareEventWaiter.java
deleted file mode 100644
index 3c61d10..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareEventWaiter.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.event.ClassPrepareEvent;
-import com.sun.jdi.request.EventRequest;
-/**
- * Listen for ClassPrepareEvent for a specific class.
- */
-public class ClassPrepareEventWaiter extends EventWaiter {
-	protected String fClassName;
-	/**
-	 * Creates a new ClassPrepareEventWaiter that waits for the given class to be loaded.
-	 */
-	public ClassPrepareEventWaiter(EventRequest request, boolean shouldGo, String className) {
-		super(request, shouldGo);
-		fClassName = className;
-	}
-	public boolean classPrepare(ClassPrepareEvent event) {
-		if (event.referenceType().name().equals(fClassName)) {
-			notifyEvent(event);
-			return fShouldGo;
-		} else
-			return true;
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareRequestTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareRequestTest.java
deleted file mode 100644
index d4098d3..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassPrepareRequestTest.java
+++ /dev/null
@@ -1,167 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.event.ClassPrepareEvent;
-import com.sun.jdi.request.ClassPrepareRequest;
-import com.sun.jdi.request.EventRequestManager;
-
-/**
- * Tests for JDI com.sun.jdi.request.ClassPrepareRequest.
- */
-public class ClassPrepareRequestTest extends AbstractJDITest {
-	/**
-	 * Creates a new test.
-	 */
-	public ClassPrepareRequestTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(String[] args) {
-		new ClassPrepareRequestTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.request.ClassPrepareRequest";
-	}
-	/**
-	 * Test JDI addClassFilter(String).
-	 */
-	public void testJDIAddClassFilterString() {
-		EventRequestManager requestManager = fVM.eventRequestManager();
-
-		// Filter is "org.eclipse.debug.jdi.tests.program.*" and loads org.eclipse.debug.jdi.tests.program.TestClass1
-		ClassPrepareRequest request =
-			requestManager.createClassPrepareRequest();
-		request.addClassFilter("org.eclipse.debug.jdi.tests.program.*");
-		ClassPrepareEvent event =
-			(ClassPrepareEvent) triggerAndWait(request,
-				"ClassPrepareEvent1",
-				true,
-				5000);
-		assertTrue("1", event != null);
-		assertEquals(
-			"2",
-			"org.eclipse.debug.jdi.tests.program.TestClass1",
-			event.referenceType().name());
-		requestManager.deleteEventRequest(request);
-
-		// Filter is "bogus.*" and loads org.eclipse.debug.jdi.tests.program.TestClass2
-		request = requestManager.createClassPrepareRequest();
-		request.addClassFilter("bogus.*");
-		event =
-			(ClassPrepareEvent) triggerAndWait(request,
-				"ClassPrepareEvent2",
-				true,
-				5000);
-		assertTrue("3", event == null);
-		requestManager.deleteEventRequest(request);
-
-		// Filter is "*.TestClass3" and loads org.eclipse.debug.jdi.tests.program.TestClass3
-		request = requestManager.createClassPrepareRequest();
-		request.addClassFilter("*.TestClass3");
-		event =
-			(ClassPrepareEvent) triggerAndWait(request,
-				"ClassPrepareEvent3",
-				true,
-				5000);
-		assertTrue("4", event != null);
-		assertEquals(
-			"5",
-			"org.eclipse.debug.jdi.tests.program.TestClass3",
-			event.referenceType().name());
-		requestManager.deleteEventRequest(request);
-
-		// Filter is "*.eclipse.*.jdi.tests.*4" and loads org.eclipse.debug.jdi.tests.program.TestClass4
-		request = requestManager.createClassPrepareRequest();
-		request.addClassFilter("*.eclipse.*.jdi.tests.program.*4");
-		event =
-			(ClassPrepareEvent) triggerAndWait(request,
-				"ClassPrepareEvent4",
-				true,
-				5000);
-		assertTrue("6", event == null);
-		requestManager.deleteEventRequest(request);
-
-		// Filter is "*.eclipse.debug.jdi.tests.program.*" and loads org.eclipse.debug.jdi.tests.program.TestClass5
-		request = requestManager.createClassPrepareRequest();
-		request.addClassFilter("*.eclipse.debug.jdi.tests.program.*");
-		event =
-			(ClassPrepareEvent) triggerAndWait(request,
-				"ClassPrepareEvent5",
-				true,
-				5000);
-		assertTrue("7", event == null);
-		requestManager.deleteEventRequest(request);
-
-		// Filter is "org.eclipse.debug.jdi.tests.program.TestClass6" and loads org.eclipse.debug.jdi.tests.program.TestClass6
-		request = requestManager.createClassPrepareRequest();
-		request.addClassFilter(
-			"org.eclipse.debug.jdi.tests.program.TestClass6");
-		event =
-			(ClassPrepareEvent) triggerAndWait(request,
-				"ClassPrepareEvent6",
-				true,
-				5000);
-		assertTrue("8", event != null);
-		assertEquals(
-			"9",
-			"org.eclipse.debug.jdi.tests.program.TestClass6",
-			event.referenceType().name());
-		requestManager.deleteEventRequest(request);
-	}
-	/**
-	 * Test JDI addClassExclusionFilter(String).
-	 */
-	public void testJDIAddClassExclusionFilterString() {
-		EventRequestManager requestManager = fVM.eventRequestManager();
-
-		// Filter is "org.eclipse.debug.jdi.tests.program.TestClass*" and loads org.eclipse.debug.jdi.tests.program.TestClass7 and org.eclipse.debug.jdi.tests.program.TestClazz8.
-		ClassPrepareRequest request =
-			requestManager.createClassPrepareRequest();
-		request.addClassExclusionFilter(
-			"org.eclipse.debug.jdi.tests.program.TestClass*");
-		ClassPrepareEvent event =
-			(ClassPrepareEvent) triggerAndWait(request,
-				"ClassPrepareEvent7",
-				true,
-				5000);
-		assertTrue("1", event != null);
-		assertEquals(
-			"2",
-			"org.eclipse.debug.jdi.tests.program.TestClazz8",
-			event.referenceType().name());
-		requestManager.deleteEventRequest(request);
-
-		// Filter is "org.eclipse.debug.jdi.tests.program.TestClazz9" and loads org.eclipse.debug.jdi.tests.program.TestClazz9 and org.eclipse.debug.jdi.tests.program.TestClazz10.
-		request = requestManager.createClassPrepareRequest();
-		request.addClassExclusionFilter(
-			"org.eclipse.debug.jdi.tests.program.TestClazz9");
-		event =
-			(ClassPrepareEvent) triggerAndWait(request,
-				"ClassPrepareEvent8",
-				true,
-				5000);
-		assertTrue("3", event != null);
-		assertEquals(
-			"4",
-			"org.eclipse.debug.jdi.tests.program.TestClazz10",
-			event.referenceType().name());
-		requestManager.deleteEventRequest(request);
-
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassTypeTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassTypeTest.java
deleted file mode 100644
index d616d5c..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassTypeTest.java
+++ /dev/null
@@ -1,360 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import com.sun.jdi.AbsentInformationException;
-import com.sun.jdi.ClassNotLoadedException;
-import com.sun.jdi.ClassType;
-import com.sun.jdi.Field;
-import com.sun.jdi.IncompatibleThreadStateException;
-import com.sun.jdi.InterfaceType;
-import com.sun.jdi.InvalidTypeException;
-import com.sun.jdi.InvocationException;
-import com.sun.jdi.Method;
-import com.sun.jdi.ObjectReference;
-import com.sun.jdi.StringReference;
-import com.sun.jdi.ThreadReference;
-import com.sun.jdi.Value;
-import com.sun.jdi.event.ThreadStartEvent;
-
-/**
- * Tests for JDI com.sun.jdi.ClassType
- * and JDWP Class command set.
- */
-public class ClassTypeTest extends AbstractJDITest {
-
-	private ClassType fType;
-	/**
-	 * Creates a new test.
-	 */
-	public ClassTypeTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get the type org.eclipse.debug.jdi.tests.program.MainClass
-		fType = getMainClass();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ClassTypeTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.ClassType";
-	}
-	/**
-	 * Test JDI allFields().
-	 */
-	public void testJDIAllFields() {
-		boolean found = false;
-		Iterator it = fType.allFields().iterator();
-		while (it.hasNext()) {
-			Field fld = (Field) it.next();
-			if (fld.name().equals("fString")) {
-				found = true;
-			}
-		}
-		assertTrue("1", found);
-	}
-	/**
-	 * Test JDI allInterfaces().
-	 */
-	public void testJDIAllInterfaces() {
-		List all = fType.allInterfaces();
-		boolean found = false;
-		Iterator interfaces = fType.allInterfaces().iterator();
-		while (interfaces.hasNext()) {
-			InterfaceType next = (InterfaceType) interfaces.next();
-			assertTrue(next.name(), all.contains(next));
-			if (next.name().equals("java.lang.Comparable"))
-				found = true;
-		}
-		assertTrue("1", found);
-	}
-	/**
-	 * Test JDI allMethods().
-	 */
-	public void testJDIAllMethods() {
-		boolean found = false;
-		Iterator it = fType.allMethods().iterator();
-		while (it.hasNext()) {
-			Method mth = (Method) it.next();
-			if (mth.name().equals("after")) { // in Date
-				found = true;
-			}
-		}
-		assertTrue("1", found);
-	}
-	/**
-	 * Test JDI concreteMethodByName().
-	 */
-	public void testJDIConcreteMethodByName() {
-		Method method = fType.concreteMethodByName("run", "()V");
-		assertTrue("1", method != null);
-		assertEquals("2", fType, method.declaringType());
-		assertTrue("3", fType.concreteMethodByName("xxx", "(I)Z") == null);
-	}
-	/**
-	 * Test JDI interfaces().
-	 */
-	public void testJDIInterfaces() {
-		boolean found = false;
-		boolean extra = false;
-		List interfaces = fType.interfaces();
-		assertEquals("1", 2, interfaces.size());
-		Iterator iterator = interfaces.iterator();
-		int i = 0;
-		while (iterator.hasNext()) {
-			Object next = iterator.next();
-			assertTrue("2." + i++, next instanceof InterfaceType);
-			InterfaceType ift = (InterfaceType) next;
-			if (ift.name().equals("java.lang.Runnable"))
-				found = true;
-			if (ift.name().equals("java.lang.Comparable"))
-				extra = true;
-		}
-		assertTrue("1", found);
-		assertTrue("2", !extra);
-	}
-	/**
-	 * Test JDI invokeMethod(ThreadReference, Method, Value[]).
-	 */
-	public void testJDIInvokeMethod() {
-		// Make sure the entire VM is not suspended before we start a new thread
-		// (otherwise this new thread will start suspended and we will never get the
-		// ThreadStart event)
-		fVM.resume();
-
-		ThreadStartEvent event =
-			(ThreadStartEvent) triggerAndWait(fVM
-				.eventRequestManager()
-				.createThreadStartRequest(),
-				"ThreadStartEvent",
-				false);
-		ThreadReference thread = event.thread();
-		Method inv1 =
-			fType.concreteMethodByName(
-				"invoke1",
-				"(ILjava/lang/Object;)Ljava/lang/String;");
-		List args = new ArrayList();
-		args.add(fVM.mirrorOf(41));
-		args.add(null);
-		Exception oops = null;
-		Value val = null;
-		try {
-			val = fType.invokeMethod(thread, inv1, args, 0);
-		} catch (Exception exc) {
-			oops = exc;
-		}
-		assertTrue("1", oops == null);
-		assertEquals("2", val == null ? null : ((StringReference) val).value(), "41");
-	}
-	/**
-	 * Test JDI invokeMethod - failure.
-	 */
-	public void testJDIInvokeMethodFail() {
-		// Make sure the entire VM is not suspended before we start a new thread
-		// (otherwise this new thread will start suspended and we will never get the
-		// ThreadStart event)
-		fVM.resume();
-
-		ThreadStartEvent event =
-			(ThreadStartEvent) triggerAndWait(fVM
-				.eventRequestManager()
-				.createThreadStartRequest(),
-				"ThreadStartEvent",
-				false);
-		ThreadReference thread = event.thread();
-		Method inv2 = fType.concreteMethodByName("invoke2", "()V");
-		Exception good = null;
-		Exception oops = null;
-		try {
-			fType.invokeMethod(thread, inv2, new ArrayList(), 0);
-		} catch (InvocationException exc) {
-			good = exc;
-		} catch (Exception exc) {
-			oops = exc;
-		}
-		assertTrue("1", oops == null);
-		assertTrue("2", good != null);
-	}
-	/**
-	 * Test JDI locationsOfLine(int).
-	 */
-	public void testJDILocationsOfLine() {
-		int lineNumber = getLocation().lineNumber();
-		List locations = null;
-		try {
-			locations = fType.locationsOfLine(lineNumber);
-		} catch (AbsentInformationException e) {
-			assertTrue("1", false);
-		}
-		assertEquals("2", 1, locations.size());
-	}
-	/**
-	 * Test JDI methodByName
-	 */
-	public void testJDIMethodByName() {
-		assertTrue("1", fType.methodsByName("main").size() == 1);
-	}
-	/**
-	 * Test JDI methodByNameAndSignature
-	 */
-	public void testJDIMethodByNameAndSignature() {
-		assertTrue("1", fType.methodsByName("printAndSignal", "()V").size() == 1);
-	}
-	/**
-	 * Test JDI methods().
-	 */
-	public void testJDIMethods() {
-		boolean found = false;
-		Iterator it = fType.methods().iterator();
-		while (it.hasNext()) {
-			Method mth = (Method) it.next();
-			if (mth.name().equals("printAndSignal"))
-				found = true;
-		}
-		assertTrue("1", found);
-	}
-	/**
-	 * Test JDI newInstance(ThreadReference, Method, Value[]).
-	 */
-	public void testJDINewInstance() {
-		// Make sure the entire VM is not suspended before we start a new thread
-		// (otherwise this new thread will start suspended and we will never get the
-		// ThreadStart event)
-		fVM.resume();
-
-		ThreadStartEvent event =
-			(ThreadStartEvent) triggerAndWait(fVM
-				.eventRequestManager()
-				.createThreadStartRequest(),
-				"ThreadStartEvent",
-				false);
-		ThreadReference thread = event.thread();
-		Method constructor =
-			(Method) fType
-				.methodsByName("<init>", "(ILjava/lang/Object;Ljava/lang/Object;)V")
-				.get(0);
-		ObjectReference result = null;
-		ArrayList arguments = new ArrayList();
-		arguments.add(fVM.mirrorOf(0));
-		arguments.add(fVM.allThreads().get(0));
-		arguments.add(null);
-
-		try {
-			result = fType.newInstance(thread, constructor, arguments, 0);
-		} catch (IncompatibleThreadStateException e) {
-			assertTrue("1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("2", false);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("3", false);
-		} catch (InvocationException e) {
-			assertTrue("4", false);
-		}
-		assertTrue("5", result != null);
-		assertTrue("6", result.referenceType().equals(fType));
-		waitUntilReady();
-	}
-	/**
-	 * Test JDI setValue(Field,Value) and JDWP 'Class - Set Fields Values'.
-	 */
-	public void testJDISetValue() {
-
-		// Get static field "fInt"
-		Field field = fType.fieldByName("fInt");
-		assertTrue("1", field != null);
-		assertTrue("2", field.isStatic());
-
-		// Remember old value
-		Value oldValue = fType.getValue(field);
-
-		// Set to new value
-		Value newValue = fVM.mirrorOf(1234);
-		try {
-			fType.setValue(field, newValue);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("3.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("3.2", false);
-		}
-
-		// Ensure the value as been set
-		assertEquals("4", fType.getValue(field), newValue);
-
-		// Cleanup
-		try {
-			fType.setValue(field, oldValue);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("5.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("5.2", false);
-		}
-
-		// Get static field "fString" to test if it can be set to null.
-		field = fType.fieldByName("fString");
-		assertTrue("6", field != null);
-		assertTrue("7", field.isStatic());
-
-		// Remember old value
-		oldValue = fType.getValue(field);
-
-		// Set to new value
-		newValue = null;
-		try {
-			fType.setValue(field, newValue);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("8.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("8.2", false);
-		}
-
-		// Ensure the value as been set
-		assertEquals("9", fType.getValue(field), newValue);
-
-		// Cleanup
-		try {
-			fType.setValue(field, oldValue);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("10.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("10.2", false);
-		}
-	}
-	/**
-	 * Test JDI subclasses().
-	 */
-	public void testJDISubclasses() {
-		List subclasses = fType.subclasses();
-		assertEquals("1", 1, subclasses.size());
-		Iterator iterator = subclasses.iterator();
-		while (iterator.hasNext()) {
-			ClassType sub = (ClassType) iterator.next();
-			assertEquals("2 " + sub.name(), fType, sub.superclass());
-		}
-	}
-	/**
-	 * Test JDI superclass() and JDWP 'Class - Get superclass'.
-	 */
-	public void testJDISuperclass() {
-		ClassType superclass = fType.superclass();
-		assertEquals("1", "java.util.Date", superclass.name());
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassesByNameTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassesByNameTest.java
deleted file mode 100644
index 830e67c..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassesByNameTest.java
+++ /dev/null
@@ -1,99 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.List;
-
-import com.sun.jdi.Type;
-
-/**
- * Tests for JDI com.sun.jdi.VirtualMachine.classesByName
- */
-public class ClassesByNameTest extends AbstractJDITest {
-
-	/**
-	 * Creates a new test.
-	 */
-	public ClassesByNameTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ClassesByNameTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.VirtualMachine.classesByName";
-	}
-	/**
-	 * Test that there is a class object for 'int[]'
-	 */
-	public void testJDIIntArray() {
-		List classes = fVM.classesByName("int[]");
-		assertTrue(
-			"Should be a class for int[]",
-			classes.size() == 1
-				&& ((Type) classes.get(0)).signature().equals("[I"));
-	}
-	/**
-	 * Test that there is a class object for 'int[][]'
-	 */
-	public void testJDIIntDoubleArray() {
-		List classes = fVM.classesByName("int[][]");
-		assertTrue(
-			"Should be a class for int[][]",
-			classes.size() == 1
-				&& ((Type) classes.get(0)).signature().equals("[[I"));
-	}
-	public void testJDILongArray() {
-		List classes = fVM.classesByName("long[]");
-		assertTrue(
-			"Should be a class for long[]",
-			classes.size() == 1
-				&& ((Type) classes.get(0)).signature().equals("[J"));
-	}
-	public void testJDILongDoubleArray() {
-		List classes = fVM.classesByName("long[][]");
-		assertTrue(
-			"Should be a class for long[][]",
-			classes.size() == 1
-				&& ((Type) classes.get(0)).signature().equals("[[J"));
-	}
-	/**
-	 * Test that there is a class object for 'java.lang.String[]'
-	 */
-	public void testJDIStringArray() {
-		List classes = fVM.classesByName("java.lang.String[]");
-		assertTrue(
-			"Should be a class for java.lang.String[]",
-			classes.size() == 1
-				&& ((Type) classes.get(0)).signature().equals(
-					"[Ljava/lang/String;"));
-	}
-	/**
-	 * Test that there is a class object for 'java.lang.String'
-	 */
-	public void testJDIString() {
-		List classes = fVM.classesByName("java.lang.String");
-		assertTrue(
-			"Should be a class for java.lang.String",
-			classes.size() == 1
-				&& ((Type) classes.get(0)).signature().equals(
-					"Ljava/lang/String;"));
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/DoubleValueTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/DoubleValueTest.java
deleted file mode 100644
index 67414f2..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/DoubleValueTest.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.DoubleValue;
-
-/**
- * Tests for JDI com.sun.jdi.DoubleValue.
- */
-public class DoubleValueTest extends AbstractJDITest {
-
-	private DoubleValue fValue;
-	/**
-	 * Creates a new test.
-	 */
-	public DoubleValueTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get double value for 12345.6789
-		fValue = fVM.mirrorOf(12345.6789);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new DoubleValueTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.DoubleValue";
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fValue.equals(fVM.mirrorOf(12345.6789)));
-		assertTrue("2", !fValue.equals(fVM.mirrorOf(98765.4321)));
-		assertTrue("3", !fValue.equals(new Object()));
-		assertTrue("4", !fValue.equals(null));
-		assertEquals(
-			"5",
-			fValue.hashCode(),
-			fVM.mirrorOf(12345.6789).hashCode());
-		assertTrue("6", fValue.hashCode() != fVM.mirrorOf(98765.4321).hashCode());
-	}
-	/**
-	 * Test JDI value().
-	 */
-	public void testJDIValue() {
-		assertTrue("1", 12345.6789 == fValue.value());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventListener.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventListener.java
deleted file mode 100644
index b043816..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventListener.java
+++ /dev/null
@@ -1,86 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.event.AccessWatchpointEvent;
-import com.sun.jdi.event.BreakpointEvent;
-import com.sun.jdi.event.ClassPrepareEvent;
-import com.sun.jdi.event.ClassUnloadEvent;
-import com.sun.jdi.event.ExceptionEvent;
-import com.sun.jdi.event.MethodEntryEvent;
-import com.sun.jdi.event.MethodExitEvent;
-import com.sun.jdi.event.ModificationWatchpointEvent;
-import com.sun.jdi.event.StepEvent;
-import com.sun.jdi.event.ThreadDeathEvent;
-import com.sun.jdi.event.ThreadStartEvent;
-import com.sun.jdi.event.VMDeathEvent;
-import com.sun.jdi.event.VMDisconnectEvent;
-
-/**
- * An event listener that handles all kinds of event coming from the VM.
- */
-
-public interface EventListener {
-	/**
-	 * Handles an access watchpoint event.
-	 * Returns whether the VM should be resumed if it was interrupted.
-	 */
-	public boolean accessWatchpoint(AccessWatchpointEvent event);
-	/**
-	 * Handles a breakpoint event.
-	 * Returns whether the VM should be resumed if it was interrupted.
-	 */
-	public boolean breakpoint(BreakpointEvent event);
-	/**
-	 * Handles a class prepare event.
-	 * Returns whether the VM should be resumed if it was interrupted.
-	 */
-	public boolean classPrepare(ClassPrepareEvent event);
-	/**
-	 * Handles a class unload event.
-	 * Returns whether the VM should be resumed if it was interrupted.
-	 */
-	public boolean classUnload(ClassUnloadEvent event);
-	/**
-	 * Handles an exception event.
-	 * Returns whether the VM should be resumed if it was interrupted.
-	 */
-	public boolean exception(ExceptionEvent event);
-	public boolean methodEntry(MethodEntryEvent event);
-	public boolean methodExit(MethodExitEvent event);
-	/**
-	 * Handles a modification watchpoint event.
-	 * Returns whether the VM should be resumed if it was interrupted.
-	 */
-	public boolean modificationWatchpoint(ModificationWatchpointEvent event);
-	/**
-	 * Handles a step event.
-	 * Returns whether the VM should be resumed if it was interrupted.
-	 */
-	public boolean step(StepEvent event);
-	/**
-	 * Handles a thread death event.
-	 * Returns whether the VM should be resumed if it was interrupted.
-	 */
-	public boolean threadDeath(ThreadDeathEvent event);
-	/**
-	 * Handles a thread start event.
-	 * Returns whether the VM should be resumed if it was interrupted.
-	 */
-	public boolean threadStart(ThreadStartEvent event);
-	/**
-	 * Handles a vm death event.
-	 * Returns whether the VM should be resumed if it was interrupted.
-	 */
-	public boolean vmDeath(VMDeathEvent event);
-	/**
-	 * Handles a vm disconnect event.
-	 * Returns whether the VM should be resumed if it was interrupted.
-	 */
-	public boolean vmDisconnect(VMDisconnectEvent event);
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventReader.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventReader.java
deleted file mode 100644
index d1b5ee3..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventReader.java
+++ /dev/null
@@ -1,136 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.Vector;
-
-import com.sun.jdi.VMDisconnectedException;
-import com.sun.jdi.event.AccessWatchpointEvent;
-import com.sun.jdi.event.BreakpointEvent;
-import com.sun.jdi.event.ClassPrepareEvent;
-import com.sun.jdi.event.ClassUnloadEvent;
-import com.sun.jdi.event.Event;
-import com.sun.jdi.event.EventIterator;
-import com.sun.jdi.event.EventQueue;
-import com.sun.jdi.event.EventSet;
-import com.sun.jdi.event.ExceptionEvent;
-import com.sun.jdi.event.MethodEntryEvent;
-import com.sun.jdi.event.MethodExitEvent;
-import com.sun.jdi.event.ModificationWatchpointEvent;
-import com.sun.jdi.event.StepEvent;
-import com.sun.jdi.event.ThreadDeathEvent;
-import com.sun.jdi.event.ThreadStartEvent;
-import com.sun.jdi.event.VMDeathEvent;
-import com.sun.jdi.event.VMDisconnectEvent;
-import com.sun.jdi.request.EventRequest;
-
-/**
- * An event reader that continuously reads events coming from the VM
- * and dispatch them to the registered listeners.
- */
-
-public class EventReader extends AbstractReader {
-	private EventQueue fEventQueue;
-	private Vector fEventListeners = new Vector(); // A Vector of EventListener
-	/*
-	 * Creates a new event reader that will read from the given event queue.
-	 */
-	public EventReader(String name, EventQueue queue) {
-		super(name);
-		fEventQueue = queue;
-	}
-	/*
-	 * Registers the given event listener.
-	 */
-	public synchronized void addEventListener(EventListener listener) {
-		fEventListeners.addElement(listener);
-	}
-	/**
-	 * Dispatches the given event to the given listener.
-	 * Returns whether the VM should be resumed.
-	 */
-	private boolean dispath(Event event, EventListener listener) {
-		if (event instanceof AccessWatchpointEvent)
-			return listener.accessWatchpoint((AccessWatchpointEvent) event);
-		if (event instanceof BreakpointEvent)
-			return listener.breakpoint((BreakpointEvent) event);
-		if (event instanceof ClassPrepareEvent)
-			return listener.classPrepare((ClassPrepareEvent) event);
-		if (event instanceof ClassUnloadEvent)
-			return listener.classUnload((ClassUnloadEvent) event);
-		if (event instanceof ExceptionEvent)
-			return listener.exception((ExceptionEvent) event);
-		if (event instanceof MethodEntryEvent)
-			return listener.methodEntry((MethodEntryEvent) event);
-		if (event instanceof MethodExitEvent)
-			return listener.methodExit((MethodExitEvent) event);
-		if (event instanceof ModificationWatchpointEvent)
-			return listener.modificationWatchpoint(
-				(ModificationWatchpointEvent) event);
-		if (event instanceof StepEvent)
-			return listener.step((StepEvent) event);
-		if (event instanceof ThreadDeathEvent)
-			return listener.threadDeath((ThreadDeathEvent) event);
-		if (event instanceof ThreadStartEvent)
-			return listener.threadStart((ThreadStartEvent) event);
-		if (event instanceof VMDisconnectEvent)
-			return listener.vmDisconnect((VMDisconnectEvent) event);
-		if (event instanceof VMDeathEvent)
-			return listener.vmDeath((VMDeathEvent) event);
-		return true;
-	}
-	/**
-	 * Continuously reads events that are coming from the event queue.
-	 */
-	protected void readerLoop() {
-		while (!fIsStopping) {
-			try {
-				if (!fIsStopping) {
-					// Get the next event
-					EventSet eventSet = fEventQueue.remove();
-
-					// Dispatch the events
-					boolean shouldGo = true;
-					EventIterator iterator = eventSet.eventIterator();
-					while (iterator.hasNext()) {
-						Event event = iterator.nextEvent();
-						for (int i = 0; i < fEventListeners.size(); i++) {
-							EventListener listener =
-								(EventListener) fEventListeners.elementAt(i);
-							shouldGo = shouldGo & dispath(event, listener);
-						}
-						if (event instanceof VMDeathEvent)
-							stop();
-					}
-
-					// Let the VM go if it was interrupted
-					if ((!fIsStopping)
-						&& (eventSet != null)
-						&& (eventSet.suspendPolicy() == EventRequest.SUSPEND_ALL)
-						&& shouldGo)
-						synchronized (this) {
-							fEventQueue.virtualMachine().resume();
-						}
-				}
-			} catch (InterruptedException e) {
-				if (!fIsStopping) {
-					System.out.println("Event reader loop was interrupted");
-					return;
-				}
-			} catch (VMDisconnectedException e) {
-				return;
-			}
-		}
-	}
-	/*
-	 * De-registers the given event listener.
-	 */
-	public synchronized void removeEventListener(EventListener listener) {
-		fEventListeners.removeElement(listener);
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestManagerTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestManagerTest.java
deleted file mode 100644
index f88ea1f..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestManagerTest.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestTest.java
deleted file mode 100644
index d94dadb..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestTest.java
+++ /dev/null
@@ -1,130 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.LinkedList;
-import java.util.List;
-
-import com.sun.jdi.request.EventRequest;
-import com.sun.jdi.request.StepRequest;
-
-/**
- * Tests for JDI com.sun.jdi.request.EventRequest.
- */
-public class EventRequestTest extends AbstractJDITest {
-
-	private List fRequests = new LinkedList();
-	/**
-	 * Creates a new test.
-	 */
-	public EventRequestTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get all kinds of request
-		if (fVM.canWatchFieldAccess())
-			fRequests.add(getAccessWatchpointRequest());
-		fRequests.add(getBreakpointRequest());
-		fRequests.add(fVM.eventRequestManager().createClassPrepareRequest());
-		fRequests.add(fVM.eventRequestManager().createClassUnloadRequest());
-		fRequests.add(getExceptionRequest());
-		if (fVM.canWatchFieldModification())
-			fRequests.add(getModificationWatchpointRequest());
-		fRequests.add(
-			fVM.eventRequestManager().createStepRequest(
-				getThread(),
-				StepRequest.STEP_LINE,
-				StepRequest.STEP_OVER));
-		fRequests.add(fVM.eventRequestManager().createThreadDeathRequest());
-		fRequests.add(fVM.eventRequestManager().createThreadStartRequest());
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// Delete the requests we created in this test
-		fVM.eventRequestManager().deleteEventRequests(fRequests);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new EventRequestTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.request.EventRequest";
-	}
-	/**
-	 * Test JDI disable(), enable(), isEnable() and setEnable(boolean).
-	 */
-	public void testJDIEnable() {
-		for (int i = 0; i < fRequests.size(); i++) {
-			EventRequest request = (EventRequest) fRequests.get(i);
-			assertTrue("1." + i, !request.isEnabled());
-			request.setEnabled(true);
-			assertTrue("2." + i, request.isEnabled());
-			request.setEnabled(false);
-			assertTrue("3." + i, !request.isEnabled());
-			request.enable();
-			assertTrue("4." + i, request.isEnabled());
-			request.disable();
-			assertTrue("5." + i, !request.isEnabled());
-		}
-	}
-	/**
-	 * Test JDI setSuspendPolicy(int) and suspendPolicy().
-	 */
-	public void testJDISuspendPolicy() {
-		int policy = EventRequest.SUSPEND_EVENT_THREAD;
-		for (int i = 0; i < fRequests.size(); i++) {
-			EventRequest request = (EventRequest) fRequests.get(i);
-			request.setSuspendPolicy(policy);
-		}
-		for (int i = 0; i < fRequests.size(); i++) {
-			EventRequest request = (EventRequest) fRequests.get(i);
-			assertTrue(String.valueOf(i), request.suspendPolicy() == policy);
-		}
-	}
-	/**
-	 * Test JDI putProperty and getProperty.
-	 */
-	public void testJDIProperties() {
-		EventRequest request = (EventRequest) fRequests.get(0);
-		request.putProperty(new Integer(0), "prop1");
-		String prop = (String) request.getProperty(new Integer(0));
-		assertTrue("1", prop.equals("prop1"));
-
-		request.putProperty(new Integer(0), null);
-		prop = (String) request.getProperty(new Integer(0));
-		assertTrue("2", prop == null);
-
-		request.putProperty(new Integer(0), "prop2");
-		request.putProperty(new Integer(0), "prop3");
-		prop = (String) request.getProperty(new Integer(0));
-		assertTrue("3", prop.equals("prop3"));
-
-		request.putProperty(new Integer(0), null);
-		prop = (String) request.getProperty(new Integer(0));
-		assertTrue("4", prop == null);
-
-		request.putProperty(new Integer(1), null);
-		prop = (String) request.getProperty(new Integer(1));
-		assertTrue("5", prop == null);
-
-		request.putProperty(new Integer(1), "prop1");
-		prop = (String) request.getProperty(new Integer(1));
-		assertTrue("6", prop.equals("prop1"));
-
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventTest.java
deleted file mode 100644
index b64b88b..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventTest.java
+++ /dev/null
@@ -1,119 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.LinkedList;
-
-import com.sun.jdi.event.Event;
-import com.sun.jdi.request.EventRequest;
-
-/**
- * Tests for JDI com.sun.jdi.event.Event.
- */
-public class EventTest extends AbstractJDITest {
-	private HashMap fAllEvents = new HashMap();
-	/**
-	 * Creates a new test.
-	 */
-	public EventTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// All events...
-
-		EventRequest request;
-
-		// AccessWatchpointEvent
-		if (fVM.canWatchFieldAccess()) {
-			request = getAccessWatchpointRequest();
-			fAllEvents.put(
-				request,
-				triggerAndWait(request, "AccessWatchpointEvent", true));
-		}
-
-		// BreakpointEvent
-		request = getBreakpointRequest();
-		fAllEvents.put(
-			request,
-			triggerAndWait(request, "BreakpointEvent", true));
-
-		// ClassPrepareEvent
-		// TO DO
-
-		// ClassUnloadEvent
-		// TO DO
-
-		// ExceptionEvent
-		// TO DO
-
-		// ModificationWatchpointEvent
-		if (fVM.canWatchFieldModification()) {
-			request = getModificationWatchpointRequest();
-			fAllEvents.put(
-				request,
-				triggerAndWait(request, "ModificationWatchpointEvent", true));
-		}
-
-		// StepEvent
-		// TO DO
-
-		// ThreadEndEvent
-		// TO DO
-
-		// ThreadStartEvent
-		// TO DO
-
-		// VMDeathEvent
-		// TO DO?
-
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// Ensure that the modification of the "fBool" field has completed
-		fVM.resume();
-		waitUntilReady();
-
-		// Remove the requests
-		fVM.eventRequestManager().deleteEventRequests(
-			new LinkedList(fAllEvents.keySet()));
-
-		// Set the value of the "fBool" field back to its original value
-		resetField();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new EventTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.event.Event";
-	}
-	/**
-	 * Test JDI request().
-	 */
-	public void testJDIRequest() {
-		Iterator iterator = fAllEvents.keySet().iterator();
-		while (iterator.hasNext()) {
-			EventRequest request = (EventRequest) iterator.next();
-			Event event = (Event) fAllEvents.get(request);
-
-			assertEquals(event.toString(), request, event.request());
-		}
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventWaiter.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventWaiter.java
deleted file mode 100644
index 8a0d691..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventWaiter.java
+++ /dev/null
@@ -1,125 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.event.AccessWatchpointEvent;
-import com.sun.jdi.event.BreakpointEvent;
-import com.sun.jdi.event.ClassPrepareEvent;
-import com.sun.jdi.event.ClassUnloadEvent;
-import com.sun.jdi.event.Event;
-import com.sun.jdi.event.ExceptionEvent;
-import com.sun.jdi.event.MethodEntryEvent;
-import com.sun.jdi.event.MethodExitEvent;
-import com.sun.jdi.event.ModificationWatchpointEvent;
-import com.sun.jdi.event.StepEvent;
-import com.sun.jdi.event.ThreadDeathEvent;
-import com.sun.jdi.event.ThreadStartEvent;
-import com.sun.jdi.event.VMDeathEvent;
-import com.sun.jdi.event.VMDisconnectEvent;
-import com.sun.jdi.request.EventRequest;
-
-/**
- * Listen for a specific kind of event.
- */
-public class EventWaiter implements EventListener {
-	protected EventRequest fRequest;
-	protected boolean fShouldGo;
-	protected Event fEvent;
-	/**
-	 * Creates a new EventWaiter for the given request. Sets whether it
-	 * should let the VM go after it got the event.
-	 */
-	public EventWaiter(EventRequest request, boolean shouldGo) {
-		fRequest = request;
-		fShouldGo = shouldGo;
-	}
-	public boolean accessWatchpoint(AccessWatchpointEvent event) {
-		return handleEvent(event);
-	}
-	public boolean methodEntry(MethodEntryEvent event) {
-		return handleEvent(event);
-	}
-	public boolean methodExit(MethodExitEvent event) {
-		return handleEvent(event);
-	}
-	public boolean breakpoint(BreakpointEvent event) {
-		return handleEvent(event);
-	}
-	public boolean classPrepare(ClassPrepareEvent event) {
-		return handleEvent(event);
-	}
-	public boolean classUnload(ClassUnloadEvent event) {
-		return handleEvent(event);
-	}
-	public boolean exception(ExceptionEvent event) {
-		return handleEvent(event);
-	}
-	/**
-	 * Handles an incoming event.
-	 * Returns whether the VM should be resumed if it was suspended.
-	 */
-	protected boolean handleEvent(Event event) {
-		if ((event.request() != null) && (event.request().equals(fRequest))) {
-			notifyEvent(event);
-			return fShouldGo;
-		} else
-			return true;
-	}
-	public boolean modificationWatchpoint(ModificationWatchpointEvent event) {
-		return handleEvent(event);
-	}
-	/**
-	 * Notify any object that is waiting for an event.
-	 */
-	synchronized protected void notifyEvent(Event event) {
-		notify();
-		fEvent = event;
-	}
-	public boolean step(StepEvent event) {
-		return handleEvent(event);
-	}
-	public boolean threadDeath(ThreadDeathEvent event) {
-		return handleEvent(event);
-	}
-	public boolean threadStart(ThreadStartEvent event) {
-		return handleEvent(event);
-	}
-	public boolean vmDeath(VMDeathEvent event) {
-		if (fEvent == null) {
-			// This is the last event we can ever get an this was not the one we expected
-			notifyEvent(null);
-			return true;
-		}
-		return handleEvent(event);
-	}
-	public boolean vmDisconnect(VMDisconnectEvent event) {
-		return handleEvent(event);
-	}
-	/**
-	 * Waits for the first event corresponding to this waiter's request.
-	 */
-	synchronized public Event waitEvent() throws InterruptedException {
-		if (fEvent == null) // If event didn't already come in
-			wait();
-		Event result = fEvent;
-		fEvent = null;
-		return result;
-	}
-	/**
-	 * Waits for the first event corresponding to this waiter's request
-	 * for the given time (in ms). If it times out, return null.
-	 */
-	synchronized public Event waitEvent(long time)
-		throws InterruptedException {
-		if (fEvent == null) // If event didn't already come in
-			wait(time);
-		Event result = fEvent;
-		fEvent = null;
-		return result;
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ExceptionEventTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ExceptionEventTest.java
deleted file mode 100644
index 89a667a..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ExceptionEventTest.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.ReferenceType;
-import com.sun.jdi.event.ExceptionEvent;
-
-/**
- * Tests for JDI com.sun.jdi.event.ExceptionEvent.
- */
-public class ExceptionEventTest extends AbstractJDITest {
-
-	private ExceptionEvent fEvent;
-	/**
-	 * Creates a new test.
-	 */
-	public ExceptionEventTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Trigger an exception event
-		fEvent =
-			(ExceptionEvent) triggerAndWait(getExceptionRequest(),
-				"ExceptionEvent",
-				false);
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// The test has interrupted the VM, so let it go
-		fVM.resume();
-
-		// The test has resumed the test thread, so suspend it
-		waitUntilReady();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ExceptionEventTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.event.ExceptionEvent";
-	}
-	/**
-	 * Test JDI catchLocation().
-	 */
-	public void testJDICatchLocation() {
-		// Uncaught exception
-		assertTrue("1", fEvent.catchLocation() == null);
-
-		// TO DO: Caught exception
-	}
-	/**
-	 * Test JDI exception().
-	 */
-	public void testJDIException() {
-		ReferenceType expected =
-			(ReferenceType) fVM.classesByName("java.lang.Error").get(0);
-		assertEquals("1", expected, fEvent.exception().referenceType());
-	}
-	/**
-	 * Test JDI thread().
-	 */
-	public void testJDIThread() {
-		assertEquals("1", "Test Exception Event", fEvent.thread().name());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ExceptionRequestTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ExceptionRequestTest.java
deleted file mode 100644
index 4244f4b..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ExceptionRequestTest.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.request.ExceptionRequest;
-
-/**
- * Tests for JDI com.sun.jdi.request.ExceptionRequest.
- */
-public class ExceptionRequestTest extends AbstractJDITest {
-
-	private ExceptionRequest fRequest;
-	/**
-	 * Creates a new test .
-	 */
-	public ExceptionRequestTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get the exception request
-		fRequest = getExceptionRequest();
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// Delete the exception request we created in this test
-		fVM.eventRequestManager().deleteEventRequest(fRequest);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ExceptionRequestTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.request.ExceptionRequest";
-	}
-	/**
-	 * Test JDI exception().
-	 */
-	public void testJDIException() {
-		assertTrue("1", fRequest.exception() == null);
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FieldTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FieldTest.java
deleted file mode 100644
index a3e9edd..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FieldTest.java
+++ /dev/null
@@ -1,85 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.ClassNotLoadedException;
-import com.sun.jdi.Field;
-
-/**
- * Tests for JDI com.sun.jdi.Field.
- */
-public class FieldTest extends AbstractJDITest {
-
-	private Field fField;
-	/**
-	 * Creates a new test.
-	 */
-	public FieldTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get static field "fObject"
-		fField = getField();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new FieldTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.Field";
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fField.equals(fField));
-		Field other = getField("fString");
-		assertTrue("2", !fField.equals(other));
-		assertTrue("3", !fField.equals(new Object()));
-		assertTrue("4", !fField.equals(null));
-	}
-	/**
-	 * Test JDI isTransient().
-	 */
-	public void testJDIIsTransient() {
-		assertTrue("1", !fField.isTransient());
-	}
-	/**
-	 * Test JDI isVolatile().
-	 */
-	public void testJDIIsVolatile() {
-		assertTrue("1", !fField.isVolatile());
-	}
-	/**
-	 * Test JDI type().
-	 */
-	public void testJDIType() {
-		try {
-			assertEquals("1", getMainClass(), fField.type());
-		} catch (ClassNotLoadedException e) {
-			assertTrue("2", false);
-		}
-	}
-	/**
-	 * Test JDI typeName().
-	 */
-	public void testJDITypeName() {
-		assertEquals(
-			"1",
-			"org.eclipse.debug.jdi.tests.program.MainClass",
-			fField.typeName());
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FileConsoleReader.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FileConsoleReader.java
deleted file mode 100644
index b44382e..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FileConsoleReader.java
+++ /dev/null
@@ -1,57 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-
-public class FileConsoleReader extends AbstractReader {
-	private InputStream fInput;
-	private FileOutputStream fFileOutputStream;
-	/*
-	 * Creates a new console reader that will read from the given input stream.
-	 */
-	public FileConsoleReader(String name, String fileName, InputStream input) {
-		super(name);
-		fInput = input;
-		try {
-			fFileOutputStream = new FileOutputStream(new File(fileName));
-		} catch (IOException e) {
-			System.out.println("Got exception: " + e.getMessage());
-		}
-	}
-	/**
-	 * Continuously reads events that are coming from the event queue.
-	 */
-	protected void readerLoop() {
-		BufferedReader input = new BufferedReader(new InputStreamReader(fInput));
-		try {
-			int read = 0;
-			while (!fIsStopping && read != -1) {
-				read = input.read();
-				if (read != -1) {
-					fFileOutputStream.write(read);
-				}
-				fFileOutputStream.flush();
-			}
-		} catch (IOException e) {
-		}
-	}
-
-	public void stop() {
-		try {
-			fFileOutputStream.close();
-		} catch (IOException e) {
-			System.out.println("Got exception: " + e.getMessage());
-		}
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FloatValueTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FloatValueTest.java
deleted file mode 100644
index d535922..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/FloatValueTest.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.FloatValue;
-
-/**
- * Tests for JDI com.sun.jdi.FloatValue.
- */
-public class FloatValueTest extends AbstractJDITest {
-
-	private FloatValue fValue;
-	/**
-	 * Creates a new test.
-	 */
-	public FloatValueTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get float value for 123.45f
-		fValue = fVM.mirrorOf(123.45f);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new FloatValueTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.FloatType";
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fValue.equals(fVM.mirrorOf(123.45f)));
-		assertTrue("2", !fValue.equals(fVM.mirrorOf(54.321f)));
-		assertTrue("3", !fValue.equals(new Object()));
-		assertTrue("4", !fValue.equals(null));
-		assertEquals("5", fValue.hashCode(), fVM.mirrorOf(123.45f).hashCode());
-		assertTrue("6", fValue.hashCode() != fVM.mirrorOf(54.321f).hashCode());
-	}
-	/**
-	 * Test JDI value().
-	 */
-	public void testJDIValue() {
-		assertTrue("1", 123.45f == fValue.value());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/HotCodeReplacementTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/HotCodeReplacementTest.java
deleted file mode 100644
index 419f9de..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/HotCodeReplacementTest.java
+++ /dev/null
@@ -1,243 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.IncompatibleThreadStateException;
-import com.sun.jdi.Location;
-import com.sun.jdi.ReferenceType;
-import com.sun.jdi.StackFrame;
-import com.sun.jdi.ThreadReference;
-import com.sun.jdi.event.ClassPrepareEvent;
-import com.sun.jdi.event.ClassUnloadEvent;
-import com.sun.jdi.event.Event;
-import com.sun.jdi.event.StepEvent;
-import com.sun.jdi.request.ClassPrepareRequest;
-import com.sun.jdi.request.ClassUnloadRequest;
-import com.sun.jdi.request.EventRequest;
-import com.sun.jdi.request.StepRequest;
-
-/**
- * Tests for the hot code replacement JDI extension.
- */
-public class HotCodeReplacementTest extends AbstractJDITest {
-	/**
-	 * Creates a new test.
-	 */
-	public HotCodeReplacementTest() {
-		super();
-	}
-	private void dropTopFrame(
-		ThreadReference thread,
-		org.eclipse.jdi.hcr.ThreadReference hcrThread) {
-		// Get stack size
-		int stackSize = 0;
-		try {
-			stackSize = thread.frames().size();
-		} catch (IncompatibleThreadStateException e) {
-			assertTrue("dropTopFrame.1", false);
-		}
-
-		// Create and install step out request
-		StepRequest request =
-			fVM.eventRequestManager().createStepRequest(
-				thread,
-				StepRequest.STEP_MIN,
-				StepRequest.STEP_OUT);
-		request.setSuspendPolicy(EventRequest.SUSPEND_EVENT_THREAD);
-		request.enable();
-
-		// Prepare to receive the event
-		EventWaiter waiter = new EventWaiter(request, false);
-		fEventReader.addEventListener(waiter);
-
-		// Do return
-		boolean finallyBlocksSkipped = hcrThread.doReturn(null, true);
-		assertTrue("dropTopFrame.2", !finallyBlocksSkipped);
-
-		// Wait for the event to come in
-		Event event = waitForEvent(waiter, 10000); // Wait 10s max
-		assertTrue("dropTopFrame.3", event != null);
-		fEventReader.removeEventListener(waiter);
-		fVM.eventRequestManager().deleteEventRequest(request);
-
-		// Check thread has dropped top frame
-		assertTrue("dropTopFrame.4", thread.isSuspended());
-		int newStackSize = 0;
-		try {
-			newStackSize = thread.frames().size();
-		} catch (IncompatibleThreadStateException e) {
-			assertTrue("dropTopFrame.5", false);
-		}
-		assertEquals("dropTopFrame.6", stackSize - 1, newStackSize);
-	}
-	
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		waitUntilReady();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(String[] args) {
-		new HotCodeReplacementTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "Hot code replacement extension to JDI (org.eclipse.jdi.hcr) tests";
-	}
-	private void reenterOnExit(ThreadReference thread) {
-		// Get top frame's location
-		Location location = null;
-		try {
-			StackFrame frame = (StackFrame) thread.frames(0, 1).get(0);
-			location = frame.location();
-		} catch (IncompatibleThreadStateException e) {
-			assertTrue("reenterOnExit.1", false);
-		}
-
-		// Create and install reenter step request
-		org.eclipse.jdi.hcr.EventRequestManager eventRequestManager =
-			(org.eclipse.jdi.hcr.EventRequestManager) fVM.eventRequestManager();
-		org.eclipse.jdi.hcr.ReenterStepRequest request =
-			eventRequestManager.createReenterStepRequest(thread);
-		request.setSuspendPolicy(EventRequest.SUSPEND_EVENT_THREAD);
-		request.enable();
-
-		// Prepare to receive the step event
-		EventWaiter waiter = new EventWaiter(request, false);
-		fEventReader.addEventListener(waiter);
-
-		// Resume thread with a doReturn so that the frame is reentered right away
-		 ((org.eclipse.jdi.hcr.ThreadReference) thread).doReturn(null, false);
-
-		// Wait for the step event to come in
-		StepEvent event = (StepEvent) waitForEvent(waiter, 10000); // Wait 10s max
-		assertTrue("reenterOnExit.2", event != null);
-		fEventReader.removeEventListener(waiter);
-		fVM.eventRequestManager().deleteEventRequest(request);
-
-		// Check that the top frame location is as expected
-		Location newLocation = null;
-		try {
-			StackFrame frame = (StackFrame) thread.frames(0, 1).get(0);
-			newLocation = frame.location();
-		} catch (IncompatibleThreadStateException e) {
-			assertTrue("reenterOnExit.3", false);
-		}
-		assertTrue("reenterOnExit.4", !newLocation.equals(location));
-		assertTrue("reenterOnExit.5", newLocation.codeIndex() <= location.codeIndex());
-
-	}
-	private void reloadClasses() {
-		// Gets the old class
-		ReferenceType oldType = getMainClass();
-
-		// Create and install class unload and class prepare event requests
-		ClassUnloadRequest unloadRequest =
-			fVM.eventRequestManager().createClassUnloadRequest();
-		unloadRequest.setSuspendPolicy(EventRequest.SUSPEND_NONE);
-		unloadRequest.enable();
-		ClassPrepareRequest loadRequest =
-			fVM.eventRequestManager().createClassPrepareRequest();
-		loadRequest.setSuspendPolicy(EventRequest.SUSPEND_EVENT_THREAD);
-		loadRequest.enable();
-
-		// Prepare to receive the class unload event
-		EventWaiter unloadEventWaiter = new EventWaiter(unloadRequest, true);
-		fEventReader.addEventListener(unloadEventWaiter);
-
-		// Prepare to receive the class prepare event
-		EventWaiter loadEventWaiter = new EventWaiter(loadRequest, true);
-		fEventReader.addEventListener(loadEventWaiter);
-
-		// Reload classes
-		org.eclipse.jdi.hcr.VirtualMachine vm =
-			(org.eclipse.jdi.hcr.VirtualMachine) fVM;
-		int result =
-			vm.classesHaveChanged(
-				new String[] { "org.eclipse.debug.jdi.tests.program.MainClass" });
-		assertEquals("reloadClasses.1", org.eclipse.jdi.hcr.VirtualMachine.RELOAD_SUCCESS, result);
-
-		// Wait for the class unload event to come in
-		ClassUnloadEvent unloadEvent =
-			(ClassUnloadEvent) waitForEvent(unloadEventWaiter, 10000);
-		// Wait 10s max
-		assertTrue("reloadClasses.2", unloadEvent != null);
-		fEventReader.removeEventListener(unloadEventWaiter);
-		fVM.eventRequestManager().deleteEventRequest(unloadRequest);
-		assertEquals(
-			"reloadClasses.3",
-			"org.eclipse.debug.jdi.tests.program.MainClass",
-			unloadEvent.className());
-
-		// Wait for the class prepare event to come in
-		ClassPrepareEvent loadEvent =
-			(ClassPrepareEvent) waitForEvent(loadEventWaiter, 10000);
-		// Wait 10s max
-		assertTrue("reloadClasses.4", loadEvent != null);
-		fEventReader.removeEventListener(loadEventWaiter);
-		fVM.eventRequestManager().deleteEventRequest(loadRequest);
-		ReferenceType newType = loadEvent.referenceType();
-		assertEquals(
-			"reloadClasses.5",
-			"org.eclipse.debug.jdi.tests.program.MainClass",
-			newType.name());
-		assertTrue("reloadClasses.6", !oldType.equals(newType));
-	}
-	/**
-	 * Use case 1:
-	 * . get a thread and suspend it
-	 * . get hot code replacement capabilities
-	 * . drop the top a frame
-	 * . reload some classes
-	 * . request reeenter on exit
-	 * . resume thread
-	 * . get step event
-	 * . get class file version for some classes
-	 */
-	public void testJDIUseCase1() {
-		// Get the suspended thread
-		ThreadReference thread = getThread();
-		assertTrue("1", thread.isSuspended());
-		assertEquals("2", 1, thread.suspendCount());
-		org.eclipse.jdi.hcr.ThreadReference hcrThread =
-			(org.eclipse.jdi.hcr.ThreadReference) thread;
-
-		org.eclipse.jdi.hcr.VirtualMachine vm =
-			(org.eclipse.jdi.hcr.VirtualMachine) fVM;
-
-		
-		// Drop the top a frame
-		try {
-			if (vm.canDoReturn()) {
-				dropTopFrame(thread, hcrThread);
-			}
-		} catch (UnsupportedOperationException e) {
-			//not using a VM that supports the extension
-			return;
-		}
-
-		// Reload classes
-		if (vm.canReloadClasses())
-			reloadClasses();
-
-		// Reenter on exit
-		if (vm.canReenterOnExit())
-			reenterOnExit(thread);
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		waitUntilReady();
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/IntegerValueTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/IntegerValueTest.java
deleted file mode 100644
index 580564a..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/IntegerValueTest.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.IntegerValue;
-
-/**
- * Tests for JDI com.sun.jdi.IntegerValue.
- */
-public class IntegerValueTest extends AbstractJDITest {
-
-	private IntegerValue fValue;
-	/**
-	 * Creates a new test.
-	 */
-	public IntegerValueTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get int value for 12345
-		fValue = fVM.mirrorOf(12345);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new IntegerValueTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.IntegerValue";
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fValue.equals(fVM.mirrorOf(12345)));
-		assertTrue("2", !fValue.equals(fVM.mirrorOf(54321)));
-		assertTrue("3", !fValue.equals(new Object()));
-		assertTrue("4", !fValue.equals(null));
-		assertEquals("5", fValue.hashCode(), fVM.mirrorOf(12345).hashCode());
-		assertTrue("6", fValue.hashCode() != fVM.mirrorOf(54321).hashCode());
-	}
-	/**
-	 * Test JDI value().
-	 */
-	public void testJDIValue() {
-		assertTrue("1", 12345 == fValue.value());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/InterfaceTypeTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/InterfaceTypeTest.java
deleted file mode 100644
index 9608a64..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/InterfaceTypeTest.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.Iterator;
-import java.util.List;
-
-import com.sun.jdi.ClassType;
-import com.sun.jdi.InterfaceType;
-import com.sun.jdi.Method;
-
-/**
- * Tests for JDI com.sun.jdi.InterfaceType
- * and JDWP Interface command set.
- */
-public class InterfaceTypeTest extends AbstractJDITest {
-
-	private InterfaceType fType;
-	/**
-	 * Creates a new test.
-	 */
-	public InterfaceTypeTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get interface type "org.eclipse.debug.jdi.tests.program.Printable"
-		fType = getInterfaceType();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new InterfaceTypeTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.InterfaceType";
-	}
-	/**
-	 * Test JDI allFields().
-	 */
-	public void testJDIAllFields() {
-		assertEquals("1", 1, fType.allFields().size());
-	}
-	/**
-	 * Test JDI allMethods().
-	 */
-	public void testJDIAllMethods() {
-		boolean found = false;
-		Iterator it = fType.allMethods().iterator();
-		while (it.hasNext()) {
-			Method mth = (Method) it.next();
-			if (mth.name().equals("print")) {
-				found = true;
-			}
-		}
-		assertTrue("1", fType.allMethods().size() == 1);
-		assertTrue("2", found);
-	}
-	/**
-	 * Test JDI implementors().
-	 */
-	public void testJDIImplementors() {
-		List implementors = fType.implementors();
-		assertEquals("1", 1, implementors.size());
-		ClassType implementor = (ClassType) implementors.get(0);
-		assertEquals("2", getMainClass(), implementor);
-	}
-	/**
-	 * Test JDI subinterfaces().
-	 */
-	public void testJDISubinterfaces() {
-		List subinterfaces = fType.subinterfaces();
-		assertEquals("1", 0, subinterfaces.size());
-	}
-	/**
-	 * Test JDI superinterfaces().
-	 */
-	public void testJDISuperinterfaces() {
-		List superinterfaces = fType.superinterfaces();
-		assertEquals("1", 1, superinterfaces.size());
-		InterfaceType superinterface = (InterfaceType) superinterfaces.get(0);
-		InterfaceType expected =
-			(InterfaceType) fVM.classesByName("java.lang.Cloneable").get(0);
-		assertEquals("2", expected, superinterface);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/JDITestCase.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/JDITestCase.java
deleted file mode 100644
index dc29b4b..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/JDITestCase.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.lang.reflect.Method;
-import junit.framework.TestCase;
-
-/**
- * Wrapper to be able to use the JDI tests in a test suite without
- * starting and shuting down the VM after each test.
- */
-public class JDITestCase extends TestCase {
-	private AbstractJDITest fTest;
-	/**
-	 * Creates a new test for the given JDI test.
-	 */
-	public JDITestCase(AbstractJDITest test, String name) {
-		super(name);
-		fTest = test;
-	}
-	/**
-	 * Override to run the test and assert its state.
-	 * @exception Throwable if any exception is thrown
-	 */
-	protected void runTest() throws Throwable {
-		Method runMethod = null;
-		try {
-			runMethod = fTest.getClass().getMethod(getName(), new Class[0]);
-		} catch (NoSuchMethodException e) {
-			e.fillInStackTrace();
-			throw e;
-		}
-		try {
-			fTest.verbose("Running " + getName());
-			runMethod.invoke(fTest, new Class[0]);
-		} catch (java.lang.reflect.InvocationTargetException e) {
-			if (e.getTargetException() instanceof NotYetImplementedException)
-				System.out.println("\n" + getName() + " is not yet implemented.");
-			else {
-				e.fillInStackTrace();
-				throw e.getTargetException();
-			}
-		} catch (IllegalAccessException e) {
-			e.fillInStackTrace();
-			throw e;
-		}
-	}
-	/**
-	 * Init tests
-	 */
-	protected void setUp() {
-		// Ignore setUp since it is done once for all tests in the test suite
-	}
-	/**
-	 * Tears down the fixture.
-	 */
-	protected void tearDown() {
-		// Ignore tearDown since it is done once for all tests in the test suite
-	}
-	/**
-	 * Returns a string representation of the test case
-	 */
-	public String toString() {
-		return fTest.getClass().getName() + "." + getName() + "()";
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/JDITestSuite.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/JDITestSuite.java
deleted file mode 100644
index 245d8b8..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/JDITestSuite.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import junit.framework.TestResult;
-import junit.framework.TestSuite;
-
-/**
- * A JDI test suite runs all tests defined in a JDI test case class.
- * It runs the setUp method once before running the tests and the
- * tearDown method once after.
- */
-public class JDITestSuite extends TestSuite {
-	private AbstractJDITest fTest;
-	/**
-	 * Creates a new test suite for the given JDI test.
-	 */
-	public JDITestSuite(AbstractJDITest test) {
-		super();
-		fTest = test;
-	}
-	/**
-	 * Runs the tests and collects their result in a TestResult.
-	 */
-	public void run(TestResult result) {
-		fTest.setUp();
-		super.run(result);
-		fTest.tearDown();
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocalVariableTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocalVariableTest.java
deleted file mode 100644
index 72d5701..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocalVariableTest.java
+++ /dev/null
@@ -1,115 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.AbsentInformationException;
-import com.sun.jdi.ClassNotLoadedException;
-import com.sun.jdi.LocalVariable;
-
-/**
- * Tests for JDI com.sun.jdi.LocalVariable.
- */
-public class LocalVariableTest extends AbstractJDITest {
-
-	private LocalVariable fVar;
-	/**
-	 * Creates a new test.
-	 */
-	public LocalVariableTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Wait for the program to be ready
-		waitUntilReady();
-
-		// Get local variable "t" in the frame running MainClass.run()
-		fVar = getLocalVariable();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new LocalVariableTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.LocalVariable";
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fVar.equals(fVar));
-		LocalVariable other = null;
-		try {
-			other = getFrame(RUN_FRAME_OFFSET).visibleVariableByName("o");
-		} catch (AbsentInformationException e) {
-			assertTrue("2", false);
-		}
-		assertTrue("3", !fVar.equals(other));
-		assertTrue("4", !fVar.equals(new Object()));
-		assertTrue("5", !fVar.equals(null));
-		assertTrue("6", fVar.hashCode() != other.hashCode());
-	}
-	/**
-	 * Test JDI isArgument().
-	 */
-	public void testJDIIsArgument() {
-		assertTrue("1", !fVar.isArgument());
-	}
-	/**
-	 * Test JDI isVisible(StackFrame).
-	 */
-	public void testJDIIsVisible() {
-		assertTrue("1", fVar.isVisible(getFrame(RUN_FRAME_OFFSET)));
-
-		boolean gotException = false;
-		try {
-			fVar.isVisible(getFrame(0));
-		} catch (IllegalArgumentException e) {
-			gotException = true;
-		}
-		assertTrue("2", gotException);
-	}
-	/**
-	 * Test JDI name().
-	 */
-	public void testJDIName() {
-		assertEquals("1", "t", fVar.name());
-	}
-	/**
-	 * Test JDI signature().
-	 */
-	public void testJDISignature() {
-		assertEquals("1", "Ljava/lang/Thread;", fVar.signature());
-	}
-	/**
-	 * Test JDI type().
-	 */
-	public void testJDIType() {
-		try {
-			assertEquals(
-				"1",
-				fVM.classesByName("java.lang.Thread").get(0),
-				fVar.type());
-		} catch (ClassNotLoadedException e) {
-			assertTrue("2", false);
-		}
-	}
-	/**
-	 * Test JDI typeName().
-	 */
-	public void testJDITypeName() {
-		assertEquals("1", "java.lang.Thread", fVar.typeName());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocatableTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocatableTest.java
deleted file mode 100644
index 9cc5390..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocatableTest.java
+++ /dev/null
@@ -1,126 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.LinkedList;
-import java.util.List;
-import java.util.ListIterator;
-
-import com.sun.jdi.AbsentInformationException;
-import com.sun.jdi.Locatable;
-import com.sun.jdi.Location;
-import com.sun.jdi.request.AccessWatchpointRequest;
-import com.sun.jdi.request.BreakpointRequest;
-import com.sun.jdi.request.ModificationWatchpointRequest;
-
-/**
- * Tests for JDI com.sun.jdi.Locatable.
- */
-public class LocatableTest extends AbstractJDITest {
-
-	private List fLocatables = new LinkedList();
-	private List fRequests = new LinkedList();
-	/**
-	 * Creates a new test.
-	 */
-	public LocatableTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get all kinds of locatable
-
-		BreakpointRequest bp = getBreakpointRequest();
-		fLocatables.add(bp); // BreakpointRequest
-
-		//ExceptionRequest er = getExceptionRequest();
-		//fLocatables.add(triggerAndWait(er, 'e')); // ExceptionEvent
-
-		fLocatables.add(getMethod()); // Method
-
-		fLocatables.add(triggerStepAndWait()); // StepEvent
-
-		fRequests.add(bp);
-		fLocatables.add(triggerAndWait(bp, "BreakpointEvent", true));
-		// BreakpointEvent
-
-		if (fVM.canWatchFieldAccess()) {
-			AccessWatchpointRequest ap = getAccessWatchpointRequest();
-			fRequests.add(ap);
-			fLocatables.add(triggerAndWait(ap, "AccessWatchpointEvent", true));
-			// AccessWatchpointEvent
-		}
-
-		if (fVM.canWatchFieldModification()) {
-			ModificationWatchpointRequest mp =
-				getModificationWatchpointRequest();
-			fRequests.add(mp);
-			fLocatables.add(
-				triggerAndWait(mp, "ModificationWatchpointEvent", false));
-			// ModificationWatchpointEvent
-		}
-
-		// Note we can use the stack frame only if the thread is suspended,
-		// that's why the previoue triggerAndWait doesn't resume the thread
-		// and this Locatable is added last in the list
-		fLocatables.add(getFrame(RUN_FRAME_OFFSET)); // StackFrame
-
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// Ensure that the modification of the "fBool" field has completed
-		fVM.resume();
-		waitUntilReady();
-
-		// Delete the event requests we created in this test
-		fVM.eventRequestManager().deleteEventRequests(fRequests);
-
-		// Set the value of the "fBool" field back to its original value
-		resetField();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new LocatableTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.Locatable";
-	}
-	/**
-	 * Test JDI location()
-	 */
-	public void testJDILocation() {
-		ListIterator iterator = fLocatables.listIterator();
-		while (iterator.hasNext()) {
-			Locatable locatable = (Locatable) iterator.next();
-			Location location = locatable.location();
-			assertTrue("1." + locatable, location != null);
-			assertTrue(
-				"2." + locatable,
-				(location.codeIndex()) >= 0 || (location.codeIndex() == -1));
-			assertTrue("3." + locatable, location.declaringType() != null);
-			assertTrue(
-				"4." + locatable,
-				(location.lineNumber() > 0) || (location.lineNumber() == -1));
-			assertNotNull("5", location.method());
-			try {
-				location.sourceName();
-			} catch (AbsentInformationException e) {
-				assertTrue("7", false);
-			}
-		}
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocationTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocationTest.java
deleted file mode 100644
index 58b7c91..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocationTest.java
+++ /dev/null
@@ -1,102 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.AbsentInformationException;
-import com.sun.jdi.Location;
-import com.sun.jdi.Method;
-import com.sun.jdi.ReferenceType;
-
-/**
- * Tests for JDI com.sun.jdi.Location.
- */
-public class LocationTest extends AbstractJDITest {
-
-	private Location fLocation;
-	/**
-	 * Creates a new test.
-	 */
-	public LocationTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Ensure we're in a good state
-		fVM.resume();
-		waitUntilReady();
-
-		// Get the location of the stack frame running the method MainClass.run()
-		fLocation = getLocation();
-
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new LocationTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.Location";
-	}
-	/**
-	 * Test JDI codeIndex().
-	 */
-	public void testJDICodeIndex() {
-		fLocation.codeIndex();
-	}
-	/**
-	 * Test JDI declaringType().
-	 */
-	public void testJDIDeclaringType() {
-		ReferenceType expected = getMainClass();
-		ReferenceType declaringType = fLocation.declaringType();
-		assertEquals("1", expected.name(), declaringType.name());
-		// Use name to work around a pb in Sun's VM
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fLocation.equals(fLocation));
-		Location other = getFrame(0).location();
-		assertTrue("2", !fLocation.equals(other));
-		assertTrue("3", !fLocation.equals(new Object()));
-		assertTrue("4", !fLocation.equals(null));
-		assertTrue("5", fLocation.hashCode() != other.hashCode());
-	}
-	/**
-	 * Test JDI lineNumber().
-	 */
-	public void testJDILineNumber() {
-		assertEquals("1", 110, fLocation.lineNumber());
-	}
-	/**
-	 * Test JDI method().
-	 */
-	public void testJDIMethod() {
-		Method method = fLocation.method();
-		assertEquals("1", "print", method.name());
-	}
-	/**
-	 * Test JDI sourceName().
-	 */
-	public void testJDISourceName() {
-		String sourceName = null;
-		try {
-			sourceName = fLocation.sourceName();
-		} catch (AbsentInformationException e) {
-			assertTrue("1", false);
-		}
-		assertEquals("2", "MainClass.java", sourceName);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LongValueTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LongValueTest.java
deleted file mode 100644
index ec3e443..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LongValueTest.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.LongValue;
-
-/**
- * Tests for JDI com.sun.jdi.LongValue.
- */
-public class LongValueTest extends AbstractJDITest {
-
-	private LongValue fValue;
-	/**
-	 * Creates a new test.
-	 */
-	public LongValueTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get long value for 123456789l
-		fValue = fVM.mirrorOf(123456789l);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new LongValueTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.LongValue";
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fValue.equals(fVM.mirrorOf(123456789l)));
-		assertTrue("2", !fValue.equals(fVM.mirrorOf(987654321l)));
-		assertTrue("3", !fValue.equals(new Object()));
-		assertTrue("4", !fValue.equals(null));
-		assertEquals(
-			"5",
-			fValue.hashCode(),
-			fVM.mirrorOf(123456789l).hashCode());
-		assertTrue("6", fValue.hashCode() != fVM.mirrorOf(987654321l).hashCode());
-	}
-	/**
-	 * Test JDI value().
-	 */
-	public void testJDIValue() {
-		assertTrue("1", 123456789l == fValue.value());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodEntryRequestTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodEntryRequestTest.java
deleted file mode 100644
index 1b07dfe..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodEntryRequestTest.java
+++ /dev/null
@@ -1,111 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.ClassType;
-import com.sun.jdi.Method;
-import com.sun.jdi.ReferenceType;
-import com.sun.jdi.ThreadReference;
-import com.sun.jdi.event.Event;
-import com.sun.jdi.event.MethodEntryEvent;
-import com.sun.jdi.request.MethodEntryRequest;
-
-public class MethodEntryRequestTest extends AbstractJDITest {
-
-	public void localSetUp() {
-	}
-
-	public void localTearDown() {
-		fVM.resume();
-		waitUntilReady();
-	}
-
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new MethodEntryRequestTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.MethodEntryRequest";
-	}
-
-	protected MethodEntryRequest getMethodEntryRequest() {
-		return fVM.eventRequestManager().createMethodEntryRequest();
-	}
-
-	public void testJDIWithoutFilter() {
-		MethodEntryRequest request = getMethodEntryRequest();
-
-		Event e = triggerAndWait(request, "BreakpointEvent", true);
-		assertEquals(request, e.request());
-
-		MethodEntryEvent event = (MethodEntryEvent) e;
-		assertEquals(getThread(), event.thread());
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public void testJDIWithClassExclusionFilter() {
-		MethodEntryRequest request = getMethodEntryRequest();
-		request.addClassExclusionFilter("org.eclipse.debug.jdi.tests.program.*");
-
-		Event e = triggerAndWait(request, "BreakpointEvent", true);
-		assertEquals(request, e.request());
-
-		MethodEntryEvent event = (MethodEntryEvent) e;
-		Method m = event.method();
-		ReferenceType r = m.location().declaringType();
-		assertTrue("1", !r.name().startsWith("org.eclipse.debug.jdi.tests.program."));
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public void testJDIWithClassFilter1() {
-		MethodEntryRequest request = getMethodEntryRequest();
-		ClassType clazz = getClass("java.io.PrintStream");
-		request.addClassFilter(clazz);
-
-		Event e = triggerAndWait(request, "BreakpointEvent", true);
-		assertEquals(request, e.request());
-
-		MethodEntryEvent event = (MethodEntryEvent) e;
-		Method m = event.method();
-		ReferenceType r = m.location().declaringType();
-		assertEquals(clazz, r);
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public void testJDIWithClassFilter2() {
-		MethodEntryRequest request = getMethodEntryRequest();
-		request.addClassFilter("java.io.PrintStream");
-
-		Event e = triggerAndWait(request, "BreakpointEvent", true);
-		assertEquals(request, e.request());
-
-		MethodEntryEvent event = (MethodEntryEvent) e;
-		Method m = event.method();
-		ReferenceType r = m.location().declaringType();
-		assertEquals("java.io.PrintStream", r.name());
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public void testJDIWithThreadFilter() {
-		MethodEntryRequest request = getMethodEntryRequest();
-		ThreadReference thr = getMainThread();
-		request.addThreadFilter(thr);
-
-		Event e = triggerAndWait(request, "BreakpointEvent", true);
-		assertEquals(request, e.request());
-
-		MethodEntryEvent event = (MethodEntryEvent) e;
-		assertEquals(thr, event.thread());
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodExitRequestTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodExitRequestTest.java
deleted file mode 100644
index 7a5293d..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodExitRequestTest.java
+++ /dev/null
@@ -1,110 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.ClassType;
-import com.sun.jdi.Method;
-import com.sun.jdi.ReferenceType;
-import com.sun.jdi.ThreadReference;
-import com.sun.jdi.event.Event;
-import com.sun.jdi.event.MethodExitEvent;
-import com.sun.jdi.request.MethodExitRequest;
-
-public class MethodExitRequestTest extends AbstractJDITest {
-
-	public void localSetUp() {
-	}
-	public void localTearDown() {
-		fVM.resume();
-		waitUntilReady();
-	}
-
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new MethodExitRequestTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.MethodExitRequest";
-	}
-
-	protected MethodExitRequest getMethodExitRequest() {
-		return fVM.eventRequestManager().createMethodExitRequest();
-	}
-	public void testJDIWithoutFilter() {
-		MethodExitRequest request = getMethodExitRequest();
-
-		Event e = triggerAndWait(request, "BreakpointEvent", true);
-		assertEquals(request, e.request());
-
-		MethodExitEvent event = (MethodExitEvent) e;
-		assertEquals(getThread(), event.thread());
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public void testJDIWithClassExclusionFilter() {
-		MethodExitRequest request = getMethodExitRequest();
-		request.addClassExclusionFilter("org.eclipse.debug.jdi.tests.program.*");
-
-		Event e = triggerAndWait(request, "BreakpointEvent", true);
-		assertEquals(request, e.request());
-
-		MethodExitEvent event = (MethodExitEvent) e;
-		Method m = event.method();
-		ReferenceType r = m.location().declaringType();
-		assertTrue("1", !r.name().startsWith("org.eclipse.debug.jdi.tests.program."));
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public void testJDIWithClassFilter1() {
-		MethodExitRequest request = getMethodExitRequest();
-		ClassType clazz = getClass("java.io.PrintStream");
-		request.addClassFilter(clazz);
-
-		Event e = triggerAndWait(request, "BreakpointEvent", true);
-		assertEquals(request, e.request());
-
-		MethodExitEvent event = (MethodExitEvent) e;
-		Method m = event.method();
-		ReferenceType r = m.location().declaringType();
-		assertEquals(clazz, r);
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public void testJDIWithClassFilter2() {
-		MethodExitRequest request = getMethodExitRequest();
-		request.addClassFilter("java.io.PrintStream");
-
-		Event e = triggerAndWait(request, "BreakpointEvent", true);
-		assertEquals(request, e.request());
-
-		MethodExitEvent event = (MethodExitEvent) e;
-		Method m = event.method();
-		ReferenceType r = m.location().declaringType();
-		assertEquals("java.io.PrintStream", r.name());
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public void testJDIWithThreadFilter() {
-		MethodExitRequest request = getMethodExitRequest();
-		ThreadReference thr = getMainThread();
-		request.addThreadFilter(thr);
-
-		Event e = triggerAndWait(request, "BreakpointEvent", true);
-		assertEquals(request, e.request());
-
-		MethodExitEvent event = (MethodExitEvent) e;
-		assertEquals(thr, event.thread());
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodTest.java
deleted file mode 100644
index f4d2c82..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MethodTest.java
+++ /dev/null
@@ -1,249 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.List;
-
-import com.sun.jdi.AbsentInformationException;
-import com.sun.jdi.ClassNotLoadedException;
-import com.sun.jdi.LocalVariable;
-import com.sun.jdi.Location;
-import com.sun.jdi.Method;
-import com.sun.jdi.NativeMethodException;
-import com.sun.jdi.VoidType;
-
-/**
- * Tests for JDI com.sun.jdi.Method
- * and JDWP Method command set.
- */
-public class MethodTest extends AbstractJDITest {
-
-	private Method fMethod1;
-	/**
-	 * Creates a new test.
-	 */
-	public MethodTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get method useLocalVars(Thread, MainClass)
-		fMethod1 =
-			getMethod(
-				"useLocalVars",
-				"(Ljava/lang/Thread;Lorg/eclipse/debug/jdi/tests/program/MainClass;)V");
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new MethodTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.Method";
-	}
-	/**
-	 * Test JDI arguments() and JDWP 'Method - Get variable table'.
-	 */
-	public void testJDIArguments() {
-		List arguments = null;
-		try {
-			arguments = fMethod1.arguments();
-		} catch (AbsentInformationException e) {
-			assertTrue("1", false);
-		}
-		assertEquals("2", 2, arguments.size());
-		assertEquals("3", "t", ((LocalVariable) arguments.get(0)).name());
-		assertEquals("4", "o", ((LocalVariable) arguments.get(1)).name());
-	}
-	/**
-	 * Test JDI argumentTypeNames().
-	 */
-	public void testJDIArgumentTypeNames() {
-		List names = fMethod1.argumentTypeNames();
-		assertEquals("1", 2, names.size());
-		assertEquals("2", "java.lang.Thread", names.get(0));
-		assertEquals(
-			"3",
-			"org.eclipse.debug.jdi.tests.program.MainClass",
-			names.get(1));
-	}
-	/**
-	 * Test JDI argumentTypes().
-	 */
-	public void testJDIArgumentTypes() {
-		List types = null;
-		try {
-			types = fMethod1.argumentTypes();
-		} catch (ClassNotLoadedException e) {
-			assertTrue("1", false);
-		}
-		assertEquals("2", 2, types.size());
-		assertEquals("3", fVM.classesByName("java.lang.Thread").get(0), types.get(0));
-		assertEquals(
-			"4",
-			fVM.classesByName("org.eclipse.debug.jdi.tests.program.MainClass").get(0),
-			types.get(1));
-	}
-	/**
-	 * Test JDI bytecodes().
-	 */
-	public void testJDIBytecodes() {
-		if (!fVM.canGetBytecodes())
-			return;
-
-		byte[] bytecodes = fMethod1.bytecodes();
-		assertEquals("1", 27, bytecodes.length);
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fMethod1.equals(fMethod1));
-		Method other = getMethod("run", "()V");
-		assertTrue("2", !fMethod1.equals(other));
-		assertTrue("3", !fMethod1.equals(new Object()));
-		assertTrue("4", !fMethod1.equals(null));
-		assertTrue("5", fMethod1.hashCode() != other.hashCode());
-	}
-	/**
-	 * Test JDI isAbstract().
-	 */
-	public void testJDIIsAbstract() {
-		assertTrue("1", !fMethod1.isAbstract());
-	}
-	/**
-	 * Test JDI isConstructor().
-	 */
-	public void testJDIIsConstructor() {
-		assertTrue("1", !fMethod1.isConstructor());
-	}
-	/**
-	 * Test JDI isNative().
-	 */
-	public void testJDIIsNative() {
-		assertTrue("1", !fMethod1.isNative());
-	}
-	/**
-	 * Test JDI isStaticInitializer().
-	 */
-	public void testJDIIsStaticInitializer() {
-		assertTrue("1", !fMethod1.isStaticInitializer());
-	}
-	/**
-	 * Test JDI isSynchronized().
-	 */
-	public void testJDIIsSynchronized() {
-		assertTrue("1", !fMethod1.isSynchronized());
-	}
-	/**
-	 * Test JDI locationOfCodeIndex(long).
-	 */
-	public void testJDILocationOfCodeIndex() {
-		Location expected = fMethod1.location();
-		Location result = fMethod1.locationOfCodeIndex(expected.codeIndex());
-		assertEquals("1", expected, result);
-	}
-	/**
-	 * Test JDI locationsOfLine(int) and JDWP 'Method - Get line table'.
-	 */
-	public void testJDILocationsOfLine() {
-		int expected = fMethod1.location().lineNumber();
-		List locations = null;
-		try {
-			locations = fMethod1.locationsOfLine(expected);
-		} catch (AbsentInformationException e) {
-			assertTrue("1", false);
-		}
-		assertEquals("2", 1, locations.size());
-		assertEquals("3", expected, ((Location) locations.get(0)).lineNumber());
-	}
-	/**
-	 * Test JDI returnType().
-	 */
-	public void testJDIReturnType() {
-		try {
-			assertTrue("1", fMethod1.returnType() instanceof VoidType);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("2", false);
-		}
-	}
-	/**
-	 * Test JDI returnTypeName().
-	 */
-	public void testJDIReturnTypeName() {
-		assertEquals("1", "void", fMethod1.returnTypeName());
-	}
-	/**
-	 * Test JDI variables() and JDWP 'Method - Get variable table'.
-	 */
-	public void testJDIVariables() {
-		List variables = null;
-		try {
-			variables = fMethod1.variables();
-		} catch (AbsentInformationException e) {
-			assertTrue("1", false);
-		}
-		assertEquals("2", 2, variables.size());
-		assertEquals("3", "t", ((LocalVariable) variables.get(0)).name());
-		assertEquals("4", "o", ((LocalVariable) variables.get(1)).name());
-	}
-
-	/**
-	 * Test JDI variables() and JDWP 'Method - Get variable table'
-	 * for native method.
-	 */
-	public void testJDINativeMethodVariables() {
-		Method method = getMethod("java.lang.Thread", "sleep", "(J)V");
-
-		try {
-			method.variables();
-		} catch (AbsentInformationException e) {
-			assertTrue("1", false);
-		} catch (NativeMethodException nme) {
-			return;
-		}
-		assertTrue("Should have thrown native method exception", false);
-	}
-
-	/**
-	 * Test JDI variables() and JDWP 'Method - Get variable table'
-	 * for non-native method with a long argument.
-	 */
-	public void testJDIMethodVariablesWithLong() {
-		List variables = null;
-		Method method = getMethod("variablesTest", "(J)V");
-
-		try {
-			variables = method.variables();
-		} catch (AbsentInformationException e) {
-			assertTrue("1", false);
-		}
-		assertEquals("1", 1, variables.size());
-	}
-
-	/**
-	 * Test JDI variablesByName(String) and JDWP 'Method - Get variable table'.
-	 */
-	public void testJDIVariablesByName() {
-		String varName = "t";
-		List variables = null;
-		try {
-			variables = fMethod1.variablesByName(varName);
-		} catch (AbsentInformationException e) {
-			assertTrue("1", false);
-		}
-		assertEquals("2", 1, variables.size());
-		assertEquals("3", varName, ((LocalVariable) variables.get(0)).name());
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MirrorTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MirrorTest.java
deleted file mode 100644
index b659104..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MirrorTest.java
+++ /dev/null
@@ -1,131 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.LinkedList;
-import java.util.List;
-import java.util.ListIterator;
-
-import com.sun.jdi.Mirror;
-import com.sun.jdi.request.AccessWatchpointRequest;
-import com.sun.jdi.request.BreakpointRequest;
-import com.sun.jdi.request.ModificationWatchpointRequest;
-
-/**
- * Tests for JDI com.sun.jdi.Mirror.
- */
-public class MirrorTest extends AbstractJDITest {
-	List fMirrors = new LinkedList();
-	/**
-	 * Creates a new test.
-	 */
-	public MirrorTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get all kinds of concrete mirror that can be found in the VM
-		// in alphabetical order.
-
-		//TO DO: Add events too
-
-		fMirrors = new LinkedList();
-
-		if (fVM.canWatchFieldAccess())
-			fMirrors.add(getAccessWatchpointRequest());
-		// AccessWatchpointRequest
-
-		fMirrors.add(getObjectArrayReference()); // ArrayReference
-		fMirrors.add(getArrayType()); // ArrayType
-		fMirrors.add(fVM.mirrorOf(true)); // BooleanValue
-		fMirrors.add(getBreakpointRequest()); // BreakpointRequest
-		fMirrors.add(fVM.mirrorOf((byte) 1)); // ByteValue
-		fMirrors.add(fVM.mirrorOf('1')); // CharValue
-		fMirrors.add(getClassLoaderReference()); // ClassLoaderReference
-		fMirrors.add(getMainClass()); // ClassType
-		fMirrors.add(fVM.mirrorOf(12345.6789)); // DoubleValue
-		fMirrors.add(fVM.eventRequestManager()); // EventRequestManager
-		fMirrors.add(fVM.eventQueue()); // EventQueue
-		fMirrors.add(getField()); // Field
-		fMirrors.add(fVM.mirrorOf(123.45f)); // FieldValue
-		fMirrors.add(fVM.mirrorOf(12345)); // IntegerValue
-		fMirrors.add(getInterfaceType()); // InterfaceType
-		fMirrors.add(getLocalVariable()); // LocalVariable
-		fMirrors.add(getLocation()); // Location
-		fMirrors.add(fVM.mirrorOf(123456789l)); // LongValue
-		fMirrors.add(getMethod()); // Method
-
-		if (fVM.canWatchFieldModification())
-			fMirrors.add(getModificationWatchpointRequest());
-		// ModificationWatchpointRequest
-
-		fMirrors.add(getObjectReference()); // ObjectReference
-		fMirrors.add(fVM.mirrorOf((short) 12345)); // ShortValue
-		fMirrors.add(getFrame(RUN_FRAME_OFFSET)); // StackFrame
-		fMirrors.add(getStringReference()); // StringReference
-		fMirrors.add(getThread().threadGroup()); // ThreadGroupReference
-		fMirrors.add(getThread()); // ThreadReference
-		fMirrors.add(fVM); // VirtualMachine
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		ListIterator iterator = fMirrors.listIterator();
-		while (iterator.hasNext()) {
-			Object mirror = iterator.next();
-
-			// Delete the access watchpoint request we created in this test
-			if (mirror instanceof AccessWatchpointRequest)
-				fVM.eventRequestManager().deleteEventRequest(
-					(AccessWatchpointRequest) mirror);
-
-			// Delete the breakpoint request we created in this test
-			if (mirror instanceof BreakpointRequest)
-				fVM.eventRequestManager().deleteEventRequest(
-					(BreakpointRequest) mirror);
-
-			// Delete the modification watchpoint request we created in this test
-			if (mirror instanceof ModificationWatchpointRequest)
-				fVM.eventRequestManager().deleteEventRequest(
-					(ModificationWatchpointRequest) mirror);
-		}
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new MirrorTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.Mirror";
-	}
-	/**
-	 * Test JDI toString().
-	 */
-	public void testJDIToString() {
-		for (int i = 0; i < fMirrors.size(); i++) {
-			Mirror mirror = (Mirror) fMirrors.get(i);
-			assertNotNull(Integer.toString(i), mirror.toString());
-		}
-	}
-	/**
-	 * Test JDI virtualMachine().
-	 */
-	public void testJDIVirtualMachine() {
-		for (int i = 0; i < fMirrors.size(); i++) {
-			Mirror mirror = (Mirror) fMirrors.get(i);
-			assertEquals(Integer.toString(i), fVM, mirror.virtualMachine());
-		}
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ModificationWatchpointEventTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ModificationWatchpointEventTest.java
deleted file mode 100644
index 8a04c0c..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ModificationWatchpointEventTest.java
+++ /dev/null
@@ -1,74 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.StringReference;
-import com.sun.jdi.event.ModificationWatchpointEvent;
-import com.sun.jdi.request.WatchpointRequest;
-
-/**
- * Tests for JDI com.sun.jdi.ModificationWatchpointEvent.
- */
-public class ModificationWatchpointEventTest extends AbstractJDITest {
-
-	private ModificationWatchpointEvent fWatchpointEvent;
-	private WatchpointRequest fWatchpointRequest;
-	/**
-	 * Creates a new test.
-	 */
-	public ModificationWatchpointEventTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Trigger a static modification watchpoint event
-		fWatchpointRequest = getStaticModificationWatchpointRequest();
-		fWatchpointEvent =
-			(ModificationWatchpointEvent) triggerAndWait(fWatchpointRequest,
-				"StaticModificationWatchpointEvent",
-				false);
-		// Interrupt the VM so that we can test valueToBe()
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// Ensure that the modification of the "fString" field has completed
-		fVM.resume();
-		waitUntilReady();
-
-		// Remove the modification watchpoint request
-		fVM.eventRequestManager().deleteEventRequest(fWatchpointRequest);
-
-		// Set the value of the "fString" field back to its original value
-		resetStaticField();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ModificationWatchpointEventTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.event.ModificationWatchpointEvent";
-	}
-	/**
-	 * Test JDI valueToBe().
-	 */
-	public void testJDIValueToBe() {
-		assertEquals(
-			"1",
-			"Hello Universe",
-			((StringReference) fWatchpointEvent.valueToBe()).value());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/NotYetImplementedException.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/NotYetImplementedException.java
deleted file mode 100644
index 65cba62..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/NotYetImplementedException.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-public class NotYetImplementedException extends RuntimeException {
-	/**
-	 * NotYetImplemented constructor comment.
-	 */
-	public NotYetImplementedException() {
-		super();
-	}
-	/**
-	 * NotYetImplemented constructor comment.
-	 * @param s java.lang.String
-	 */
-	public NotYetImplementedException(String s) {
-		super(s);
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/NullConsoleReader.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/NullConsoleReader.java
deleted file mode 100644
index 9067ea2..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/NullConsoleReader.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-
-/**
- * A null console reader that continuously reads from the VM input stream
- * so that the VM doesn't block when the program writes to the stout.
- */
-
-public class NullConsoleReader extends AbstractReader {
-	private InputStream fInput;
-	/*
-	 * Creates a new console reader that will read from the given input stream.
-	 */
-	public NullConsoleReader(String name, InputStream input) {
-		super(name);
-		fInput = input;
-	}
-	/**
-	 * Continuously reads events that are coming from the event queue.
-	 */
-	protected void readerLoop() {
-		java.io.BufferedReader input =
-			new BufferedReader(new InputStreamReader(fInput));
-		try {
-			int read = 0;
-			while (!fIsStopping && read != -1) {
-				read = input.read();
-			}
-		} catch (IOException e) {
-		}
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ObjectReferenceTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ObjectReferenceTest.java
deleted file mode 100644
index 3206d76..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ObjectReferenceTest.java
+++ /dev/null
@@ -1,300 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Map;
-import java.util.Vector;
-
-import junit.framework.Test;
-
-import com.sun.jdi.ClassNotLoadedException;
-import com.sun.jdi.ClassType;
-import com.sun.jdi.Field;
-import com.sun.jdi.IncompatibleThreadStateException;
-import com.sun.jdi.IntegerValue;
-import com.sun.jdi.InvalidTypeException;
-import com.sun.jdi.InvocationException;
-import com.sun.jdi.Method;
-import com.sun.jdi.ObjectReference;
-import com.sun.jdi.ReferenceType;
-import com.sun.jdi.ThreadReference;
-import com.sun.jdi.Value;
-import com.sun.jdi.event.ThreadStartEvent;
-
-/**
- * Tests for JDI com.sun.jdi.ObjectReference
- * and JDWP Object command set.
- */
-public class ObjectReferenceTest extends AbstractJDITest {
-
-	private ObjectReference fObject;
-
-	/**
-	 * Creates a new test.
-	 */
-	public ObjectReferenceTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Make sure the object is in expected state (eg. it has not entered a monitor)
-		waitUntilReady();
-
-		// Get static field "fObject"
-		fObject = getObjectReference();
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// The test has resumed and suspended the Test Thread. Make sure this
-		// thread is suspended at the right location
-		waitUntilReady();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ObjectReferenceTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.ObjectReference";
-	}
-	/**
-	 * Returns all tests 
-	 */
-	protected Test suite() {
-		JDITestSuite suite = (JDITestSuite) super.suite();
-		Vector testNames = getAllMatchingTests("testLast");
-		Iterator iterator = testNames.iterator();
-		while (iterator.hasNext()) {
-			String name = (String) iterator.next();
-			suite.addTest(new JDITestCase(this, name));
-		}
-		return suite;
-	}
-	/**
-	 * Test JDI disableCollection(). enableCollection() and isCollected().
-	 */
-	public void testJDIDisableEnableCollection() {
-		assertTrue("1", !fObject.isCollected());
-		fObject.disableCollection();
-		fObject.enableCollection();
-	}
-	/**
-	 * Test JDI entryCount().
-	 */
-	public void testJDIEntryCount() {
-		if (fVM.canGetMonitorInfo()) {
-			// Ensure we're in a good state
-			fVM.resume();
-			waitUntilReady();
-
-			try {
-				assertEquals("1", 1, fObject.entryCount());
-			} catch (IncompatibleThreadStateException e) {
-				assertTrue("2", false);
-			}
-		}
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fObject.equals(fObject));
-		ObjectReference other = getThread();
-		assertTrue("2", !fObject.equals(other));
-		assertTrue("3", !fObject.equals(new Object()));
-		assertTrue("4", !fObject.equals(null));
-		assertTrue("5", fObject.hashCode() != other.hashCode());
-	}
-	/**
-	 * Test JDI getValue(Field), getValues(List) and setValue(Field,Value)
-	 * and JDWP 'Object - Get Fields Values' and 'Object - Set Fields Values'.
-	 */
-	public void testJDIGetSetValues() {
-		// setup
-		ReferenceType type = fObject.referenceType();
-		List fields = type.fields();
-		ListIterator iterator = fields.listIterator();
-		List instanceFields = new LinkedList();
-		while (iterator.hasNext()) {
-			Field field = (Field) iterator.next();
-			if (!field.isStatic())
-				instanceFields.add(field);
-		}
-		Field field = (Field) instanceFields.get(4);
-		assertEquals("1", "fChar", field.name());
-
-		// getValues(List)
-		Map values = fObject.getValues(instanceFields);
-		assertTrue("2", values.size() == 7);
-		Value value = (Value) values.get(field);
-		assertEquals("3", value, fVM.mirrorOf('a'));
-
-		// setValue(Field,Value)
-		Value newValue = fVM.mirrorOf('b');
-		try {
-			fObject.setValue(field, newValue);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("4.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("4.2", false);
-		}
-
-		// getValue(Field)
-		assertEquals("5", fObject.getValue(field), newValue);
-
-		// test set and get null value.
-		field = (Field) instanceFields.get(5);
-
-		assertEquals("6", "fString2", field.name());
-		try {
-			fObject.setValue(field, null);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("7.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("7.2", false);
-		}
-
-		// getValue(Field)
-		assertEquals("8", fObject.getValue(field), null);
-
-		// test get final value.
-		field = (Field) instanceFields.get(6);
-		assertEquals("9", "fString3", field.name());
-
-		// The value is null and should be because it's final
-		//assertEquals("10", fVM.mirrorOf("HEY"), fObject.getValue(field));
-
-	}
-	/**
-	 * Test JDI invokeMethod.
-	 */
-	public void testJDIInvokeMethod() {
-		// Make sure the entire VM is not suspended before we start a new thread
-		// (otherwise this new thread will start suspended and we will never get the
-		// ThreadStart event)
-		fVM.resume();
-		waitUntilReady();
-
-		ThreadStartEvent event =
-			(ThreadStartEvent) triggerAndWait(fVM
-				.eventRequestManager()
-				.createThreadStartRequest(),
-				"ThreadStartEvent",
-				false);
-		ThreadReference thread = event.thread();
-		ClassType ct = (ClassType) fObject.referenceType();
-		Method inv =
-			ct.concreteMethodByName("invoke3", "(Ljava/lang/String;Ljava/lang/Object;)I");
-		List args = new ArrayList();
-		args.add(fVM.mirrorOf("888"));
-		args.add(null);
-		Exception oops = null;
-		Value val = null;
-		try {
-			val = fObject.invokeMethod(thread, inv, args, 0);
-		} catch (ClassNotLoadedException exc) {
-			oops = exc;
-		} catch (IncompatibleThreadStateException exc) {
-			oops = exc;
-		} catch (InvalidTypeException exc) {
-			oops = exc;
-		} catch (InvocationException exc) {
-			oops = exc;
-		}
-		assertTrue("1", oops == null);
-		assertEquals("2", val == null ? 0 : ((IntegerValue) val).value(), 888);
-	}
-	/**
-	 * Test JDI invokeMethod - failure.
-	 */
-	public void testJDIInvokeMethodFail() {
-		// Make sure the entire VM is not suspended before we start a new thread
-		// (otherwise this new thread will start suspended and we will never get the
-		// ThreadStart event)
-		fVM.resume();
-		waitUntilReady();
-
-		ThreadStartEvent event =
-			(ThreadStartEvent) triggerAndWait(fVM
-				.eventRequestManager()
-				.createThreadStartRequest(),
-				"ThreadStartEvent",
-				false);
-		ThreadReference thread = event.thread();
-		ClassType ct = (ClassType) fObject.referenceType();
-		Method inv = ct.concreteMethodByName("invoke4", "()J");
-		Exception good = null, oops = null;
-		try {
-			fObject.invokeMethod(thread, inv, new ArrayList(), 0);
-		} catch (ClassNotLoadedException exc) {
-			oops = exc;
-		} catch (IncompatibleThreadStateException exc) {
-			oops = exc;
-		} catch (InvalidTypeException exc) {
-			oops = exc;
-		} catch (InvocationException exc) {
-			good = exc;
-		}
-		assertTrue("1", oops == null);
-		assertTrue("2", good != null);
-	}
-	/**
-	 * Test JDI owningThread().
-	 */
-	public void testJDIOwningThread() {
-		if (fVM.canGetMonitorInfo()) {
-			// Ensure we're in a good state
-			fVM.resume();
-			waitUntilReady();
-
-			try {
-				assertEquals("1", getThread(), fObject.owningThread());
-			} catch (IncompatibleThreadStateException e) {
-				assertTrue("2", false);
-			}
-		}
-	}
-	/**
-	 * Test JDI referenceType() and JDWP 'Type - Get type'.
-	 */
-	public void testJDIReferenceType() {
-		ReferenceType type = fObject.referenceType();
-		assertEquals("1", type.name(), "org.eclipse.debug.jdi.tests.program.MainClass");
-	}
-	/**
-	 * Test JDI uniqueID().
-	 */
-	public void testJDIUniqueID() {
-		fObject.uniqueID();
-	}
-	/**
-	 * Test JDI waitingThreads().
-	 */
-	public void testJDIWaitingThreads() {
-		if (fVM.canGetMonitorInfo()) {
-			try {
-				assertEquals("1", 0, fObject.waitingThreads().size());
-			} catch (IncompatibleThreadStateException e) {
-				assertTrue("2", false);
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/PrimitiveValueTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/PrimitiveValueTest.java
deleted file mode 100644
index 6784cbd..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/PrimitiveValueTest.java
+++ /dev/null
@@ -1,161 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.PrimitiveValue;
-
-/**
- * Tests for JDI com.sun.jdi.PrimitiveValue.
- */
-public class PrimitiveValueTest extends AbstractJDITest {
-
-	private PrimitiveValue fBoolean,
-		fByte,
-		fChar,
-		fDouble,
-		fFloat,
-		fInt,
-		fLong,
-		fShort;
-	/**
-	 * Creates a new test.
-	 */
-	public PrimitiveValueTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get all kinds of prinitive values
-		fBoolean = fVM.mirrorOf(true);
-		fByte = fVM.mirrorOf((byte) 1);
-		fChar = fVM.mirrorOf('a');
-		fDouble = fVM.mirrorOf(12345.6789);
-		fFloat = fVM.mirrorOf(12345.6789f);
-		fInt = fVM.mirrorOf(12345);
-		fLong = fVM.mirrorOf(123456789l);
-		fShort = fVM.mirrorOf((short) 12345);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new PrimitiveValueTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.PrimitiveValue";
-	}
-	/**
-	 * Test JDI booleanValue().
-	 */
-	public void testJDIBooleanValue() {
-		assertTrue("1", fBoolean.booleanValue());
-		assertTrue("2", fByte.booleanValue());
-		assertTrue("3", fChar.booleanValue());
-		assertTrue("4", fDouble.booleanValue());
-		assertTrue("5", fFloat.booleanValue());
-		assertTrue("6", fInt.booleanValue());
-		assertTrue("7", fLong.booleanValue());
-		assertTrue("8", fShort.booleanValue());
-	}
-	/**
-	 * Test JDI byteValue().
-	 */
-	public void testJDIByteValue() {
-		assertEquals("1", (byte) 1, fBoolean.byteValue());
-		assertEquals("2", (byte) 1, fByte.byteValue());
-		assertEquals("3", (byte) 97, fChar.byteValue());
-		assertEquals("4", (byte) 57, fDouble.byteValue());
-		assertEquals("5", (byte) 57, fFloat.byteValue());
-		assertEquals("6", (byte) 57, fInt.byteValue());
-		assertEquals("7", (byte) 21, fLong.byteValue());
-		assertEquals("8", (byte) 57, fShort.byteValue());
-	}
-	/**
-	 * Test JDI charValue().
-	 */
-	public void testJDICharValue() {
-		assertEquals("1", (char) 1, fBoolean.charValue());
-		assertEquals("2", (char) 1, fByte.charValue());
-		assertEquals("3", 'a', fChar.charValue());
-		assertEquals("4", (char) 12345, fDouble.charValue());
-		assertEquals("5", (char) 12345, fFloat.charValue());
-		assertEquals("6", (char) 12345, fInt.charValue());
-		assertEquals("7", (char) 52501, fLong.charValue());
-		assertEquals("8", (char) 12345, fShort.charValue());
-	}
-	/**
-	 * Test JDI doubleValue().
-	 */
-	public void testJDIDoubleValue() {
-		assertEquals("1", 1, fBoolean.doubleValue(), 0);
-		assertEquals("2", 1, fByte.doubleValue(), 0);
-		assertEquals("3", 97, fChar.doubleValue(), 0);
-		assertEquals("4", 12345.6789, fDouble.doubleValue(), 0);
-		assertEquals("5", 12345.6789, fFloat.doubleValue(), 0.001);
-		assertEquals("6", 12345, fInt.doubleValue(), 0);
-		assertEquals("7", 123456789, fLong.doubleValue(), 0);
-		assertEquals("8", 12345, fShort.doubleValue(), 0);
-	}
-	/**
-	 * Test JDI floatValue().
-	 */
-	public void testJDIFloatValue() {
-		assertEquals("1", 1, fBoolean.floatValue(), 0);
-		assertEquals("2", 1, fByte.floatValue(), 0);
-		assertEquals("3", 97, fChar.floatValue(), 0);
-		assertEquals("4", 12345.6789f, fDouble.floatValue(), 0);
-		assertEquals("5", 12345.6789f, fFloat.floatValue(), 0.001);
-		assertEquals("6", 12345, fInt.floatValue(), 0);
-		assertEquals("7", 123456789, fLong.floatValue(), 100);
-		assertEquals("8", 12345, fShort.floatValue(), 0);
-	}
-	/**
-	 * Test JDI intValue().
-	 */
-	public void testJDIIntValue() {
-		assertEquals("1", 1, fBoolean.intValue());
-		assertEquals("2", 1, fByte.intValue());
-		assertEquals("3", 97, fChar.intValue());
-		assertEquals("4", 12345, fDouble.intValue());
-		assertEquals("5", 12345, fFloat.intValue());
-		assertEquals("6", 12345, fInt.intValue());
-		assertEquals("7", 123456789, fLong.intValue());
-		assertEquals("8", 12345, fShort.intValue());
-	}
-	/**
-	 * Test JDI longValue().
-	 */
-	public void testJDILongValue() {
-		assertEquals("1", 1l, fBoolean.longValue());
-		assertEquals("2", 1l, fByte.longValue());
-		assertEquals("3", 97l, fChar.longValue());
-		assertEquals("4", 12345l, fDouble.longValue());
-		assertEquals("5", 12345l, fFloat.longValue());
-		assertEquals("6", 12345l, fInt.longValue());
-		assertEquals("7", 123456789l, fLong.longValue());
-		assertEquals("8", 12345l, fShort.longValue());
-	}
-	/**
-	 * Test JDI shortValue().
-	 */
-	public void testJDIShortValue() {
-		assertEquals("1", 1, fBoolean.shortValue());
-		assertEquals("2", 1, fByte.shortValue());
-		assertEquals("3", 97, fChar.shortValue());
-		assertEquals("4", 12345, fDouble.shortValue());
-		assertEquals("5", 12345, fFloat.shortValue());
-		assertEquals("6", 12345, fInt.shortValue());
-		assertEquals("7", -13035, fLong.shortValue());
-		assertEquals("8", 12345, fShort.shortValue());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ReferenceTypeTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ReferenceTypeTest.java
deleted file mode 100644
index ef635f3..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ReferenceTypeTest.java
+++ /dev/null
@@ -1,365 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Map;
-
-import com.sun.jdi.Field;
-import com.sun.jdi.IntegerValue;
-import com.sun.jdi.Method;
-import com.sun.jdi.ObjectReference;
-import com.sun.jdi.ReferenceType;
-
-/**
- * Tests for JDI com.sun.jdi.ReferenceType
- * and JDWP Type command set.
- */
-public class ReferenceTypeTest extends AbstractJDITest {
-
-	private List fTypes = new LinkedList();
-
-	// These must match what is done in localSetUp
-	private boolean[] fSystemClassLoader = { true, true, false, false };
-	private boolean[] fHasMethods = { true, false, true, true };
-	private boolean[] fIsAbstract = { false, false, false, true };
-	private boolean[] fIsFinal = { false, true, false, false };
-	private boolean[] fIsStatic = { false, false, false, false };
-	private String[] fTypeName =
-		{
-			"java.lang.Object",
-			"java.lang.String[]",
-			"org.eclipse.debug.jdi.tests.program.MainClass",
-			"org.eclipse.debug.jdi.tests.program.Printable" };
-	private int fObjectIndex = 0;
-	private int fMainClassIndex = 2;
-
-	/**
-	 * Creates a new test.
-	 */
-	public ReferenceTypeTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get all kinds of reference type
-		fTypes.add(getSystemType());
-		fTypes.add(getArrayType());
-		fTypes.add(getMainClass());
-		fTypes.add(getInterfaceType());
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ReferenceTypeTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.ReferenceType";
-	}
-	/**
-	 * Test JDI allFields().
-	 */
-	public void testJDIAllFields() {
-		Iterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			Iterator all = type.allFields().iterator();
-			int i = 0;
-			while (all.hasNext())
-				assertTrue("1." + type.name() + "." + i++, all.next() instanceof Field);
-		}
-	}
-	/**
-	 * Test JDI allMethods().
-	 */
-	public void testJDIAllMethods() {
-		Iterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			Iterator all = type.allMethods().iterator();
-			int i = 0;
-			while (all.hasNext())
-				assertTrue("1." + type.name() + "." + i++, all.next() instanceof Method);
-		}
-	}
-	/**
-	 * Test JDI classLoader() and JDWP 'Type - Get class loader'.
-	 */
-	public void testJDIClassLoader() {
-		for (int i = 0; i < fTypes.size(); ++i) {
-			ReferenceType type = (ReferenceType) fTypes.get(i);
-			ObjectReference classLoader = type.classLoader();
-			assertTrue("1." + i, (classLoader == null) == fSystemClassLoader[i]);
-		}
-	}
-	/**
-	 * Test JDI classObject().
-	 */
-	public void testJDIClassObject() {
-		ListIterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			assertTrue(type.name(), type.classObject() instanceof ObjectReference);
-		}
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		ReferenceType other =
-			(ReferenceType) fVM.classesByName("java.lang.String").get(0);
-		ListIterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			assertTrue("1." + type.name() + ".1", type.equals(type));
-			assertTrue("1." + type.name() + ".2", !type.equals(other));
-			assertTrue("1." + type.name() + ".3", !type.equals(fVM));
-			assertTrue("1." + type.name() + ".4", !type.equals(new Object()));
-			assertTrue("1." + type.name() + ".5", !type.equals(null));
-			assertTrue("1." + type.name() + ".6", type.hashCode() != other.hashCode());
-		}
-	}
-	/**
-	 * Test JDI failedToInitialize().
-	 */
-	public void testJDIFailedToInitialize() {
-		ListIterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			assertTrue("1." + type.name(), !type.failedToInitialize());
-		}
-	}
-	/**
-	 * Test JDI fieldByName(String).
-	 */
-	public void testJDIFieldByName() {
-		// NB: This tests the class type only, it should test the others too
-		ReferenceType type = (ReferenceType) fTypes.get(fMainClassIndex);
-		Field field = type.fieldByName("fObject");
-		assertTrue("1." + type.name(), field != null);
-	}
-	/**
-	 * Test JDI fields() and JDWP 'Type - Get Fields'.
-	 */
-	public void testJDIFields() {
-		Iterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			Iterator fields = type.fields().iterator();
-			int i = 0;
-			while (fields.hasNext())
-				assertTrue("1." + i++ +"." + type.name(), fields.next() instanceof Field);
-		}
-	}
-	/**
-	 * Test JDI getValue(Field) and JDWP 'Type - Get Fields Values'.
-	 */
-	public void testJDIGetValue() {
-		// NB: This tests the class type only, it should test the others too
-		ReferenceType type = (ReferenceType) fTypes.get(fMainClassIndex);
-		Field field = type.fieldByName("fInt");
-		assertTrue("1." + type.name(), field != null);
-		assertTrue("2." + type.name(), type.getValue(field) instanceof IntegerValue);
-	}
-	/**
-	 * Test JDI getValues(List) and JDWP 'Type - Get Fields Values'.
-	 */
-	public void testJDIGetValues() {
-		// NB: This tests the class type only, it should test the others too
-		ReferenceType type = (ReferenceType) fTypes.get(fMainClassIndex);
-
-		// Get field values
-		List fields = type.fields();
-		ListIterator iterator = fields.listIterator();
-		List staticFields = new LinkedList();
-		while (iterator.hasNext()) {
-			Field field = (Field) iterator.next();
-			if (field.isStatic())
-				staticFields.add(field);
-		}
-		Map values = type.getValues(staticFields);
-		assertEquals("1." + type.name(), 8, values.size());
-
-		// Get value of field fInt in MainClass
-		Field field = (Field) staticFields.get(0);
-		int i = 0;
-		while (!field.name().equals("fInt"))
-			field = (Field) staticFields.get(++i);
-
-		// Ensure it is an integer value
-		assertTrue("2." + type.name(), values.get(field) instanceof IntegerValue);
-	}
-	/**
-	 * Test JDI isAbstract().
-	 */
-	public void testJDIIsAbstract() {
-		ListIterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			if (type.name().equals("org.eclipse.debug.jdi.tests.program.Printable"))
-				assertTrue("1." + type.name(), type.isAbstract());
-			else
-				assertTrue("2." + type.name(), !type.isAbstract());
-		}
-	}
-	/**
-	 * Test JDI isFinal().
-	 */
-	public void testJDIIsFinal() {
-		for (int i = 0; i < fTypes.size(); ++i) {
-			ReferenceType type = (ReferenceType) fTypes.get(i);
-			assertTrue("1." + i, type.isFinal() == fIsFinal[i]);
-		}
-	}
-	/**
-	 * Test JDI isInitialized().
-	 */
-	public void testJDIIsInitialized() {
-		ListIterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			assertTrue("1." + type.name(), type.isInitialized());
-		}
-	}
-	/**
-	 * Test JDI isPrepared().
-	 */
-	public void testJDIIsPrepared() {
-		ListIterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			assertTrue("1." + type.name(), type.isPrepared());
-		}
-	}
-	/**
-	 * Test JDI isStatic().
-	 */
-	public void testJDIIsStatic() {
-		ListIterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			assertTrue("1." + type.name(), !type.isStatic());
-		}
-	}
-	/**
-	 * Test JDI isVerified().
-	 */
-	public void testJDIIsVerified() {
-		for (int i = 0; i < fTypes.size(); ++i) {
-			if (i != fObjectIndex) {
-				ReferenceType type = (ReferenceType) fTypes.get(i);
-				assertTrue("1." + type.name(), type.isVerified());
-			}
-		}
-	}
-	/**
-	 * Test JDI methods() and JDWP 'Type - Get Methods'.
-	 */
-	public void testJDIMethods() {
-		for (int i = 0; i < fTypes.size(); ++i) {
-			ReferenceType type = (ReferenceType) fTypes.get(i);
-			List methods = type.methods();
-			assertTrue("" + i, (methods.size() != 0) == fHasMethods[i]);
-		}
-	}
-	/**
-	 * Test JDI methodsByName(String) and methodsByName(String, String).
-	 */
-	public void testJDIMethodsByName() {
-		Iterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-
-			// methodsByName(String)
-			Iterator methods = type.methodsByName("run").iterator();
-			while (methods.hasNext())
-				assertTrue("1." + type.name(), methods.next() instanceof Method);
-			assertEquals("2", 0, type.methodsByName("fraz").size());
-
-			// methodsByName(String, String)
-			methods = type.methodsByName("run", "()V").iterator();
-			while (methods.hasNext())
-				assertTrue("3." + type.name(), methods.next() instanceof Method);
-			assertEquals("4", 0, type.methodsByName("fraz", "()Z").size());
-		}
-	}
-	/**
-	 * Test JDI isAbstract(), isFinal() and isStatic() 
-	 * and JDWP 'Type - Get modifiers'.
-	 */
-	public void testJDIModifiers() {
-		for (int i = 0; i < fTypes.size(); ++i) {
-			ReferenceType type = (ReferenceType) fTypes.get(i);
-			if (i != 2) {
-				// i == 2 corresponds to an ArrayType, isAbstract() is undefined
-				assertTrue("1." + i, type.isAbstract() == fIsAbstract[i]);
-			}
-			assertTrue("2." + i, type.isFinal() == fIsFinal[i]);
-			assertTrue("3." + i, type.isStatic() == fIsStatic[i]);
-		}
-	}
-	/**
-	 * Test JDI name() and JDWP 'Type - Get signature'.
-	 */
-	public void testJDIName() {
-		for (int i = 0; i < fTypes.size(); ++i) {
-			ReferenceType type = (ReferenceType) fTypes.get(i);
-			assertEquals("" + i, type.name(), fTypeName[i]);
-		}
-	}
-	/**
-	 * Test JDI nestedTypes().
-	 */
-	public void testJDINestedTypes() {
-		// NB: This tests the class type only, it should test the others too
-		ReferenceType type = getClass("org.eclipse.debug.jdi.tests.program.OtherClass");
-		assertTrue("1." + type.name(), type != null);
-		List nestedTypes = type.nestedTypes();
-		assertEquals("2." + type.name(), 1, nestedTypes.size());
-		assertTrue("3." + type.name(), nestedTypes.get(0) instanceof ReferenceType);
-	}
-	/**
-	 * Test JDI visibleFields().
-	 */
-	public void testJDIVisibleFields() {
-		Iterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			List all = type.allFields();
-			Iterator visible = type.visibleFields().iterator();
-			while (visible.hasNext()) {
-				Field next = (Field) visible.next();
-				assertTrue("1." + type.name() + "." + next.name(), all.contains(next));
-			}
-		}
-	}
-	/**
-	 * Test JDI visibleMethods().
-	 */
-	public void testJDIVisibleMethods() {
-		Iterator iterator = fTypes.listIterator();
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			List all = type.allMethods();
-			Iterator visible = type.visibleMethods().iterator();
-			while (visible.hasNext()) {
-				Method next = (Method) visible.next();
-				assertTrue("1." + type.name() + "." + next.name(), all.contains(next));
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ShortValueTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ShortValueTest.java
deleted file mode 100644
index 2184e66..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ShortValueTest.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.ShortValue;
-
-/**
- * Tests for JDI com.sun.jdi.ShortValue.
- */
-public class ShortValueTest extends AbstractJDITest {
-
-	private ShortValue fValue;
-	/**
-	 * Creates a new test.
-	 */
-	public ShortValueTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get short value for 12345
-		fValue = fVM.mirrorOf((short) 12345);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ShortValueTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.ShortValue";
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		assertTrue("1", fValue.equals(fVM.mirrorOf((short) 12345)));
-		assertTrue("2", !fValue.equals(fVM.mirrorOf((short) 54321)));
-		assertTrue("3", !fValue.equals(new Object()));
-		assertTrue("4", !fValue.equals(null));
-		assertEquals(
-			"5",
-			fValue.hashCode(),
-			fVM.mirrorOf((short) 12345).hashCode());
-		assertTrue(
-			"6",
-			fValue.hashCode() != fVM.mirrorOf((short) 54321).hashCode());
-	}
-	/**
-	 * Test JDI value().
-	 */
-	public void testJDIValue() {
-		assertTrue("1", (short) 12345 == fValue.value());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StackFrameTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StackFrameTest.java
deleted file mode 100644
index 13d0133..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StackFrameTest.java
+++ /dev/null
@@ -1,176 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-
-import com.sun.jdi.AbsentInformationException;
-import com.sun.jdi.ClassNotLoadedException;
-import com.sun.jdi.InvalidTypeException;
-import com.sun.jdi.LocalVariable;
-import com.sun.jdi.ObjectReference;
-import com.sun.jdi.ReferenceType;
-import com.sun.jdi.StackFrame;
-import com.sun.jdi.ThreadReference;
-
-/**
- * Tests for JDI com.sun.jdi.StackFrame.
- */
-public class StackFrameTest extends AbstractJDITest {
-
-	private StackFrame fFrame;
-	/**
-	 * Creates a new test.
-	 */
-	public StackFrameTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get the frame running MainClass.run()
-		fFrame = getFrame(RUN_FRAME_OFFSET);
-
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new StackFrameTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.StackFrame";
-	}
-	/**
-	 * Test JDI equals() and hashCode().
-	 */
-	public void testJDIEquality() {
-		StackFrame sameFrame = getFrame(RUN_FRAME_OFFSET);
-		StackFrame otherFrame = getFrame(0);
-
-		// Not identical
-		assertTrue("1", fFrame != sameFrame);
-		// But equal
-		assertTrue("2", fFrame.equals(sameFrame));
-		assertTrue("3", fFrame.hashCode() == sameFrame.hashCode());
-
-		assertTrue("4", fFrame.equals(fFrame));
-		assertTrue("5", fFrame.hashCode() == fFrame.hashCode());
-
-		assertTrue("6", !fFrame.equals(otherFrame));
-
-		assertTrue("7", !fFrame.equals(new Object()));
-		assertTrue("8", !fFrame.equals(null));
-	}
-	/**
-	 * Test JDI location().
-	 */
-	public void testJDILocation() {
-		assertNotNull("1", fFrame.location());
-	}
-	/**
-	 * Test JDI setValue(LocalVariable, Value), getValue(LocalVariable) and
-	 * getValues(List).
-	 */
-	public void testJDISetGetValue() {
-		// setValue
-		ThreadReference thread = (ThreadReference) fVM.allThreads().get(0);
-		LocalVariable var = getLocalVariable();
-		try {
-			fFrame.setValue(var, thread);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("1.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("1.2", false);
-		}
-
-		// getValue(LocalVariable)
-		ThreadReference value =
-			(ThreadReference) fFrame.getValue(getLocalVariable());
-		assertEquals("2", thread, value);
-
-		// getValues(List)
-		List vars = new LinkedList();
-		vars.add(var);
-		Map values = fFrame.getValues(vars);
-		value = (ThreadReference) values.get(var);
-		assertEquals("3", thread, value);
-
-		// test null value
-		var = getLocalVariable();
-		try {
-			fFrame.setValue(var, null);
-		} catch (ClassNotLoadedException e) {
-			assertTrue("4.1", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("4.2", false);
-		}
-
-		value = (ThreadReference) fFrame.getValue(getLocalVariable());
-		assertEquals("5", null, value);
-
-	}
-	/**
-	 * Test JDI thisObject().
-	 */
-	public void testJDIThisObject() {
-		ObjectReference object = fFrame.thisObject();
-		ReferenceType expected = getMainClass();
-		ReferenceType referenceType = object.referenceType();
-		assertEquals("1", expected, referenceType);
-	}
-	/**
-	 * Test JDI thread().
-	 */
-	public void testJDIThread() {
-		assertEquals("1", getThread(), fFrame.thread());
-	}
-	/**
-	 * Test JDI visibleVariableByName(String).
-	 */
-	public void testJDIVisibleVariableByName() {
-		LocalVariable var = null;
-		try {
-			var = fFrame.visibleVariableByName("t");
-		} catch (AbsentInformationException e) {
-			assertTrue("1", false);
-		}
-		assertEquals("2", getLocalVariable(), var);
-		try {
-			var = fFrame.visibleVariableByName("bogus");
-		} catch (AbsentInformationException e) {
-			assertTrue("3", false);
-		}
-		assertTrue("4", null == var);
-	}
-	/**
-	 * Test JDI visibleVariables().
-	 */
-	public void testJDIVisibleVariables() {
-		List vars = null;
-		try {
-			vars = fFrame.visibleVariables();
-		} catch (AbsentInformationException e) {
-			assertTrue("1", false);
-		}
-		assertEquals("2", 2, vars.size());
-
-		LocalVariable var;
-		int i = 0;
-		do {
-			var = (LocalVariable) vars.get(i++);
-		} while (!var.name().equals("t"));
-		assertEquals("3", getLocalVariable(), var);
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StepEventTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StepEventTest.java
deleted file mode 100644
index 78ea55a..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StepEventTest.java
+++ /dev/null
@@ -1,173 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.ClassType;
-import com.sun.jdi.ThreadReference;
-import com.sun.jdi.event.StepEvent;
-import com.sun.jdi.request.EventRequest;
-import com.sun.jdi.request.StepRequest;
-
-/**
- * Tests for JDI com.sun.jdi.event.StepEvent.
- */
-public class StepEventTest extends AbstractJDITest {
-
-	private StepEvent fStepEvent;
-	/**
-	 * Creates a new test.
-	 */
-	public StepEventTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Trigger a step event
-		fStepEvent = triggerStepAndWait();
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// The test has resumed the test thread, so suspend it
-		waitUntilReady();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new StepEventTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.event.StepEvent";
-	}
-	/**
-	 * Test JDI thread().
-	 */
-	public void testJDIThread() {
-		assertEquals("1", "Test Thread", fStepEvent.thread().name());
-	}
-	/**
-	 * Test all possible steps.
-	 */
-	public void testJDIVariousSteps() {
-		ThreadReference thread = getThread();
-		triggerStepAndWait(thread, StepRequest.STEP_MIN, StepRequest.STEP_INTO);
-		waitUntilReady();
-		triggerStepAndWait(thread, StepRequest.STEP_MIN, StepRequest.STEP_OVER);
-		waitUntilReady();
-		triggerStepAndWait(thread, StepRequest.STEP_LINE, StepRequest.STEP_INTO);
-		waitUntilReady();
-		triggerStepAndWait(thread, StepRequest.STEP_LINE, StepRequest.STEP_OVER);
-		waitUntilReady();
-		triggerStepAndWait(thread, StepRequest.STEP_LINE, StepRequest.STEP_OUT);
-		waitUntilReady();
-	}
-
-	public void testJDIClassFilter1() {
-		// Request for step events
-		StepRequest request = getRequest();
-		request.addClassFilter("java.lang.NegativeArraySizeException");
-		request.enable();
-		StepEvent event = null;
-		try {
-			event = triggerStepAndWait(getThread(), request, 1000);
-		} catch (Error e) {
-		}
-		if (event != null) {
-			assertTrue("1", false);
-		}
-		waitUntilReady();
-		fVM.eventRequestManager().deleteEventRequest(request);
-
-		request = getRequest();
-		request.addClassFilter("java.lang.*");
-		request.enable();
-		event = null;
-		try {
-			event = triggerStepAndWait(getThread(), request, 1000);
-		} catch (Error e) {
-		}
-		if (event != null) {
-			assertTrue("1", false);
-		}
-		waitUntilReady();
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public void testJDIClassFilter2() {
-		// Request for step events
-		StepRequest request = getRequest();
-		ClassType clazz = getClass("java.lang.NegativeArraySizeException");
-		request.addClassFilter(clazz);
-		request.enable();
-		StepEvent event = null;
-		try {
-			event = triggerStepAndWait(getThread(), request, 1000);
-		} catch (Error e) {
-		}
-		if (event != null) {
-			assertTrue("1", false);
-		}
-		waitUntilReady();
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public void testJDIClassExclusionFilter1() {
-		// Request for step events
-		StepRequest request = getRequest();
-		request.addClassExclusionFilter(
-			"org.eclipse.debug.jdi.tests.program.MainClass");
-		request.enable();
-		StepEvent event = null;
-		try {
-			event = triggerStepAndWait(getThread(), request, 1000);
-		} catch (Error e) {
-		}
-		if (event != null) {
-			assertTrue("1", false);
-		}
-		waitUntilReady();
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public void testJDIClassExclusionFilter2() {
-		StepRequest request = getRequest();
-		request.addClassExclusionFilter("org.eclipse.*");
-		request.addClassExclusionFilter("java.lang.*");
-		request.enable();
-		StepEvent event = null;
-		try {
-			event = triggerStepAndWait(getThread(), request, 1000);
-		} catch (Error e) {
-		}
-		if (event != null) {
-			System.out.println(event.location().declaringType());
-			assertTrue("1", false);
-		}
-		waitUntilReady();
-		fVM.eventRequestManager().deleteEventRequest(request);
-	}
-
-	public StepRequest getRequest() {
-		StepRequest eventRequest =
-			fVM.eventRequestManager().createStepRequest(
-				getThread(),
-				StepRequest.STEP_LINE,
-				StepRequest.STEP_OVER);
-		eventRequest.addCountFilter(1);
-		eventRequest.setSuspendPolicy(EventRequest.SUSPEND_NONE);
-		return eventRequest;
-	}
-
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StringReferenceTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StringReferenceTest.java
deleted file mode 100644
index e245a22..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StringReferenceTest.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.StringReference;
-
-/**
- * Tests for JDI com.sun.jdi.StringReference
- * and JDWP String command set.
- */
-public class StringReferenceTest extends AbstractJDITest {
-
-	private StringReference fString;
-	/**
-	 * Creates a new test.
-	 */
-	public StringReferenceTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get static field "fString"
-		fString = getStringReference();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new StringReferenceTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.StringReference";
-	}
-	/**
-	 * Test JDI value() and JDWP 'String - Get value'.
-	 */
-	public void testJDIValue() {
-		String value = fString.value();
-		assertEquals("1", "Hello World", value);
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TestAll.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TestAll.java
deleted file mode 100644
index 9b6f036..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TestAll.java
+++ /dev/null
@@ -1,161 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
-import java.util.Enumeration;
-import java.util.Vector;
-
-/**
- * Run all tests
- */
-public class TestAll {
-/**
- * Returns all the test case classes (a Vector of Class) that are
- * relevant for the given VM information.
- * NB1: This doesn't include the VirtualMachineTest class.
- * NB2: The last element must be the VMDeathEventTest class since 
- *      it shuts the VM down.
- */
-protected static Vector getAllTestCases(VMInformation info) {
-	Vector classes = new Vector();
-	classes.addElement(AccessibleTest.class);
-	classes.addElement(ArrayReferenceTest.class);
-	classes.addElement(ArrayTypeTest.class);
-	classes.addElement(BooleanValueTest.class);
-	classes.addElement(BreakpointRequestTest.class);
-	classes.addElement(ByteValueTest.class);
-	classes.addElement(CharValueTest.class);
-	classes.addElement(ClassLoaderReferenceTest.class);
-	classes.addElement(ClassPrepareEventTest.class);
-	classes.addElement(ClassPrepareRequestTest.class);
-	classes.addElement(ClassTypeTest.class);
-	classes.addElement(DoubleValueTest.class);
-	classes.addElement(EventRequestManagerTest.class);
-	classes.addElement(EventRequestTest.class);
-	classes.addElement(EventTest.class);
-	classes.addElement(ExceptionEventTest.class);
-	classes.addElement(ExceptionRequestTest.class);
-	classes.addElement(FieldTest.class);
-	classes.addElement(FloatValueTest.class);
-	classes.addElement(HotCodeReplacementTest.class);
-	classes.addElement(IntegerValueTest.class);
-	classes.addElement(InterfaceTypeTest.class);
-	classes.addElement(LocalVariableTest.class);
-	classes.addElement(LocatableTest.class);
-	classes.addElement(LocationTest.class);
-	classes.addElement(LongValueTest.class);
-	classes.addElement(MethodTest.class);
-	classes.addElement(MethodEntryRequestTest.class);
-	classes.addElement(MethodExitRequestTest.class);
-	classes.addElement(MirrorTest.class);
-
-	if (info.fVM.canWatchFieldModification())
-		classes.addElement(ModificationWatchpointEventTest.class);
-		
-	classes.addElement(ObjectReferenceTest.class);
-	classes.addElement(PrimitiveValueTest.class);
-	classes.addElement(ReferenceTypeTest.class);
-	classes.addElement(ShortValueTest.class);
-	classes.addElement(StackFrameTest.class);
-	classes.addElement(StepEventTest.class);
-	classes.addElement(StringReferenceTest.class);
-	classes.addElement(ThreadDeathEventTest.class);
-	classes.addElement(ThreadGroupReferenceTest.class);
-	classes.addElement(ThreadReferenceTest.class);
-	classes.addElement(ThreadStartEventTest.class);
-	classes.addElement(TypeComponentTest.class);
-	classes.addElement(TypeTest.class);
-	classes.addElement(ValueTest.class);
-
-	if (info.fVM.canWatchFieldAccess() && info.fVM.canWatchFieldModification()) {
-		classes.addElement(WatchpointEventTest.class);
-		classes.addElement(WatchpointRequestTest.class);
-	}
-
-	classes.addElement(VirtualMachineExitTest.class);
-	classes.addElement(VMDisconnectEventTest.class);
-	classes.addElement(VMDisposeTest.class);	// note that this test does not restore the state properly.
-	return classes;
-}
-/**
- * Run all tests with the given arguments.
- * @see AbstractJDITest.parseArgs(String[]) for details on the arguments.
- */
-public static void main(String[] arguments) throws Throwable {
-	// Create test result
-	TextTestResult result= new TextTestResult();
-
-	// Run the VirtualMachineTest
-	AbstractJDITest test= run(result, VirtualMachineTest.class, arguments, null);
-
-	// Was it possible to run the first test?
-	if (test == null)
-		return;
-	
-	// Get the VM info
-	VMInformation info = test.getVMInfo();
-
-	// Get all test cases
-	Vector classes= getAllTestCases(info);
-
-	// Run the other tests
-	Enumeration enumeration= classes.elements();
-	while (enumeration.hasMoreElements()) {
-		Class testClass= (Class)enumeration.nextElement();
-		test= run(result, testClass, arguments, info);
-		info= test.getVMInfo(); // In case the test has changed this info
-	}
-
-	// Shut down the VM 
-	test.shutDownTarget();
-
-	// Show the result
-	result.print();
-}
-/**
- * Runs the given test with the given arguments.
- * Returns the instance that was created.
- * Returns null if there was a problem with the arguments.
- * @see AbstractJDITest(String[]) for details on the arguments.
- */
-private static AbstractJDITest run(junit.framework.TestResult result, Class testClass, String[] arguments, VMInformation info) throws Throwable {
-	// Create test
-	Class[] argTypes= {};
-	Constructor construct = null;
-	try {
-		construct = testClass.getConstructor(argTypes);
-	} catch (NoSuchMethodException e) {
-	}
-	AbstractJDITest test = null;
-	try {
-		test = (AbstractJDITest) construct.newInstance(new Object[]{});
-	} catch (InstantiationException e) {
-	} catch (IllegalAccessException e) {
-	} catch (InvocationTargetException e) {
-		throw e.getTargetException();
-	}
-	if (!test.parseArgs(arguments))
-		return null;
-	test.setVMInfo(info);
-	test.setInControl(false);
-
-	// Run test
-	System.out.println("\n" + new java.util.Date());
-	System.out.println("Begin testing " + test.getName() + "...");
-	long startTime= System.currentTimeMillis();
-	test.suite().run(result);
-	long endTime= System.currentTimeMillis();
-	long runTime= endTime-startTime;
-	System.out.println("\nTime: "+runTime/1000+"."+runTime%1000);
-	System.out.println("Done testing " + test.getName() + ".");
-	
-	return test;
-}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TextTestResult.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TextTestResult.java
deleted file mode 100644
index efa2dbb..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TextTestResult.java
+++ /dev/null
@@ -1,105 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.Enumeration;
-
-import junit.framework.AssertionFailedError;
-import junit.framework.Test;
-import junit.framework.TestFailure;
-import junit.framework.TestResult;
-
-class TextTestResult extends TestResult {
-
-	public synchronized void addError(Test test, Throwable t) {
-		super.addError(test, t);
-		System.out.println("E");
-	}
-	public synchronized void addFailure(Test test, AssertionFailedError t) {
-		super.addFailure(test, t);
-		System.out.print("F");
-	}
-	/**
-	 * Prints failures to the standard output
-	 */
-	public synchronized void print() {
-		printHeader();
-		printErrors();
-		printFailures();
-	}
-	/**
-	 * Prints the errors to the standard output
-	 */
-	public void printErrors() {
-		if (errorCount() != 0) {
-			if (errorCount() == 1)
-				System.out.println("There was " + errorCount() + " error:");
-			else
-				System.out.println("There were " + errorCount() + " errors:");
-
-			int i = 1;
-			for (Enumeration e = errors(); e.hasMoreElements(); i++) {
-				TestFailure failure = (TestFailure) e.nextElement();
-				System.out.println(i + ") " + failure.failedTest());
-				failure.thrownException().printStackTrace();
-				System.out.println();
-			}
-		}
-	}
-	/**
-	 * Prints failures to the standard output
-	 */
-	public void printFailures() {
-		if (failureCount() != 0) {
-			if (failureCount() == 1)
-				System.out.println("There was " + failureCount() + " failure:");
-			else
-				System.out.println(
-					"There were " + failureCount() + " failures:");
-
-			int i = 1;
-			for (Enumeration e = failures(); e.hasMoreElements(); i++) {
-				TestFailure failure = (TestFailure) e.nextElement();
-				System.out.print(i + ") " + failure.failedTest());
-				Throwable t = failure.thrownException();
-				if (t.getMessage() != null)
-					System.out.println(" \"" + t.getMessage() + "\"");
-				else {
-					System.out.println();
-					failure.thrownException().printStackTrace();
-				}
-			}
-		}
-	}
-	/**
-	 * Prints the header of the report
-	 */
-	public void printHeader() {
-		if (wasSuccessful()) {
-			System.out.println();
-			System.out.print("OK");
-			System.out.println(" (" + runCount() + " tests)");
-
-		} else {
-			System.out.println();
-			System.out.println("!!!FAILURES!!!");
-			System.out.println("Test Results:");
-			System.out.println(
-				"Run: "
-					+ runCount()
-					+ " Failures: "
-					+ failureCount()
-					+ " Errors: "
-					+ errorCount());
-		}
-	}
-	public synchronized void startTest(Test test) {
-		super.startTest(test);
-		System.out.print(".");
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadDeathEventTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadDeathEventTest.java
deleted file mode 100644
index 6bb1e07..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadDeathEventTest.java
+++ /dev/null
@@ -1,74 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.ObjectCollectedException;
-import com.sun.jdi.event.ThreadDeathEvent;
-
-/**
- * Tests for JDI com.sun.jdi.event.ThreadDeathEvent.
- */
-public class ThreadDeathEventTest extends AbstractJDITest {
-
-	private ThreadDeathEvent fEvent;
-	/**
-	 * Creates a new test.
-	 */
-	public ThreadDeathEventTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Make sure the entire VM is not suspended before we start a new thread
-		// (otherwise this new thread will start suspended and we will never get the
-		// ThreadDeath event)
-		fVM.resume();
-
-		// Trigger a thread end event
-		fEvent =
-			(ThreadDeathEvent) triggerAndWait(fVM
-				.eventRequestManager()
-				.createThreadDeathRequest(),
-				"ThreadDeathEvent",
-				true);
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// The test has resumed the test thread, so suspend it
-		waitUntilReady();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ThreadDeathEventTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.event.ThreadDeathEvent";
-	}
-	/**
-	 * Test JDI thread().
-	 */
-	public void testJDIThread() {
-		try {
-			assertEquals(
-				"1",
-				"Test Thread Death Event",
-				fEvent.thread().name());
-		} catch (ObjectCollectedException e) {
-			// Workaround known problem in Sun's VM
-		}
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadGroupReferenceTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadGroupReferenceTest.java
deleted file mode 100644
index 27017fa..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadGroupReferenceTest.java
+++ /dev/null
@@ -1,103 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.List;
-import java.util.ListIterator;
-
-import com.sun.jdi.ThreadGroupReference;
-import com.sun.jdi.ThreadReference;
-
-/**
- * Tests for JDI com.sun.jdi.ThreadGroupReference
- * and JDWP ThreadGroup command set.
- */
-public class ThreadGroupReferenceTest extends AbstractJDITest {
-
-	private ThreadGroupReference fThreadGroup;
-	/**
-	 * Creates a new test.
-	 */
-	public ThreadGroupReferenceTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get value of "fThread"
-		ThreadReference thread = getThread();
-
-		// Get its threadgroup
-		fThreadGroup = thread.threadGroup();
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// The test has resumed the thread group, and so the test thread, so suspend it
-		waitUntilReady();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ThreadGroupReferenceTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.ThreadGroupReference";
-	}
-	/**
-	 * Test JDI name() and JDWP 'ThreadGroup - Get name'.
-	 */
-	public void testJDIName() {
-		assertEquals("1", "Test ThreadGroup", fThreadGroup.name());
-	}
-	/**
-	 * Test JDI parent() and JDWP 'ThreadGroup - Get parent'.
-	 */
-	public void testJDIParent() {
-		ThreadGroupReference systemThreadGroup = fThreadGroup.parent();
-		assertNotNull("1", systemThreadGroup);
-		assertEquals("2", "main", systemThreadGroup.name());
-		// assertTrue("3", systemThreadGroup.parent() == null);
-	}
-	/**
-	 * Test JDI suspend() and resume().
-	 */
-	public void testJDISuspendResume() {
-		fThreadGroup.suspend();
-		fThreadGroup.resume();
-	}
-	/**
-	 * Test JDI threadGroups().
-	 */
-	public void testJDIThreadGroups() {
-		List threadGroups = fThreadGroup.threadGroups();
-		assertEquals("1", 0, threadGroups.size());
-	}
-	/**
-	 * Test JDI threads() and JDWP 'ThreadGroup - Get children'.
-	 */
-	public void testJDIThreads() {
-		List threads = fThreadGroup.threads();
-		ListIterator iterator = threads.listIterator();
-		boolean isIncluded = false;
-		while (iterator.hasNext()) {
-			ThreadReference thread = (ThreadReference) iterator.next();
-			if (thread.name().equals("Test Thread")) {
-				isIncluded = true;
-				break;
-			}
-		}
-		assertTrue("1", isIncluded);
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadReferenceTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadReferenceTest.java
deleted file mode 100644
index e4818fa..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadReferenceTest.java
+++ /dev/null
@@ -1,224 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.List;
-
-import com.sun.jdi.ClassNotLoadedException;
-import com.sun.jdi.ClassType;
-import com.sun.jdi.IncompatibleThreadStateException;
-import com.sun.jdi.InvalidTypeException;
-import com.sun.jdi.InvocationException;
-import com.sun.jdi.Method;
-import com.sun.jdi.ObjectReference;
-import com.sun.jdi.StackFrame;
-import com.sun.jdi.ThreadReference;
-import com.sun.jdi.event.ThreadStartEvent;
-
-/**
- * Tests for JDI com.sun.jdi.ThreadReference
- * and JDWP Thread command set.
- */
-public class ThreadReferenceTest extends AbstractJDITest {
-
-	private ThreadReference fThread;
-	/**
-	 * Creates a new test .
-	 */
-	public ThreadReferenceTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get thread
-		fThread = getThread();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ThreadReferenceTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.ThreadReference";
-	}
-	/**
-	 * Test JDI currentContendedMonitor().
-	 */
-	public void testJDICurrentContendedMonitor() {
-		if (fVM.canGetCurrentContendedMonitor()) {
-			try {
-				assertTrue("1", fThread.currentContendedMonitor() == null);
-			} catch (IncompatibleThreadStateException e) {
-				assertTrue("2", false);
-			}
-		}
-	}
-	/**
-	 * Test JDI frame(int).
-	 */
-	public void testJDIFrame() {
-		try {
-			StackFrame frame = fThread.frame(0);
-			assertTrue("1", fThread.frames().contains(frame));
-		} catch (IncompatibleThreadStateException e) {
-			assertTrue("2", false);
-		}
-	}
-	/**
-	 * Test JDI frameCount.
-	 */
-	public void testJDIFrameCount() {
-		try {
-			int count = fThread.frameCount();
-			assertTrue("1", count <= 4);
-		} catch (IncompatibleThreadStateException e) {
-			assertTrue("2", false);
-		}
-	}
-	/**
-	 * Test JDI frames() and JDWP 'Thread - Get frames'.
-	 */
-	public void testJDIFrames() {
-		List frames = null;
-		try {
-			frames = fThread.frames();
-		} catch (IncompatibleThreadStateException e) {
-			assertTrue("1", false);
-		}
-		assertTrue("2", frames.size() > 0);
-	}
-	/**
-	 * Test JDI interrupt()().
-	 */
-	public void testJDIInterrupt() {
-		assertEquals("1", 1, fThread.suspendCount());
-		fThread.interrupt();
-		assertEquals("2", 1, fThread.suspendCount());
-	}
-	/**
-	 * Test JDI isAtBreakpoint().
-	 */
-	public void testJDIIsAtBreakpoint() {
-		assertTrue("1", !fThread.isAtBreakpoint());
-	}
-	/**
-	 * Test JDI isSuspended().
-	 */
-	public void testJDIIsSuspended() {
-		assertTrue("1", fThread.isSuspended());
-	}
-	/**
-	 * Test JDI name() and JDWP 'Thread - Get name'.
-	 */
-	public void testJDIName() {
-		assertEquals("1", "Test Thread", fThread.name());
-	}
-	/**
-	 * Test JDI ownedMonitors().
-	 */
-	public void testJDIOwnedMonitors() {
-		if (fVM.canGetOwnedMonitorInfo()) {
-			waitUntilReady();
-			try {
-				assertEquals("1", 1, fThread.ownedMonitors().size());
-			} catch (IncompatibleThreadStateException e) {
-				assertTrue("2", false);
-			}
-		}
-	}
-	/**
-	 * Test JDI status() and JDWP 'Thread - Get status'.
-	 */
-	public void testJDIStatus() {
-		int status = fThread.status();
-		assertTrue(
-			"1",
-			((status == ThreadReference.THREAD_STATUS_RUNNING)
-				|| (status == ThreadReference.THREAD_STATUS_SLEEPING)
-				|| (status == ThreadReference.THREAD_STATUS_WAIT)));
-	}
-	/**
-	 * Test JDI stop(ObjectReference).
-	 */
-	public void testJDIStop() {
-		// Make sure the entire VM is not suspended before we start a new thread
-		// (otherwise this new thread will start suspended and we will never get the
-		// ThreadStart event)
-		fVM.resume();
-
-		// Trigger a thread start event to get a new thread
-		ThreadStartEvent event =
-			(ThreadStartEvent) triggerAndWait(fVM
-				.eventRequestManager()
-				.createThreadStartRequest(),
-				"ThreadStartEvent",
-				false);
-		ThreadReference thread = event.thread();
-
-		// Create a java.lang.ThreadDeath instance in 
-		java.util.List classes = fVM.classesByName("java.lang.ThreadDeath");
-		assertTrue("1", classes.size() != 0);
-		ClassType threadDeathClass = (ClassType) classes.get(0);
-		Method constructor =
-			threadDeathClass.concreteMethodByName("<init>", "()V");
-		ObjectReference threadDeath = null;
-		try {
-			threadDeath =
-				threadDeathClass.newInstance(
-					thread,
-					constructor,
-					new java.util.LinkedList(),
-					ClassType.INVOKE_SINGLE_THREADED);
-			threadDeath.disableCollection();
-			// This object is going to be used for the lifetime of the VM.
-		} catch (ClassNotLoadedException e) {
-			assertTrue("2", false);
-		} catch (InvalidTypeException e) {
-			assertTrue("3", false);
-		} catch (InvocationException e) {
-			assertTrue("4", false);
-		} catch (IncompatibleThreadStateException e) {
-			assertTrue("5", false);
-		}
-
-		// Stop the thread
-		try {
-			thread.stop(threadDeath);
-		} catch (InvalidTypeException e) {
-			assertTrue("6", false);
-		}
-
-		waitUntilReady();
-
-	}
-	/**
-	 * Test JDI suspend() and resume() 
-	 * and JDWP 'Thread - Suspend' and 'Thread - Resume'.
-	 */
-	public void testJDISuspendResume() {
-		assertEquals("1", 1, fThread.suspendCount());
-		fThread.resume();
-		assertTrue("2", !fThread.isSuspended());
-		fThread.suspend();
-		assertTrue("3", fThread.isSuspended());
-
-		waitUntilReady();
-	}
-	/**
-	 * Test JDI threadGroup() and JDWP 'Thread - Get threadGroup'.
-	 */
-	public void testJDIThreadGroup() {
-		assertNotNull("1", fThread.threadGroup());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadStartEventTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadStartEventTest.java
deleted file mode 100644
index c8cd575..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ThreadStartEventTest.java
+++ /dev/null
@@ -1,66 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.event.ThreadStartEvent;
-
-/**
- * Tests for JDI com.sun.jdi.event.ThreadStartEvent.
- */
-public class ThreadStartEventTest extends AbstractJDITest {
-
-	private ThreadStartEvent fEvent;
-	/**
-	 * Creates a new test.
-	 */
-	public ThreadStartEventTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Make sure the entire VM is not suspended before we start a new thread
-		// (otherwise this new thread will start suspended and we will never get the
-		// ThreadStart event)
-		fVM.resume();
-
-		// Trigger a thread start event
-		fEvent =
-			(ThreadStartEvent) triggerAndWait(fVM
-				.eventRequestManager()
-				.createThreadStartRequest(),
-				"ThreadStartEvent",
-				true);
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// The test has resumed the test thread, so suspend it
-		waitUntilReady();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ThreadStartEventTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.event.ThreadStartEvent";
-	}
-	/**
-	 * Test JDI thread().
-	 */
-	public void testJDIThread() {
-		assertEquals("1", "Test Thread Start Event", fEvent.thread().name());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TypeComponentTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TypeComponentTest.java
deleted file mode 100644
index 992a18f..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TypeComponentTest.java
+++ /dev/null
@@ -1,101 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.ReferenceType;
-import com.sun.jdi.TypeComponent;
-
-/**
- * Tests for JDI com.sun.jdi.TypeComponent.
- */
-public class TypeComponentTest extends AbstractJDITest {
-
-	private TypeComponent fField, fMethod;
-	/**
-	 * Creates a new test.
-	 */
-	public TypeComponentTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get field fObject in org.eclipse.debug.jdi.tests.program.MainClass
-		fField = getField();
-
-		// Get method print(OutputStream)
-		fMethod = getMethod();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new TypeComponentTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.TypeComponent";
-	}
-	/**
-	 * Test JDI declaringType().
-	 */
-	public void testJDIDeclaringType() {
-		ReferenceType mainClass = getMainClass();
-
-		ReferenceType declaringType = fField.declaringType();
-		assertEquals("1", mainClass, declaringType);
-
-		declaringType = fMethod.declaringType();
-		assertEquals("2", mainClass, declaringType);
-	}
-	/**
-	 * Test JDI isFinal().
-	 */
-	public void testJDIIsFinal() {
-		assertTrue("1", !fField.isFinal());
-		assertTrue("2", !fMethod.isFinal());
-	}
-	/**
-	 * Test JDI isStatic().
-	 */
-	public void testJDIIsStatic() {
-		assertTrue("1", fField.isStatic());
-		assertTrue("2", !fMethod.isStatic());
-	}
-	/**
-	 * Test JDI isSynthetic().
-	 */
-	public void testJDIIsSynthetic() {
-		if (!fVM.canGetSyntheticAttribute()) {
-			return;
-		}
-
-		assertTrue("1", !fField.isSynthetic());
-		assertTrue("2", !fMethod.isSynthetic());
-	}
-	/**
-	 * Test JDI name().
-	 */
-	public void testJDIName() {
-		assertEquals("1", "fObject", fField.name());
-		assertEquals("2", "print", fMethod.name());
-	}
-	/**
-	 * Test JDI signature().
-	 */
-	public void testJDISignature() {
-		assertEquals(
-			"1",
-			"Lorg/eclipse/debug/jdi/tests/program/MainClass;",
-			fField.signature());
-		assertEquals("2", "(Ljava/io/OutputStream;)V", fMethod.signature());
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TypeTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TypeTest.java
deleted file mode 100644
index 19e4336..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TypeTest.java
+++ /dev/null
@@ -1,181 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.BooleanType;
-import com.sun.jdi.ByteType;
-import com.sun.jdi.CharType;
-import com.sun.jdi.DoubleType;
-import com.sun.jdi.FloatType;
-import com.sun.jdi.IntegerType;
-import com.sun.jdi.LongType;
-import com.sun.jdi.ShortType;
-import com.sun.jdi.Type;
-
-/**
- * Tests for JDI com.sun.jdi.Type.
- */
-public class TypeTest extends AbstractJDITest {
-	private Type 		
-		fArrayType,
-		fClassType,
-		fInterfaceType,
-		// primitive types
-		fShortType,
-		fByteType,
-		fIntegerType,
-		fLongType,
-		fFloatType,
-		fDoubleType,
-		fCharType,
-		fBooleanType,
-		// One-dimensional primitive arrays
-		fByteArrayType,
-		fShortArrayType,
-		fIntArrayType,
-		fLongArrayType,
-		fFloatArrayType,
-		fDoubleArrayType,
-		fCharArrayType,
-		fBooleanArrayType,
-		// Two-dimensional primitive arrays
-		fByteDoubleArrayType,
-		fShortDoubleArrayType,
-		fIntDoubleArrayType,
-		fLongDoubleArrayType,
-		fFloatDoubleArrayType,
-		fDoubleDoubleArrayType,
-		fCharDoubleArrayType,
-		fBooleanDoubleArrayType;
-		
-	/**
-	 * Creates a new test.
-	 */
-	public TypeTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get reference types
-		fArrayType = getArrayType();
-		fClassType = getMainClass();
-		fInterfaceType = getInterfaceType();
-		// Get primitive types
-		fBooleanType = (BooleanType) (fVM.mirrorOf(true).type());
-		fByteType = (ByteType) (fVM.mirrorOf((byte) 1).type());
-		fCharType = (CharType) (fVM.mirrorOf('a').type());
-		fDoubleType = (DoubleType) (fVM.mirrorOf(12345.6789).type());
-		fFloatType = (FloatType) (fVM.mirrorOf(12345.6789f).type());
-		fIntegerType = (IntegerType) (fVM.mirrorOf(12345).type());
-		fLongType = (LongType) (fVM.mirrorOf(123456789l).type());
-		fShortType = (ShortType) (fVM.mirrorOf((short) 12345).type());
-		// Get one-dimensional primitive arrays
-		fByteArrayType = getByteArrayType();
-		fShortArrayType = getShortArrayType();
-		fIntArrayType = getIntArrayType();
-		fLongArrayType = getLongArrayType();
-		fFloatArrayType = getFloatArrayType();
-		fDoubleArrayType = getDoubleArrayType();
-		fCharArrayType = getCharArrayType();
-		fBooleanArrayType = getBooleanArrayType();
-		//  Get two-dimensional primitive arrays
-		fByteDoubleArrayType = getByteDoubleArrayType();
-		fShortDoubleArrayType = getShortDoubleArrayType();
-		fIntDoubleArrayType = getIntDoubleArrayType();
-		fLongDoubleArrayType = getLongDoubleArrayType();
-		fFloatDoubleArrayType = getFloatDoubleArrayType();
-		fDoubleDoubleArrayType = getDoubleDoubleArrayType();
-		fCharDoubleArrayType = getCharDoubleArrayType();
-		fBooleanDoubleArrayType = getBooleanDoubleArrayType();
-
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new TypeTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.Type";
-	}
-	/**
-	 * Test JDI signature().
-	 */
-	public void testJDISignature() {
-		assertEquals("1", "[Ljava/lang/String;", fArrayType.signature());
-		assertEquals("2", "Lorg/eclipse/debug/jdi/tests/program/MainClass;", fClassType.signature());
-		assertEquals("3", "Lorg/eclipse/debug/jdi/tests/program/Printable;", fInterfaceType.signature());
-		// Primitive types
-		assertEquals("4", "S", fShortType.signature());
-		assertEquals("5", "B", fByteType.signature());
-		assertEquals("6", "I", fIntegerType.signature());
-		assertEquals("7", "J", fLongType.signature());
-		assertEquals("8", "F", fFloatType.signature());
-		assertEquals("9", "D", fDoubleType.signature());
-		assertEquals("10", "C", fCharType.signature());
-		assertEquals("11", "Z", fBooleanType.signature());
-		// One-dimensional primitive arrays
-		assertEquals("12", "[B", fByteArrayType.signature());
-		assertEquals("13", "[S", fShortArrayType.signature());
-		assertEquals("14", "[I", fIntArrayType.signature());
-		assertEquals("15", "[J", fLongArrayType.signature());
-		assertEquals("16", "[F", fFloatArrayType.signature());
-		assertEquals("17", "[D", fDoubleArrayType.signature());
-		assertEquals("18", "[C", fCharArrayType.signature());
-		assertEquals("19", "[Z", fBooleanArrayType.signature());
-		// Two-dimensional primitive arrays
-		assertEquals("20", "[[B", fByteDoubleArrayType.signature());
-		assertEquals("21", "[[S", fShortDoubleArrayType.signature());
-		assertEquals("22", "[[I", fIntDoubleArrayType.signature());
-		assertEquals("23", "[[J", fLongDoubleArrayType.signature());
-		assertEquals("24", "[[F", fFloatDoubleArrayType.signature());
-		assertEquals("25", "[[D", fDoubleDoubleArrayType.signature());
-		assertEquals("26", "[[C", fCharDoubleArrayType.signature());
-		assertEquals("27", "[[Z", fBooleanDoubleArrayType.signature());
-	}
-	/**
-	 * Test JDI typeName().
-	 */
-	public void testJDITypeName() {
-		assertEquals("1", "java.lang.String[]", fArrayType.name());
-		assertEquals("2", "org.eclipse.debug.jdi.tests.program.MainClass", fClassType.name());
-		assertEquals("3", "org.eclipse.debug.jdi.tests.program.Printable", fInterfaceType.name());
-		// Primitive types
-		assertEquals("4", "byte", fByteType.name());
-		assertEquals("5", "short", fShortType.name());
-		assertEquals("6", "int", fIntegerType.name());
-		assertEquals("7", "long", fLongType.name());
-		assertEquals("8", "float", fFloatType.name());
-		assertEquals("9", "double", fDoubleType.name());
-		assertEquals("10", "char", fCharType.name());
-		assertEquals("11", "boolean", fBooleanType.name());
-		// One-dimensional primitive arrays
-		assertEquals("12", "byte[]", fByteArrayType.name());
-		assertEquals("13", "short[]", fShortArrayType.name());
-		assertEquals("14", "int[]", fIntArrayType.name());
-		assertEquals("15", "long[]", fLongArrayType.name());
-		assertEquals("16", "float[]", fFloatArrayType.name());
-		assertEquals("17", "double[]", fDoubleArrayType.name());
-		assertEquals("18", "char[]", fCharArrayType.name());
-		assertEquals("19", "boolean[]", fBooleanArrayType.name());
-		// Two-dimensional primitive arrays
-		assertEquals("20", "byte[][]", fByteDoubleArrayType.name());
-		assertEquals("21", "short[][]", fShortDoubleArrayType.name());
-		assertEquals("22", "int[][]", fIntDoubleArrayType.name());
-		assertEquals("23", "long[][]", fLongDoubleArrayType.name());
-		assertEquals("24", "float[][]", fFloatDoubleArrayType.name());
-		assertEquals("25", "double[][]", fDoubleDoubleArrayType.name());
-		assertEquals("26", "char[][]", fCharDoubleArrayType.name());
-		assertEquals("27", "boolean[][]", fBooleanDoubleArrayType.name());
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisconnectEventTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisconnectEventTest.java
deleted file mode 100644
index 42eb921..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisconnectEventTest.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.event.VMDisconnectEvent;
-
-/**
- * Tests for JDI com.sun.jdi.event.VMDisconnectEvent.
- */
-public class VMDisconnectEventTest extends AbstractJDITest {
-
-	private VMDisconnectEvent fVMDisconnectEvent;
-	/**
-	 * Creates a new test.
-	 */
-	public VMDisconnectEventTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Prepare to receive the event
-		VMDisconnectEventWaiter waiter =
-			new VMDisconnectEventWaiter(null, true);
-		fEventReader.addEventListener(waiter);
-
-		// Trigger a vm death event by shutting down the VM
-		killVM();
-
-		// Wait for the event to come in
-		fVMDisconnectEvent = (VMDisconnectEvent) waitForEvent(waiter, 10000);
-		// Wait 10s max
-		fEventReader.removeEventListener(waiter);
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// Finish the shut down
-		shutDownTarget();
-
-		// Start up again
-		launchTargetAndStartProgram();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new VMDisconnectEventTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.event.VMDeathEvent";
-	}
-	/**
-	 * Test that we received the event.
-	 */
-	public void testJDIVMDeath() {
-		assertTrue("1", fVMDisconnectEvent != null);
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisconnectEventWaiter.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisconnectEventWaiter.java
deleted file mode 100644
index 6384f8b..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisconnectEventWaiter.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.event.VMDisconnectEvent;
-/**
- * Listen for VMDisconnectEvent.
- */
-public class VMDisconnectEventWaiter extends EventWaiter {
-	/**
-	 * Creates a VMDisconnectEventWaiter.
-	 */
-	public VMDisconnectEventWaiter(
-		com.sun.jdi.request.EventRequest request,
-		boolean shouldGo) {
-		super(request, shouldGo);
-	}
-	public boolean vmDisconnect(VMDisconnectEvent event) {
-		notifyEvent(event);
-		return fShouldGo;
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisposeTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisposeTest.java
deleted file mode 100644
index d6cc021..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMDisposeTest.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.VMDisconnectedException;
-
-/**
- * Tests for JDI com.sun.jdi.event.VMDisconnectEvent.
- */
-public class VMDisposeTest extends AbstractJDITest {
-	/**
-	 * Creates a new test.
-	 */
-	public VMDisposeTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new VMDisposeTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.VirtualMachine.dispose";
-	}
-	/**
-	 * Test that we received the event.
-	 */
-	public void testJDIVMDispose() {
-		fVM.dispose();
-		try {
-			fVM.allThreads();
-			assertTrue("1", false);
-		} catch (VMDisconnectedException e) {
-		}
-
-		try {
-			// Reconnect to running VM.
-			connectToVM();
-			fVM.allThreads();
-		} catch (VMDisconnectedException e) {
-			assertTrue("3", false);
-		}
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMInformation.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMInformation.java
deleted file mode 100644
index 56eba84..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VMInformation.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.VirtualMachine;
-
-/**
- * This class allows to hold on information about the VM
- * that we don't want to loose between 2 tests.
- */
-public class VMInformation {
-	VirtualMachine fVM;
-	Process fLaunchedVM;
-	EventReader fEventReader;
-	AbstractReader fConsoleReader;
-	String fVMType;
-
-	/** 
-	 * Creates a new VMInformation for the given vm, vm type, launched vm, event reader and console reader.
-	 */
-	VMInformation(VirtualMachine vm, String vmType, Process launchedVM, EventReader eventReader, AbstractReader consoleReader) {
-		fVM = vm;
-		fLaunchedVM = launchedVM;
-		fEventReader = eventReader;
-		fConsoleReader = consoleReader;
-		fVMType = vmType;
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ValueTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ValueTest.java
deleted file mode 100644
index 5f9990a..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ValueTest.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.Value;
-
-/**
- * Tests for JDI com.sun.jdi.Value.
- */
-public class ValueTest extends AbstractJDITest {
-	private Value fBoolean,
-		fByte,
-		fChar,
-		fDouble,
-		fFloat,
-		fInteger,
-		fLong,
-		fShort,
-		fArray,
-		fObject;
-	/**
-	 * Creates a new test.
-	 */
-	public ValueTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get primitive values
-		fBoolean = fVM.mirrorOf(true);
-		fByte = fVM.mirrorOf((byte) 1);
-		fChar = fVM.mirrorOf('a');
-		fDouble = fVM.mirrorOf(12345.6789);
-		fFloat = fVM.mirrorOf(12345.6789f);
-		fInteger = fVM.mirrorOf(12345);
-		fLong = fVM.mirrorOf(123456789l);
-		fShort = fVM.mirrorOf((short) 12345);
-
-		// Get object references
-		fArray = getObjectArrayReference();
-		fObject = getObjectReference();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new ValueTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.Value";
-	}
-	/**
-	 * Test JDI type().
-	 */
-	public void testJDIType() {
-		assertEquals("1", "boolean", fBoolean.type().name());
-		assertEquals("2", "byte", fByte.type().name());
-		assertEquals("3", "char", fChar.type().name());
-		assertEquals("4", "double", fDouble.type().name());
-		assertEquals("5", "float", fFloat.type().name());
-		assertEquals("6", "int", fInteger.type().name());
-		assertEquals("7", "long", fLong.type().name());
-		assertEquals("8", "short", fShort.type().name());
-		assertEquals("9", "java.lang.String[]", fArray.type().name());
-		assertEquals(
-			"10",
-			"org.eclipse.debug.jdi.tests.program.MainClass",
-			fObject.type().name());
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VirtualMachineExitTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VirtualMachineExitTest.java
deleted file mode 100644
index 976a6a8..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VirtualMachineExitTest.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.VMDisconnectedException;
-
-/**
- * Tests for JDI com.sun.jdi.VirtualMachine.exit().
- */
-public class VirtualMachineExitTest extends AbstractJDITest {
-	/**
-	 * Creates a new test .
-	 */
-	public VirtualMachineExitTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// Finish the shut down
-		shutDownTarget();
-
-		// Start up again
-		launchTargetAndStartProgram();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(String[] args) {
-		new VirtualMachineExitTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.VirtualMachine.exit(int)";
-	}
-	/**
-	 * Test JDI exit().
-	 */
-	public void testJDIExit() {
-		try {
-			fVM.exit(0);
-		} catch (VMDisconnectedException e) {
-			assertTrue("1", false);
-		}
-
-		try {
-			Thread.sleep(200);
-			assertTrue("2", !vmIsRunning());
-			fVM.allThreads();
-			assertTrue("3", false);
-		} catch (VMDisconnectedException e) {
-		} catch (InterruptedException e) {
-		}
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VirtualMachineTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VirtualMachineTest.java
deleted file mode 100644
index 568eb8a..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/VirtualMachineTest.java
+++ /dev/null
@@ -1,420 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Vector;
-
-import junit.framework.Test;
-
-import com.sun.jdi.BooleanValue;
-import com.sun.jdi.ByteValue;
-import com.sun.jdi.CharValue;
-import com.sun.jdi.DoubleValue;
-import com.sun.jdi.FloatValue;
-import com.sun.jdi.IntegerValue;
-import com.sun.jdi.LongValue;
-import com.sun.jdi.ReferenceType;
-import com.sun.jdi.ShortValue;
-import com.sun.jdi.StringReference;
-import com.sun.jdi.ThreadGroupReference;
-import com.sun.jdi.ThreadReference;
-
-/**
- * Tests for JDI com.sun.jdi.VirtualMachine
- * and JDWP VM command set.
- * 
- * Example of arguments:
- *   -launcher SunVMLauncher -address c:\jdk1.2.2\ -classpath d:\target
- */
-public class VirtualMachineTest extends AbstractJDITest {
-
-	/**
-	 * Creates a new test .
-	 */
-	public VirtualMachineTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new VirtualMachineTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.VirtualMachine";
-	}
-	/**
-	 * Don't start the program yet, so that the testNotStarted* tests can run before.
-	 */
-	protected void setUp() {
-		launchTargetAndConnectToVM();
-	}
-	/**
-	 * Starts the target program.
-	 * NB: This method is copied in this class only so that it can be invoked
-	 *     dynamically.
-	 */
-	public void startProgram() {
-		super.startProgram();
-	}
-	/**
-	 * Returns all tests 
-	 */
-	protected Test suite() {
-		JDITestSuite suite = new JDITestSuite(this);
-
-		// Tests that run before the program is started
-		Vector testNames = getAllMatchingTests("testNotStarted");
-		Iterator iterator = testNames.iterator();
-		while (iterator.hasNext()) {
-			String name = (String) iterator.next();
-			suite.addTest(new JDITestCase(this, name));
-		}
-
-		// The method that starts the program
-		suite.addTest(new JDITestCase(this, "startProgram"));
-
-		// Tests that run after the program has started
-		testNames = getAllMatchingTests("testStarted");
-		iterator = testNames.iterator();
-		while (iterator.hasNext()) {
-			String name = (String) iterator.next();
-			suite.addTest(new JDITestCase(this, name));
-		}
-
-		// All other tests
-		testNames = getAllMatchingTests("testJDI");
-		iterator = testNames.iterator();
-		while (iterator.hasNext()) {
-			String name = (String) iterator.next();
-			suite.addTest(new JDITestCase(this, name));
-		}
-
-		return suite;
-	}
-	/**
-	 * Test JDI canGetBytecodes().
-	 */
-	public void testJDICanGetBytecodes() {
-		fVM.canGetBytecodes();
-	}
-	/**
-	 * Test JDI canGetCurrentContendedMonitor().
-	 */
-	public void testJDICanGetCurrentContendedMonitor() {
-		fVM.canGetCurrentContendedMonitor();
-	}
-	/**
-	 * Test JDI canGetMonitorInfo().
-	 */
-	public void testJDICanGetMonitorInfo() {
-		fVM.canGetMonitorInfo();
-	}
-	/**
-	 * Test JDI canGetOwnedMonitorInfo().
-	 */
-	public void testJDICanGetOwnedMonitorInfo() {
-		fVM.canGetOwnedMonitorInfo();
-	}
-	/**
-	 * Test JDI canGetSyntheticAttribute().
-	 */
-	public void testJDICanGetSyntheticAttribute() {
-		//  This is optional functionality, thus this is not a failure
-		fVM.canGetSyntheticAttribute();
-	}
-	/**
-	 * Test JDI canWatchFieldAccess().
-	 */
-	public void testJDICanWatchFieldAccess() {
-		//  This is optional functionality, thus this is not a failure
-		fVM.canWatchFieldAccess();
-	}
-	/**
-	 * Test JDI canWatchFieldModification().
-	 */
-	public void testJDICanWatchFieldModification() {
-		//  This is optional functionality, thus this is not a failure
-		fVM.canWatchFieldModification();
-	}
-	/**
-	 * Test JDI eventQueue().
-	 */
-	public void testJDIEventQueue() {
-		assertNotNull("1", fVM.eventQueue());
-	}
-	/**
-	 * Test JDI eventRequestManager().
-	 */
-	public void testJDIEventRequestManager() {
-		assertNotNull("1", fVM.eventRequestManager());
-	}
-	/**
-	 * Test JDI mirrorOf(boolean).
-	 */
-	public void testJDIMirrorOfBoolean() {
-		boolean value = true;
-		BooleanValue mirror = fVM.mirrorOf(value);
-		assertTrue("1", value == mirror.value());
-	}
-	/**
-	 * Test JDI mirrorOf(byte).
-	 */
-	public void testJDIMirrorOfByte() {
-		byte value = 1;
-		ByteValue mirror = fVM.mirrorOf(value);
-		assertEquals("1", value, mirror.value());
-	}
-	/**
-	 * Test JDI mirrorOf(char).
-	 */
-	public void testJDIMirrorOfChar() {
-		char value = 'a';
-		CharValue mirror = fVM.mirrorOf(value);
-		assertEquals("1", value, mirror.value());
-	}
-	/**
-	 * Test JDI mirrorOf(double).
-	 */
-	public void testJDIMirrorOfDouble() {
-		double value = 12345.6789;
-		DoubleValue mirror = fVM.mirrorOf(value);
-		assertEquals("1", value, mirror.value(), 0);
-	}
-	/**
-	 * Test JDI mirrorOf(float).
-	 */
-	public void testJDIMirrorOfFloat() {
-		float value = 12345.6789f;
-		FloatValue mirror = fVM.mirrorOf(value);
-		assertEquals("1", value, mirror.value(), 0);
-	}
-	/**
-	 * Test JDI mirrorOf(int).
-	 */
-	public void testJDIMirrorOfInt() {
-		int value = 12345;
-		IntegerValue mirror = fVM.mirrorOf(value);
-		assertEquals("1", value, mirror.value());
-	}
-	/**
-	 * Test JDI mirrorOf(long).
-	 */
-	public void testJDIMirrorOfLong() {
-		long value = 1234567890l;
-		LongValue mirror = fVM.mirrorOf(value);
-		assertEquals("1", value, mirror.value());
-	}
-	/**
-	 * Test JDI mirrorOf(short).
-	 */
-	public void testJDIMirrorOfShort() {
-		short value = (short) 12345;
-		ShortValue mirror = fVM.mirrorOf(value);
-		assertEquals("1", value, mirror.value());
-	}
-	/**
-	 * Test JDI mirrorOf(String) and JDWP 'VM - Create String'.
-	 */
-	public void testJDIMirrorOfString() {
-		String testString = "Test";
-		StringReference newString = null;
-		newString = fVM.mirrorOf(testString);
-		assertEquals("1", newString.value(), testString);
-	}
-	/**
-	 * Test JDI setDebugTraceMode(int).
-	 */
-	public void testJDISetDebugTraceMode() {
-		fVM.setDebugTraceMode(com.sun.jdi.VirtualMachine.TRACE_ALL);
-		fVM.setDebugTraceMode(com.sun.jdi.VirtualMachine.TRACE_SENDS);
-		fVM.setDebugTraceMode(com.sun.jdi.VirtualMachine.TRACE_RECEIVES);
-		fVM.setDebugTraceMode(com.sun.jdi.VirtualMachine.TRACE_NONE);
-
-		// restore original value
-		fVM.setDebugTraceMode(fVMTraceFlags);
-	}
-	/**
-	 * Test JDI getVersion().
-	 */
-	public void testJDIVersion() {
-		String version = fVM.version();
-		assertTrue("1", version != null);
-	}
-	/**
-	 * Test JDI allClasses() and JDWP 'VM - Get all classes'
-	 * while the test program has not been started.
-	 */
-	public void testNotStartedAllClasses() {
-		List classes = fVM.allClasses();
-		Iterator iterator = classes.listIterator();
-		int i = 0;
-		while (iterator.hasNext())
-			assertTrue(Integer.toString(i++), iterator.next() instanceof ReferenceType);
-	}
-	/**
-	 * Test JDI allThreads() and JDWP 'VM - Get all threads'
-	 * while the test program has not been started.
-	 */
-	public void testNotStartedAllThreads() {
-		List threads = fVM.allThreads();
-		Iterator iterator = threads.listIterator();
-		int i = 0;
-		while (iterator.hasNext())
-			assertTrue(Integer.toString(i++), iterator.next() instanceof ThreadReference);
-	}
-	/**
-	 * Test JDI classesByName() while the test program has not been started.
-	 */
-	public void testNotStartedClassesByName() {
-		List classes = fVM.classesByName("java.lang.Object");
-		assertEquals("1", 1, classes.size());
-	}
-	/**
-	 * Test JDI allClasses() and JDWP 'VM- Get all classes'
-	 * once the test program has been started.
-	 */
-	public void testStartedAllClasses() {
-
-		// The test program has started, the number of classes is != 0
-		List classes = fVM.allClasses();
-		assertTrue("1", classes.size() != 0);
-
-		// Collect names of received classes
-		String[] names = new String[classes.size()];
-		ListIterator iterator = classes.listIterator();
-		int i = 0;
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			names[i++] = type.name();
-		}
-
-		// Check that they are the expected names
-		String[] expected =
-			new String[] {
-				"java.lang.Object",
-				"java.util.Date",
-				"org.eclipse.debug.jdi.tests.program.Printable",
-				"org.eclipse.debug.jdi.tests.program.MainClass" };
-		for (int j = 0; j < expected.length; j++) {
-			boolean isIncluded = false;
-			iteration : for (int k = 0; k < names.length; k++) {
-				if (names[k].equals(expected[j])) {
-					isIncluded = true;
-					break iteration;
-				}
-			}
-			assertTrue("2." + j, isIncluded);
-		}
-	}
-	/**
-	 * Test JDI allThreads() and JDWP 'VM - Get all threads'
-	 * once the test program has been started.
-	 */
-	public void testStartedAllThreads() {
-
-		// The test program has started, the number of threads is != 0
-		List threads = fVM.allThreads();
-		assertTrue("1", threads.size() != 0);
-
-		// Collect names of received threads
-		String[] names = new String[threads.size()];
-		ListIterator iterator = threads.listIterator();
-		int i = 0;
-		while (iterator.hasNext()) {
-			ThreadReference thread = (ThreadReference) iterator.next();
-			names[i++] = thread.name();
-		}
-
-		// Check that they contain at least the expected names
-		String[] expected = new String[] { "Test Thread" };
-		boolean isIncluded = false;
-		iteration : for (int j = 0; j < expected.length; j++) {
-			for (int k = 0; k < names.length; k++) {
-				if (expected[j].equals(names[k])) {
-					isIncluded = true;
-					break iteration;
-				}
-			}
-		}
-		assertTrue("2", isIncluded);
-	}
-	/**
-	 * Test JDI classesByName() once the test program has been started.
-	 */
-	public void testStartedClassesByName() {
-
-		// The test program has started, the number of java.lang.Object is 1
-		List classes = fVM.classesByName("java.lang.Object");
-		assertEquals("1", classes.size(), 1);
-
-		// Collect names of received classes
-		String[] names = new String[classes.size()];
-		ListIterator iterator = classes.listIterator();
-		int i = 0;
-		while (iterator.hasNext()) {
-			ReferenceType type = (ReferenceType) iterator.next();
-			names[i++] = type.name();
-		}
-
-		// Check that they are all "java.lang.Object"
-		for (int j = 0; j < names.length; j++) {
-			assertEquals("2." + j, "java.lang.Object", names[j]);
-		}
-	}
-	/**
-	 * Test JDI suspend() and resume() once the test program has been started.
-	 */
-	public void testStartedSuspendResume() {
-		// Suspend
-		fVM.suspend();
-		ListIterator threads = fVM.allThreads().listIterator();
-		while (threads.hasNext()) {
-			ThreadReference thread = (ThreadReference) threads.next();
-			assertTrue("1." + thread.name(), thread.isSuspended());
-		}
-
-		// Resume
-		fVM.resume();
-		// Cannot assertTrue that all threads are not suspended because they might have been suspended
-		// by the program itself
-
-		// Suspend VM and suspend one thread
-		fVM.suspend();
-		threads = fVM.allThreads().listIterator();
-		ThreadReference suspended = getThread();
-		suspended.suspend();
-		while (threads.hasNext()) {
-			ThreadReference thread = (ThreadReference) threads.next();
-			assertTrue("2." + thread.name(), thread.isSuspended());
-		}
-
-		// Resume VM and ensure that the one thread that was suspended is still suspended
-		fVM.resume();
-		assertTrue("3", suspended.isSuspended());
-	}
-	/**
-	 * Test JDI topLevelThreadGroups().
-	 */
-	public void testStartedTopLevelThreadGroups() {
-		List topLevelThreadGroups = fVM.topLevelThreadGroups();
-		assertEquals("1", 1, topLevelThreadGroups.size());
-		assertTrue("2", topLevelThreadGroups.get(0) instanceof ThreadGroupReference);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/WatchpointEventTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/WatchpointEventTest.java
deleted file mode 100644
index 51eb536..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/WatchpointEventTest.java
+++ /dev/null
@@ -1,146 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.ArrayList;
-
-import com.sun.jdi.BooleanValue;
-import com.sun.jdi.StringReference;
-import com.sun.jdi.event.AccessWatchpointEvent;
-import com.sun.jdi.event.ModificationWatchpointEvent;
-import com.sun.jdi.event.WatchpointEvent;
-import com.sun.jdi.request.EventRequestManager;
-
-/**
- * Tests for JDI com.sun.jdi.event.WatchpointEvent.
- */
-public class WatchpointEventTest extends AbstractJDITest {
-
-	private WatchpointEvent fAccessWatchpointEvent,
-		fStaticAccessWatchpointEvent,
-		fModificationWatchpointEvent;
-	// NB: Static modification watchpoint event is tested in ModificationWatchpointTest
-	/**
-	 * Creates a new test.
-	 */
-	public WatchpointEventTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Trigger an access watchpoint event
-		fAccessWatchpointEvent =
-			(AccessWatchpointEvent) triggerAndWait(getAccessWatchpointRequest(),
-				"AccessWatchpointEvent",
-				true);
-		assertTrue("Got access watchpoint event", fAccessWatchpointEvent != null);
-
-		// Trigger a static access watchpoint event
-		fStaticAccessWatchpointEvent =
-			(AccessWatchpointEvent) triggerAndWait(
-				getStaticAccessWatchpointRequest(),
-				"StaticAccessWatchpointEvent",
-				true);
-		assertTrue(
-			"Got static access watchpoint event",
-			fStaticAccessWatchpointEvent != null);
-
-		// Trigger a modification watchpoint event
-		fModificationWatchpointEvent =
-			(ModificationWatchpointEvent) triggerAndWait(
-				getModificationWatchpointRequest(),
-				"ModificationWatchpointEvent",
-				false);
-		// Interrupt the VM so that we can test valueCurrent()
-		assertTrue(
-			"Got modification watchpoint event",
-			fModificationWatchpointEvent != null);
-
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// Ensure that the modification of the "fBool" field has completed
-		fVM.resume();
-		waitUntilReady();
-
-		// Delete the event requests we created in this test
-		EventRequestManager requestManager = fVM.eventRequestManager();
-		requestManager.deleteEventRequests(
-			new ArrayList(requestManager.accessWatchpointRequests()));
-		requestManager.deleteEventRequests(
-			new ArrayList(requestManager.modificationWatchpointRequests()));
-
-		// Set the value of the "fBool" field back to its original value
-		resetField();
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new WatchpointEventTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.event.WatchpointEvent";
-	}
-	/**
-	 * Test JDI field().
-	 */
-	public void testJDIField() {
-		assertEquals("1", getField("fBool"), fAccessWatchpointEvent.field());
-		assertEquals(
-			"2",
-			getField("fString"),
-			fStaticAccessWatchpointEvent.field());
-		assertEquals(
-			"3",
-			getField("fBool"),
-			fModificationWatchpointEvent.field());
-	}
-	/**
-	 * Test JDI object().
-	 */
-	public void testJDIObject() {
-		assertEquals(
-			"1",
-			getObjectReference(),
-			fAccessWatchpointEvent.object());
-		assertTrue("2", fStaticAccessWatchpointEvent.object() == null);
-		assertEquals(
-			"3",
-			getObjectReference(),
-			fModificationWatchpointEvent.object());
-	}
-	/**
-	 * Test JDI valueCurrent().
-	 */
-	public void testJDIValueCurrent() {
-		assertTrue(
-			"1",
-			false
-				== ((BooleanValue) fAccessWatchpointEvent.valueCurrent()).value());
-
-		assertEquals(
-			"2",
-			"Hello World",
-			((StringReference) fStaticAccessWatchpointEvent.valueCurrent())
-				.value());
-
-		assertTrue(
-			"3",
-			false
-				== ((BooleanValue) fModificationWatchpointEvent.valueCurrent())
-					.value());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/WatchpointRequestTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/WatchpointRequestTest.java
deleted file mode 100644
index 7e013a9..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/WatchpointRequestTest.java
+++ /dev/null
@@ -1,66 +0,0 @@
-package org.eclipse.debug.jdi.tests;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import com.sun.jdi.request.WatchpointRequest;
-
-/**
- * Tests for JDI com.sun.jdi.request.WatchpointRequest.
- */
-public class WatchpointRequestTest extends AbstractJDITest {
-
-	private WatchpointRequest fAccessWatchpointRequest,
-		fModificationWatchpointRequest;
-	/**
-	 * Creates a new test .
-	 */
-	public WatchpointRequestTest() {
-		super();
-	}
-	/**
-	 * Init the fields that are used by this test only.
-	 */
-	public void localSetUp() {
-		// Get an acces watchpoint request
-		fAccessWatchpointRequest = getAccessWatchpointRequest();
-
-		// Get a modification watchpoint request
-		fModificationWatchpointRequest = getModificationWatchpointRequest();
-	}
-	/**
-	 * Make sure the test leaves the VM in the same state it found it.
-	 */
-	public void localTearDown() {
-		// Delete the watchpoint requests we created in this test
-		fVM.eventRequestManager().deleteEventRequest(fAccessWatchpointRequest);
-		fVM.eventRequestManager().deleteEventRequest(
-			fModificationWatchpointRequest);
-	}
-	/**
-	 * Run all tests and output to standard output.
-	 */
-	public static void main(java.lang.String[] args) {
-		new WatchpointRequestTest().runSuite(args);
-	}
-	/**
-	 * Gets the name of the test case.
-	 */
-	public String getName() {
-		return "com.sun.jdi.request.WatchpointRequest";
-	}
-	/**
-	 * Test JDI field().
-	 */
-	public void testJDIField() {
-		assertEquals("1", getField("fBool"), fAccessWatchpointRequest.field());
-		assertEquals(
-			"2",
-			getField("fBool"),
-			fModificationWatchpointRequest.field());
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/MainClass.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/MainClass.java
deleted file mode 100644
index ae7d107..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/MainClass.java
+++ /dev/null
@@ -1,321 +0,0 @@
-package org.eclipse.debug.jdi.tests.program;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
- 
-/**
- * Main class for target VM tests.
- * This class is intended to be run by the target VM. 
- * It will use other classes in this package, and it will create and terminate
- * threads as a regular program would do.
- *
- * WARNING, WARNING:
- * Tests in org.eclipse.debug.jdi.tests assume the content of this class, 
- * as well as its behavior. So if this class or one of the types in this
- * package is changed, the corresponding tests must also be changed.
- */
-import java.io.OutputStream;
-import java.io.PrintWriter;
-import java.util.Date;
-
-public class MainClass extends Date implements Runnable, Printable {
-
-	private static byte[] byteArray = new byte[0];
-	private static byte[][] byteDoubleArray = new byte[0][0];
-	private static short[] shortArray = new short[0];
-	private static short[][] shortDoubleArray = new short[0][0];
-	private static int[] intArray = new int[0];
-	private static int[][] intDoubleArray = new int[0][0];
-	private static long[] longArray = new long[0];
-	private static long[][] longDoubleArray = new long[0][0];
-	private static double[] doubleArray = new double[0];
-	private static double[][] doubleDoubleArray = new double[0][0];
-	private static float[] floatArray = new float[0];
-	private static float[][] floatDoubleArray = new float[0][0];
-	private static char[] charArray = new char[0];
-	private static char[][] charDoubleArray = new char[0][0];
-	private static boolean[] booleanArray = new boolean[0];
-	private static boolean[][] booleanDoubleArray = new boolean[0][0];
-
-	private String string = "";
-	private String[] stringArray = new String[0];
-	private String[][] stringDoubleArray = new String[0][0];
-
-	public static int fInt = 0;
-
-	public static MainClass fObject = new MainClass();
-
-	public static String fString = "Hello World";
-
-	public static Thread fThread;
-
-	public static Thread fMainThread;
-
-	public static String[] fArray = new String[] { "foo", "bar", "hop" };
-
-	public static double[] fDoubleArray = new double[] { 1, 2.2, 3.33 };
-
-	public static String fEventType = "";
-
-	public boolean fBool = false;
-
-	private char fChar = 'a';
-
-	private String fString2 = "Hello";
-
-	protected final String fString3 = "HEY";
-
-	public MainClass() {
-	}
-
-	/* Used to test ClassType.newInstance */
-	public MainClass(int i, Object o1, Object o2) {
-	}
-
-	/* For invocation tests */
-	private static String invoke1(int x, Object o) {
-		if (o == null)
-			return (new Integer(x)).toString();
-		else
-			return "";
-	}
-	/* For invocation tests */
-	private static void invoke2() {
-		throw new IndexOutOfBoundsException();
-	}
-	/* For invocation tests */
-	private int invoke3(String str, Object o) {
-		return Integer.parseInt(str);
-	}
-	/* For invocation tests */
-	private long invoke4() throws java.io.EOFException {
-		throw new java.io.EOFException();
-	}
-	/* For variables test */
-	private void variablesTest(long l) {
-	}
-	public static void main(java.lang.String[] args) {
-		// Start the test program
-		ThreadGroup group = new ThreadGroup("Test ThreadGroup");
-		fThread = new Thread(group, fObject, "Test Thread");
-		fThread.start();
-
-		fMainThread = Thread.currentThread();
-
-		// Prevent this thread from dying
-		while (true)
-			try {
-				Thread.sleep(1000);
-			} catch (InterruptedException e) {
-			}
-	}
-	public void print(OutputStream out) {
-		String string = fInt++ +". " + fString;
-		PrintWriter writer = new PrintWriter(out);
-		writer.println(string);
-		writer.flush();
-	}
-	synchronized public void printAndSignal() {
-		print(System.out);
-
-		// Signal readiness by throwing an exception
-		try {
-			throw new NegativeArraySizeException();
-		} catch (NegativeArraySizeException exc) {
-		}
-	}
-	public void run() {
-		try {
-			Thread t = Thread.currentThread();
-			MainClass o = new OtherClass();
-			// The front-end tests use the class load event to determine that the program has started
-
-			if (CONSTANT == 2)
-				System.out.println("CONSTANT=2");
-
-			while (true) {
-				printAndSignal();
-				triggerEvent();
-				useLocalVars(t, o);
-				try {
-					Thread.sleep(1000);
-				} catch (InterruptedException e) {
-				}
-			}
-		} finally {
-			System.out.println("Running finally block in MainClass.run()");
-		}
-	}
-	/**
-	 *	Trigger an access watchpoint event for the front-end.
-	 */
-	private void triggerAccessWatchpointEvent() {
-		if (fBool)
-			System.out.println("fBool is true");
-	}
-	/**
-	 *	Trigger a breakpoint event for the front-end.
-	 */
-	private void triggerBreakpointEvent() {
-		System.out.println("Breakpoint");
-	}
-	/**
-	 *	Trigger a class prepare event for the front-end.
-	 */
-	private void triggerClassPrepareEvent() {
-		new TestClass();
-	}
-	/**
-	 *	Trigger a class prepare event for the front-end.
-	 */
-	private void triggerClassPrepareEvent1() {
-		new TestClass1();
-	}
-	/**
-	 *	Trigger a class prepare event for the front-end.
-	 */
-	private void triggerClassPrepareEvent2() {
-		new TestClass2();
-	}
-	/**
-	 *	Trigger a class prepare event for the front-end.
-	 */
-	private void triggerClassPrepareEvent3() {
-		new TestClass3();
-	}
-	/**
-	 *	Trigger a class prepare event for the front-end.
-	 */
-	private void triggerClassPrepareEvent4() {
-		new TestClass4();
-	}
-	/**
-	 *	Trigger a class prepare event for the front-end.
-	 */
-	private void triggerClassPrepareEvent5() {
-		new TestClass5();
-	}
-	/**
-	 *	Trigger a class prepare event for the front-end.
-	 */
-	private void triggerClassPrepareEvent6() {
-		new TestClass6();
-	}
-	/**
-	 *	Trigger a class prepare event for the front-end.
-	 */
-	private void triggerClassPrepareEvent7() {
-		new TestClass7();
-		new TestClazz8();
-	}
-	/**
-	 *	Trigger a class prepare event for the front-end.
-	 */
-	private void triggerClassPrepareEvent8() {
-		new TestClazz9();
-		new TestClazz10();
-	}
-	/**
-	 *	Trigger an event for the front-end.
-	 */
-	private void triggerEvent() {
-		/* Ensure we do it only once */
-		String eventType = fEventType;
-		fEventType = "";
-
-		/* Trigger event according to the field fEventType */
-		if (eventType.equals(""))
-			return;
-		else if (eventType.equals("AccessWatchpointEvent"))
-			triggerAccessWatchpointEvent();
-		else if (eventType.equals("StaticAccessWatchpointEvent"))
-			triggerStaticAccessWatchpointEvent();
-		else if (eventType.equals("BreakpointEvent"))
-			triggerBreakpointEvent();
-		else if (eventType.equals("ClassPrepareEvent"))
-			triggerClassPrepareEvent();
-		else if (eventType.equals("ClassPrepareEvent1"))
-			triggerClassPrepareEvent1();
-		else if (eventType.equals("ClassPrepareEvent2"))
-			triggerClassPrepareEvent2();
-		else if (eventType.equals("ClassPrepareEvent3"))
-			triggerClassPrepareEvent3();
-		else if (eventType.equals("ClassPrepareEvent4"))
-			triggerClassPrepareEvent4();
-		else if (eventType.equals("ClassPrepareEvent5"))
-			triggerClassPrepareEvent5();
-		else if (eventType.equals("ClassPrepareEvent6"))
-			triggerClassPrepareEvent6();
-		else if (eventType.equals("ClassPrepareEvent7"))
-			triggerClassPrepareEvent7();
-		else if (eventType.equals("ClassPrepareEvent8"))
-			triggerClassPrepareEvent8();
-		else if (eventType.equals("ExceptionEvent"))
-			triggerExceptionEvent();
-		else if (eventType.equals("ModificationWatchpointEvent"))
-			triggerModificationWatchpointEvent();
-		else if (eventType.equals("StaticModificationWatchpointEvent"))
-			triggerStaticModificationWatchpointEvent();
-		else if (eventType.equals("ThreadStartEvent"))
-			triggerThreadStartEvent();
-		else if (eventType.equals("ThreadDeathEvent"))
-			triggerThreadDeathEvent();
-		else
-			System.out.println("Unknown event type: " + eventType);
-	}
-	/**
-	 *	Trigger an exception event for the front-end.
-	 */
-	private void triggerExceptionEvent() {
-		Thread t = new Thread(new Runnable() {
-			public void run() {
-				throw new Error();
-			}
-		}, "Test Exception Event");
-		t.start();
-	}
-	/**
-	 *	Trigger a modification watchpoint event for the front-end.
-	 */
-	private void triggerModificationWatchpointEvent() {
-		fBool = true;
-	}
-	/**
-	 * Trigger an access watchpoint event to a static field
-	 * for the front-end.
-	 */
-	private void triggerStaticAccessWatchpointEvent() {
-		if (fObject == null)
-			System.out.println("fObject is null");
-	}
-	/**
-	 * Trigger a modification watchpoint event of a static field
-	 * for the front-end.
-	 */
-	private void triggerStaticModificationWatchpointEvent() {
-		fString = "Hello Universe";
-	}
-	/**
-	 *	Trigger a thread end event for the front-end.
-	 */
-	private void triggerThreadDeathEvent() {
-		new Thread("Test Thread Death Event").start();
-	}
-	/**
-	 *	Trigger a thread start event for the front-end.
-	 */
-	private void triggerThreadStartEvent() {
-		new Thread("Test Thread Start Event").start();
-	}
-	private void useLocalVars(Thread t, MainClass o) {
-		if (t == null)
-			System.out.println("t is null");
-		if (o == null)
-			System.out.println("o is null");
-
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/OtherClass.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/OtherClass.java
deleted file mode 100644
index bd1b750..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/OtherClass.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package org.eclipse.debug.jdi.tests.program;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-public class OtherClass extends MainClass {
-	class InnerClass {
-	}
-	InnerClass fInner = new InnerClass();
-	/**
-	 * OtherClass constructor comment.
-	 */
-	public OtherClass() {
-		super();
-	}
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/Printable.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/Printable.java
deleted file mode 100644
index b31261e..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/Printable.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package org.eclipse.debug.jdi.tests.program;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-/**
- * Interface type for target VM tests.
- * This interface is intended to be loaded by the target VM. 
- *
- * WARNING, WARNING:
- * Tests in org.eclipse.debug.jdi.tests assume the content of this interface.
- * So if this interface or one of the types in this
- * package is changed, the corresponding tests must also be changed.
- */
-
-import java.io.OutputStream;
-
-public interface Printable extends Cloneable {
-	int CONSTANT = 1;
-public void print(OutputStream out);
-}
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass.java
deleted file mode 100644
index bbe205f..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass1.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass1.java
deleted file mode 100644
index 560143a..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass1.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass2.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass2.java
deleted file mode 100644
index 8b61cce..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass2.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass3.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass3.java
deleted file mode 100644
index f0f50f7..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass3.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass4.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass4.java
deleted file mode 100644
index 7ccef59..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass4.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass5.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass5.java
deleted file mode 100644
index ddba5d1..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass5.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass6.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass6.java
deleted file mode 100644
index e638623..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass6.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass7.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass7.java
deleted file mode 100644
index dc940f2..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClass7.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz10.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz10.java
deleted file mode 100644
index abd8b35..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz10.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz8.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz8.java
deleted file mode 100644
index 491cc7d..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz8.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz9.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz9.java
deleted file mode 100644
index 44387d9..0000000
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/program/TestClazz9.java
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.jdt.debug.ui/icons/full/obj16/cp_order_obj.gif b/org.eclipse.jdt.debug.ui/icons/full/obj16/cp_order_obj.gif
new file mode 100644
index 0000000..fa9ecc8
--- /dev/null
+++ b/org.eclipse.jdt.debug.ui/icons/full/obj16/cp_order_obj.gif
Binary files differ
diff --git a/org.eclipse.jdt.debug/buildnotes_jdt-debug.html b/org.eclipse.jdt.debug/buildnotes_jdt-debug.html
index 8e81eda..1a5c77b 100644
--- a/org.eclipse.jdt.debug/buildnotes_jdt-debug.html
+++ b/org.eclipse.jdt.debug/buildnotes_jdt-debug.html
@@ -12,6 +12,15 @@
 <h1>
 Eclipse Platform Build Notes&nbsp;<br>
 Java Debug</h1>
+Feb 10, 2004
+<h3>
+Problem Reports Fixed</h3>
+<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=51327">51327</a>: Run; Configuration; Environment Tab; Dialog Font<br>
+<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=51414">51414</a>: Errors not logged in JavaLineBreakpoint<br>
+
+<h1>
+Eclipse Platform Build Notes&nbsp;<br>
+Java Debug</h1>
 Feb 3, 2004
 <h3>
 Problem Reports Fixed</h3>
diff --git a/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/MethodImpl.java b/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/MethodImpl.java
index 21b59ef..4104d92 100644
--- a/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/MethodImpl.java
+++ b/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/MethodImpl.java
@@ -542,8 +542,8 @@
 				int slot = readInt("slot", replyData); //$NON-NLS-1$
 				boolean isArgument = slot < fArgumentSlotsCount;
 
-				// Note that for instance methods, the first variable will be the this reference.
-				if (isStatic() || i > 0) {
+				// Note that for instance methods, the first slot contains the this reference.
+				if (isStatic() || slot > 0) {
 					LocalVariableImpl localVar = new LocalVariableImpl(virtualMachineImpl(), this, codeIndex, name, signature, length, slot, isArgument);
 					fVariables.add(localVar);
 				}
diff --git a/org.eclipse.jdt.debug/model/org/eclipse/jdt/internal/debug/core/breakpoints/JavaLineBreakpoint.java b/org.eclipse.jdt.debug/model/org/eclipse/jdt/internal/debug/core/breakpoints/JavaLineBreakpoint.java
index 053a12e..b48b29d 100644
--- a/org.eclipse.jdt.debug/model/org/eclipse/jdt/internal/debug/core/breakpoints/JavaLineBreakpoint.java
+++ b/org.eclipse.jdt.debug/model/org/eclipse/jdt/internal/debug/core/breakpoints/JavaLineBreakpoint.java
@@ -37,6 +37,7 @@
 import org.eclipse.debug.core.model.IValue;
 import org.eclipse.jdt.core.IJavaElement;
 import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.JavaCore;
 import org.eclipse.jdt.core.dom.Message;
 import org.eclipse.jdt.debug.core.IJavaDebugTarget;
 import org.eclipse.jdt.debug.core.IJavaLineBreakpoint;
@@ -364,7 +365,7 @@
 			try {
 				return handleConditionalBreakpointEvent(event, thread, target);
 			} catch (CoreException exception) {
-				// log error
+				JDIDebugPlugin.log(exception);
 				return !suspendForEvent(event, thread);
 			}
 		} else {
@@ -380,7 +381,7 @@
 			String condition = getCondition();
 			return isConditionEnabled() && condition != null && (condition.length() > 0);
 		} catch (CoreException exception) {
-			// log error
+			JDIDebugPlugin.log(exception);
 			return false;
 		}
 	}
@@ -476,7 +477,12 @@
 		Object sourceElement = locator.getSourceElement(stackFrame);
 		if (sourceElement instanceof IJavaElement) {
 			return ((IJavaElement) sourceElement).getJavaProject();
-		}			
+		} else if (sourceElement instanceof IResource) {
+			IJavaProject project = JavaCore.create(((IResource)sourceElement).getProject());
+			if (project.exists()) {
+				return project;
+			}
+		}
 		return null;
 	}