Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/AttachSourceTests.java')
-rw-r--r--org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/AttachSourceTests.java20
1 files changed, 20 insertions, 0 deletions
diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/AttachSourceTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/AttachSourceTests.java
index e9079f085c..d49d65de89 100644
--- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/AttachSourceTests.java
+++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/AttachSourceTests.java
@@ -670,4 +670,24 @@ public void testRootPath11() throws JavaModelException {
root.close();
}
+/**
+ * Attach a jar with a source attachement that is itself. The jar contains 2 root paths for the same class file.
+ * (regression test for bug 74014 prefix path for source attachements - automatic detection does not seem to work)
+ */
+public void testRootPath12() throws JavaModelException {
+ IJavaProject project = this.getJavaProject("/AttachSourceTests");
+ IPackageFragmentRoot root = project.getPackageFragmentRoot(this.getFile("/AttachSourceTests/test5.jar"));
+ attachSource(root, "/AttachSourceTests/test5.jar", null);
+
+ IClassFile cf = root.getPackageFragment("p1.p2").getClassFile("X.class");
+ assertSourceEquals(
+ "Unexpected source for class file",
+ "package p1.p2;\n" +
+ "public class X {\n" +
+ "}\n",
+ cf.getSource());
+ attachSource(root, null, null); // detach source
+ root.close();
+}
+
}

Back to the top