Lines 710-715
Link Here
|
710 |
suite.addTest(new JavaSearchBugsTests("testBug350885")); |
710 |
suite.addTest(new JavaSearchBugsTests("testBug350885")); |
711 |
suite.addTest(new JavaSearchBugsTests("testBug349683")); |
711 |
suite.addTest(new JavaSearchBugsTests("testBug349683")); |
712 |
suite.addTest(new JavaSearchBugsTests("testBug345807")); |
712 |
suite.addTest(new JavaSearchBugsTests("testBug345807")); |
|
|
713 |
suite.addTest(new JavaSearchBugsTests("testBug355605")); |
713 |
return suite; |
714 |
return suite; |
714 |
} |
715 |
} |
715 |
class TestCollector extends JavaSearchResultCollector { |
716 |
class TestCollector extends JavaSearchResultCollector { |
Lines 13713-13716
Link Here
|
13713 |
deleteProject("Project2"); |
13714 |
deleteProject("Project2"); |
13714 |
} |
13715 |
} |
13715 |
} |
13716 |
} |
|
|
13717 |
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=355605 |
13718 |
public void testBug355605() throws CoreException { |
13719 |
try { |
13720 |
IJavaProject project = createJavaProject("P"); |
13721 |
|
13722 |
String fileContent = |
13723 |
"public class X { \n" |
13724 |
+ "class R {\n" |
13725 |
+ " class S {\n" |
13726 |
+ " void setInfo(String x) {\n" |
13727 |
+ " }\n" |
13728 |
+ " }\n" |
13729 |
+ " class T {\n" |
13730 |
+ " }\n" |
13731 |
+ " T t = new T() {\n" |
13732 |
+ " S s = new S() {\n" |
13733 |
+ " void myMethod() {\n" |
13734 |
+ " setInfo(\"a\");\n" |
13735 |
+ " }\n" |
13736 |
+ " };// S ends\n" |
13737 |
+ " };\n" |
13738 |
+ "}\n" |
13739 |
+ "}\n" ; |
13740 |
createFile("/P/X.java", fileContent); |
13741 |
|
13742 |
waitUntilIndexesReady(); |
13743 |
this.resultCollector = new TestCollector(); |
13744 |
this.resultCollector.showAccuracy(true); |
13745 |
IJavaSearchScope scope = SearchEngine.createJavaSearchScope(new IJavaElement[]{project}, IJavaSearchScope.SOURCES); |
13746 |
search("setInfo", METHOD, IMPLEMENTORS, EXACT_RULE, scope, this.resultCollector); |
13747 |
IMethod method = (IMethod) ((SearchMatch)((TestCollector)this.resultCollector).matches.get(0)).getElement(); |
13748 |
this.resultCollector = new TestCollector(); |
13749 |
IJavaSearchScope hierarchyScope = SearchEngine.createHierarchyScope((IType)method.getParent()); |
13750 |
search(method, IMPLEMENTORS, ERASURE_RULE, hierarchyScope, this.resultCollector); |
13751 |
assertSearchResults("Unexpected search results!", "X.java void X$R.t:<anonymous>#1.s:<anonymous>#1.myMethod() [myMethod]", this.resultCollector); |
13752 |
|
13753 |
} finally { |
13754 |
deleteProject("P"); |
13755 |
} |
13756 |
} |
13716 |
} |
13757 |
} |