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
@@ -1 +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
**********************************************************************/


/**
 * An abstract reader that continuously reads.
 */

abstract public class AbstractReader {
	protected String fName;
	protected Thread fReaderThread;
	protected boolean fIsStopping = false;
	/*
	 * Creates a new reader with the given name.
	 */
	public AbstractReader(String name) {
		fName = name;
	}
	/**
	 * Continuously reads. Note that if the read involves waiting
	 * it can be interrupted and a InterruptedException will be thrown.
	 */
	abstract protected void readerLoop();
	/**
	 * Start the thread that reads events.
	 * 
	 */
	public void start() {
		fReaderThread = new Thread(new Runnable() {
			public void run() {
				readerLoop();
			}
		}, fName);
		fReaderThread.setDaemon(true);
		fReaderThread.start();
	}
	/**
	 * Tells the reader loop that it should stop.
	 */
	public void stop() {
		fIsStopping = true;
		if (fReaderThread != null)
			fReaderThread.interrupt();
	}
}
\ No newline at end of file
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
@@ -1,264 +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.Field;
-import com.sun.jdi.Location;
-import com.sun.jdi.request.AccessWatchpointRequest;
-import com.sun.jdi.request.BreakpointRequest;
-import com.sun.jdi.request.ClassPrepareRequest;
-import com.sun.jdi.request.ClassUnloadRequest;
-import com.sun.jdi.request.EventRequestManager;
-import com.sun.jdi.request.ExceptionRequest;
-import com.sun.jdi.request.ModificationWatchpointRequest;
-import com.sun.jdi.request.StepRequest;
-import com.sun.jdi.request.ThreadDeathRequest;
-import com.sun.jdi.request.ThreadStartRequest;
-
-/**
- * Tests for JDI com.sun.jdi.request.EventRequestManager.
- */
-public class EventRequestManagerTest extends AbstractJDITest {
-
-	private EventRequestManager fManager;
-/**
- * Creates a new test.
- */
-public EventRequestManagerTest() {
-	super();
-}
-/**
- * Init the fields that are used by this test only.
- */
-public void localSetUp() {
-	// Get the event request manager
-	fManager = fVM.eventRequestManager();
-}
-/**
- * Run all tests and output to standard output.
- */
-public static void main(java.lang.String[] args) {
-	new EventRequestManagerTest().runSuite(args);
-}
-/**
- * Gets the name of the test case.
- */
-public String getName() {
-	return "com.sun.jdi.request.EventRequestManager";
-}
-/**
- * Test JDI createAccessWatchpointRequest(Field), accessWatchpointRequests()
- * and deleteEventRequest(EventRequest)
- */
-public void testJDIAccessWatchpointRequest() {
-	if (!fVM.canWatchFieldAccess())
-		return;
-	
-	// Create an access watchpoint request
-	Field field = getField();
-	AccessWatchpointRequest request = fManager.createAccessWatchpointRequest(field);
-	assertEquals("1", field, request.field());
-
-	// Get all access watchpoint requests
-	List requests = fManager.accessWatchpointRequests();
-	ListIterator iterator = requests.listIterator();
-	int i=0;
-	while (iterator.hasNext()) {
-		assertTrue("2."+i++, iterator.next() instanceof AccessWatchpointRequest);
-	}
-	
-	// Delete an access watchpoint request
-	fManager.deleteEventRequest(request);
-	assertEquals("3", 0, fManager.accessWatchpointRequests().size());
-}
-/**
- * Test JDI createBreakpointRequest(Location), breakpointRequests(), 
- * deleteEventRequest(EventRequest) and deleteAllBreakpoints()
- */
-public void testJDIBreakpointRequest() {
-	// Create a breakpoint at a valid location
-	Location location = getLocation();
-	BreakpointRequest bp = fManager.createBreakpointRequest(location);
-	assertEquals("1", location, bp.location());
-
-	// Create a breakpoint at an invalid location
-	/* The following fails in Sun's VM:
-	location = getFrame(3).location(); // Inside a native method
-	try {
-		bp = fManager.createBreakpointRequest(location);
-		assertTrue("2", false);
-	} catch (InvalidLocationException e) {
-	}
-	*/
-
-	// Get all breakpoints
-	List breakpoints = fManager.breakpointRequests();
-	ListIterator iterator = breakpoints.listIterator();
-	while (iterator.hasNext()) {
-		Object breakpoint = iterator.next();
-		assertTrue("3", breakpoint instanceof BreakpointRequest);
-	}
-	
-	// Delete a breakpoint
-	fManager.deleteEventRequest(bp);
-	assertEquals("4", 0, fManager.breakpointRequests().size());
-
-	// Delete all breakpoints
-	fManager.createBreakpointRequest(location);
-	fManager.deleteAllBreakpoints();
-	assertEquals("5", 0, fManager.breakpointRequests().size());
-}
-/**
- * Test JDI createClassPrepareRequest(), classPrepareRequests()
- * and deleteEventRequest(EventRequest)
- */
-public void testJDIClassPrepareRequest() {
-	// Create a class prepare request
-	ClassPrepareRequest request= fManager.createClassPrepareRequest();
-
-	// Get all class prepare requests
-	List requests = fManager.classPrepareRequests();
-	ListIterator iterator = requests.listIterator();
-	int i=0;
-	while (iterator.hasNext()) {
-		assertTrue("1."+i++, iterator.next() instanceof ClassPrepareRequest);
-	}
-	
-	// Delete a class prepare request
-	fManager.deleteEventRequest(request);
-	assertEquals("2", 0, fManager.classPrepareRequests().size());
-}
-/**
- * Test JDI createClassUnloadRequest(), classUnloadRequests()
- * and deleteEventRequest(EventRequest)
- */
-public void testJDIClassUnloadRequest() {
-	// Create a class unload request
-	ClassUnloadRequest request= fManager.createClassUnloadRequest();
-
-	// Get all class unload requests
-	List requests = fManager.classUnloadRequests();
-	ListIterator iterator = requests.listIterator();
-	int i=0;
-	while (iterator.hasNext()) {
-		assertTrue("1."+i++, iterator.next() instanceof ClassUnloadRequest);
-	}
-	
-	// Delete a class unload request
-	fManager.deleteEventRequest(request);
-	assertEquals("2", 0, fManager.classUnloadRequests().size());
-}
-/**
- * Test JDI createExceptionRequest(), exceptionRequests()
- * and deleteEventRequest(EventRequest)
- */
-public void testJDIExceptionRequest() {
-	// Create a exception request
-	ExceptionRequest request= fManager.createExceptionRequest(null, true, true);
-
-	// Get all exception requests
-	List requests = fManager.exceptionRequests();
-	ListIterator iterator = requests.listIterator();
-	int i=0;
-	while (iterator.hasNext()) {
-		assertTrue("1."+i++, iterator.next() instanceof ExceptionRequest);
-	}
-	
-	// Delete a exception request
-	fManager.deleteEventRequest(request);
-	assertEquals("2", i-1, fManager.exceptionRequests().size());
-}
-/**
- * Test JDI createModificationWatchpointRequest(Field), 
- * accessWatchpointRequests() and deleteEventRequest(EventRequest)
- */
-public void testJDIModificationWatchpointRequest() {
-	if (!fVM.canWatchFieldAccess())
-		return;
-
-	// Create a modification watchpoint
-	Field field = getField();
-	ModificationWatchpointRequest request = fManager.createModificationWatchpointRequest(field);
-	assertEquals("1", field, request.field());
-
-	// Get all modification watchpoints
-	List requests = fManager.modificationWatchpointRequests();
-	ListIterator iterator = requests.listIterator();
-	int i=0;
-	while (iterator.hasNext()) {
-		assertTrue("2."+i++, iterator.next() instanceof ModificationWatchpointRequest);
-	}
-	
-	// Delete a modification watchpoint
-	fManager.deleteEventRequest(request);
-	assertEquals("3", 0, fManager.modificationWatchpointRequests().size());
-}
-/**
- * Test JDI createStepRequest(), stepRequests()
- * and deleteEventRequest(EventRequest)
- */
-public void testJDIStepRequest() {
-	// Create a step request
-	StepRequest request= fManager.createStepRequest(getThread(), StepRequest.STEP_LINE, StepRequest.STEP_OVER);
-
-	// Get all step requests
-	List requests = fManager.stepRequests();
-	ListIterator iterator = requests.listIterator();
-	int i=0;
-	while (iterator.hasNext()) {
-		assertTrue("1."+i++, iterator.next() instanceof StepRequest);
-	}
-	
-	// Delete a step request
-	fManager.deleteEventRequest(request);
-	assertEquals("2", 0, fManager.stepRequests().size());
-}
-/**
- * Test JDI createThreadDeathRequest(), threadDeathRequests()
- * and deleteEventRequest(EventRequest)
- */
-public void testJDIThreadDeathRequest() {
-	// Create a ThreadDeath request
-	ThreadDeathRequest request= fManager.createThreadDeathRequest();
-
-	// Get all ThreadDeath requests
-	List requests = fManager.threadDeathRequests();
-	ListIterator iterator = requests.listIterator();
-	int i=0;
-	while (iterator.hasNext()) {
-		assertTrue("1."+i++, iterator.next() instanceof ThreadDeathRequest);
-	}
-	
-	// Delete a ThreadDeath request
-	fManager.deleteEventRequest(request);
-	assertEquals("2", 0, fManager.threadDeathRequests().size());
-}
-/**
- * Test JDI createThreadStartRequest(), classUnloadRequests()
- * and deleteEventRequest(EventRequest)
- */
-public void testJDIThreadStartRequest() {
-	// Create a ThreadStart request
-	ThreadStartRequest request= fManager.createThreadStartRequest();
-
-	// Get all ThreadStart requests
-	List requests = fManager.classUnloadRequests();
-	ListIterator iterator = requests.listIterator();
-	int i=0;
-	while (iterator.hasNext()) {
-		assertTrue("1."+i++, iterator.next() instanceof ThreadStartRequest);
-	}
-	
-	// Delete a ThreadStart request
-	fManager.deleteEventRequest(request);
-	assertEquals("2", 0, fManager.classUnloadRequests().size());
-}
-}
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
@@ -1,10 +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 TestClass {
-}
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
@@ -1,10 +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 TestClass1 {
-}
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
@@ -1,10 +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 TestClass2 {
-}
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
@@ -1,10 +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 TestClass3 {
-}
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
@@ -1,10 +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 TestClass4 {
-}
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
@@ -1,10 +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 TestClass5 {
-}
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
@@ -1,10 +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 TestClass6 {
-}
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
@@ -1,11 +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 TestClass7 {
-
-}
\ No newline at end of file
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
@@ -1,11 +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 TestClazz10 {
-
-}
\ No newline at end of file
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
@@ -1,11 +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 TestClazz8 {
-
-}
\ No newline at end of file
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
@@ -1,11 +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 TestClazz9 {
-
-}
\ No newline at end of file
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;
 	}