Index: src/org/eclipse/jdt/core/tests/model/JavaSearchMultipleProjectsTests.java =================================================================== RCS file: /home/eclipse/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/JavaSearchMultipleProjectsTests.java,v retrieving revision 1.30 diff -u -r1.30 JavaSearchMultipleProjectsTests.java --- src/org/eclipse/jdt/core/tests/model/JavaSearchMultipleProjectsTests.java 22 Jun 2005 14:47:27 -0000 1.30 +++ src/org/eclipse/jdt/core/tests/model/JavaSearchMultipleProjectsTests.java 23 Jun 2005 15:06:36 -0000 @@ -37,7 +37,7 @@ // All specified tests which do not belong to the class are skipped... static { // TESTS_NAMES = new String[] { "testMethodOccurences" }; -// TESTS_NUMBERS = new int[] { 101022 }; +// TESTS_NUMBERS = new int[] { 101426 }; // TESTS_RANGE = new int[] { 16, -1 }; } protected void tearDown() throws Exception { @@ -554,6 +554,44 @@ deleteProject("P1"); } } + +/** + * Bug 101426: Search doesn't work with imported plugin + * @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=101426" + */ +public void testJavaSearchScopeBug101426() throws CoreException { + try { + IJavaProject project = createJavaProject("P1", new String[] {"src/", "test/", "test2/"}, "bin"); + createFile( + "/P1/src/Test.java", + "public interface ITest {\n" + + "}" + ); + createFile( + "/P1/test/Test.java", + "public class Test {\n" + + " ITest test;\n" + + "}" + ); + createFile( + "/P1/test2/Test.java", + "public class Test2 {\n" + + " ITest test;\n" + + "}" + ); + IJavaSearchScope scope = SearchEngine.createJavaSearchScope(new IJavaElement[] {project}); + JavaSearchResultCollector resultCollector = new JavaSearchResultCollector(); + resultCollector.showProject = true; + search("ITest", TYPE, REFERENCES, scope, resultCollector); + assertSearchResults( + "test/Test.java [in P1] Test.test [ITest]\n" + + "test2/Test.java [in P1] Test2.test [ITest]", + resultCollector); + } + finally { + deleteProject("P1"); + } +} /** * Method occurences with 2 unrelated projects that contain the same source. * (regression test for bug 33800 search: reporting too many method occurrences)