diff --git a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/AbstractJavaModelTests.java b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/AbstractJavaModelTests.java
index 2615373..781c841 100644
--- a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/AbstractJavaModelTests.java
+++ b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/AbstractJavaModelTests.java
@@ -1615,7 +1615,7 @@
 				return buffer;
 			}
 		};
-		return owner.newWorkingCopy(name, classpath, problemRequestor, null/*no progress monitor*/);
+		return owner.newWorkingCopy(name, classpath, null/*no progress monitor*/);
 	}
 
 	public byte[] read(java.io.File file) throws java.io.IOException {
diff --git a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/TypeHierarchyTests.java b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/TypeHierarchyTests.java
index f8c57d8..bac6458 100644
--- a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/TypeHierarchyTests.java
+++ b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/TypeHierarchyTests.java
@@ -1019,29 +1019,6 @@
 	int flags = hierarchy.getCachedFlags(type2);
 }
 /**
- * Ensures that the correct implementing interfaces exist in the type 
- * hierarchy.
- */
-public void testGetImplementingClasses() throws JavaScriptModelException {
-	IType type = getCompilationUnit("TypeHierarchy", "src", "p2", "I.js").getType("I");
-	ITypeHierarchy hierarchy = type.newTypeHierarchy(null);
-	IType[] types = hierarchy.getImplementingClasses(type);
-	this.assertTypesEqual(
-		"Unexpected implementing classes of I",
-		"p2.X\n",
-		types
-	);
-
-	type = getCompilationUnit("TypeHierarchy", "src", "p2", "X.js").getType("X");
-	hierarchy = type.newTypeHierarchy(null);
-	types = hierarchy.getImplementingClasses(type);
-	this.assertTypesEqual(
-		"Unexpected implementing classes of X",
-		"", // classes cannot implement a class
-		types
-	);
-}
-/**
  * Ensures that the correct root classes exist in the type 
  * hierarchy.
  */
