Lines 37-43
Link Here
|
37 |
*/ |
37 |
*/ |
38 |
public class JavaSearchBugsTests extends AbstractJavaSearchTests implements IJavaSearchConstants { |
38 |
public class JavaSearchBugsTests extends AbstractJavaSearchTests implements IJavaSearchConstants { |
39 |
private final static int UI_DECLARATIONS = DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE; |
39 |
private final static int UI_DECLARATIONS = DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE; |
40 |
|
40 |
|
41 |
public JavaSearchBugsTests(String name) { |
41 |
public JavaSearchBugsTests(String name) { |
42 |
super(name); |
42 |
super(name); |
43 |
this.endChar = ""; |
43 |
this.endChar = ""; |
Lines 141-159
Link Here
|
141 |
workingCopies = new ICompilationUnit[1]; |
141 |
workingCopies = new ICompilationUnit[1]; |
142 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b41018/A.java", |
142 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b41018/A.java", |
143 |
"package b41018;\n" + |
143 |
"package b41018;\n" + |
144 |
"public class A {\n" + |
144 |
"public class A {\n" + |
145 |
" protected void anotherMethod() {\n" + |
145 |
" protected void anotherMethod() {\n" + |
146 |
" methodA(null);\n" + |
146 |
" methodA(null);\n" + |
147 |
" }\n" + |
147 |
" }\n" + |
148 |
" private Object methodA(ClassB.InnerInterface arg3) {\n" + |
148 |
" private Object methodA(ClassB.InnerInterface arg3) {\n" + |
149 |
" return null;\n" + |
149 |
" return null;\n" + |
150 |
" }\n" + |
150 |
" }\n" + |
151 |
"}\n" + |
151 |
"}\n" + |
152 |
"class ClassB implements InterfaceB {\n" + |
152 |
"class ClassB implements InterfaceB {\n" + |
153 |
"}\n" + |
153 |
"}\n" + |
154 |
"interface InterfaceB {\n" + |
154 |
"interface InterfaceB {\n" + |
155 |
" interface InnerInterface {\n" + |
155 |
" interface InnerInterface {\n" + |
156 |
" }\n" + |
156 |
" }\n" + |
157 |
"}\n" |
157 |
"}\n" |
158 |
); |
158 |
); |
159 |
IType type = workingCopies[0].getType("A"); |
159 |
IType type = workingCopies[0].getType("A"); |
Lines 171-188
Link Here
|
171 |
public void testBug70827() throws CoreException { |
171 |
public void testBug70827() throws CoreException { |
172 |
workingCopies = new ICompilationUnit[1]; |
172 |
workingCopies = new ICompilationUnit[1]; |
173 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b70827/A.java", |
173 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b70827/A.java", |
174 |
"package b70827;\n" + |
174 |
"package b70827;\n" + |
175 |
"class A {\n" + |
175 |
"class A {\n" + |
176 |
" private void privateMethod() {\n" + |
176 |
" private void privateMethod() {\n" + |
177 |
" }\n" + |
177 |
" }\n" + |
178 |
"}\n" + |
178 |
"}\n" + |
179 |
"class Second extends A {\n" + |
179 |
"class Second extends A {\n" + |
180 |
" void call() {\n" + |
180 |
" void call() {\n" + |
181 |
" int i= privateMethod();\n" + |
181 |
" int i= privateMethod();\n" + |
182 |
" }\n" + |
182 |
" }\n" + |
183 |
" int privateMethod() {\n" + |
183 |
" int privateMethod() {\n" + |
184 |
" return 1;\n" + |
184 |
" return 1;\n" + |
185 |
" }\n" + |
185 |
" }\n" + |
186 |
"}\n" |
186 |
"}\n" |
187 |
); |
187 |
); |
188 |
IType type = workingCopies[0].getType("A"); |
188 |
IType type = workingCopies[0].getType("A"); |
Lines 208-221
Link Here
|
208 |
}; |
208 |
}; |
209 |
workingCopies = new ICompilationUnit[1]; |
209 |
workingCopies = new ICompilationUnit[1]; |
210 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b71279/AA.java", |
210 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b71279/AA.java", |
211 |
"package b71279;\n" + |
211 |
"package b71279;\n" + |
212 |
"public class AA {\n" + |
212 |
"public class AA {\n" + |
213 |
" Unknown ref;\n" + |
213 |
" Unknown ref;\n" + |
214 |
"}\n" |
214 |
"}\n" |
215 |
); |
215 |
); |
216 |
new SearchEngine(workingCopies).searchDeclarationsOfReferencedTypes(workingCopies[0], result, null); |
216 |
new SearchEngine(workingCopies).searchDeclarationsOfReferencedTypes(workingCopies[0], result, null); |
217 |
assertSearchResults( |
217 |
assertSearchResults( |
218 |
"Starting search...\n" + |
218 |
"Starting search...\n" + |
219 |
"Done searching.", |
219 |
"Done searching.", |
220 |
result); |
220 |
result); |
221 |
} |
221 |
} |
Lines 228-263
Link Here
|
228 |
workingCopies = new ICompilationUnit[4]; |
228 |
workingCopies = new ICompilationUnit[4]; |
229 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
229 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
230 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b72866/A.java", |
230 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b72866/A.java", |
231 |
"package b72866;\n" + |
231 |
"package b72866;\n" + |
232 |
"public abstract class A {\n" + |
232 |
"public abstract class A {\n" + |
233 |
" public abstract void foo(V v);\n" + |
233 |
" public abstract void foo(V v);\n" + |
234 |
"}\n", |
234 |
"}\n", |
235 |
owner |
235 |
owner |
236 |
); |
236 |
); |
237 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b72866/SX.java", |
237 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b72866/SX.java", |
238 |
"package b72866;\n" + |
238 |
"package b72866;\n" + |
239 |
"public class SX extends A {\n" + |
239 |
"public class SX extends A {\n" + |
240 |
" public void foo(V v) {\n" + |
240 |
" public void foo(V v) {\n" + |
241 |
" v.bar(this);\n" + |
241 |
" v.bar(this);\n" + |
242 |
" }\n" + |
242 |
" }\n" + |
243 |
"}\n" , |
243 |
"}\n" , |
244 |
owner |
244 |
owner |
245 |
); |
245 |
); |
246 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b72866/V.java", |
246 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b72866/V.java", |
247 |
"package b72866;\n" + |
247 |
"package b72866;\n" + |
248 |
"public class V {\n" + |
248 |
"public class V {\n" + |
249 |
" void bar(A a) {}\n" + |
249 |
" void bar(A a) {}\n" + |
250 |
" void bar(X x) {}\n" + |
250 |
" void bar(X x) {}\n" + |
251 |
" void bar(SX s) {}\n" + |
251 |
" void bar(SX s) {}\n" + |
252 |
"}\n" , |
252 |
"}\n" , |
253 |
owner |
253 |
owner |
254 |
); |
254 |
); |
255 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b72866/X.java", |
255 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b72866/X.java", |
256 |
"package b72866;\n" + |
256 |
"package b72866;\n" + |
257 |
"public class X extends A {\n" + |
257 |
"public class X extends A {\n" + |
258 |
" public void foo(V v) {\n" + |
258 |
" public void foo(V v) {\n" + |
259 |
" v.bar(this);\n" + |
259 |
" v.bar(this);\n" + |
260 |
" }\n" + |
260 |
" }\n" + |
261 |
"}\n" , |
261 |
"}\n" , |
262 |
owner |
262 |
owner |
263 |
); |
263 |
); |
Lines 276-320
Link Here
|
276 |
public void testBug73112a() throws CoreException { |
276 |
public void testBug73112a() throws CoreException { |
277 |
workingCopies = new ICompilationUnit[1]; |
277 |
workingCopies = new ICompilationUnit[1]; |
278 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b73112/A.java", |
278 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b73112/A.java", |
279 |
"package b73112;\n" + |
279 |
"package b73112;\n" + |
280 |
"public class A {\n" + |
280 |
"public class A {\n" + |
281 |
" int fieldA73112a = 1, fieldA73112b = new Integer(2).intValue(), fieldA73112c = fieldA73112a + fieldA73112b;\n" + |
281 |
" int fieldA73112a = 1, fieldA73112b = new Integer(2).intValue(), fieldA73112c = fieldA73112a + fieldA73112b;\n" + |
282 |
" int fieldA73112d;\n" + |
282 |
" int fieldA73112d;\n" + |
283 |
" \n" + |
283 |
" \n" + |
284 |
" public void method(){}\n" + |
284 |
" public void method(){}\n" + |
285 |
"}\n"); |
285 |
"}\n"); |
286 |
// search field references to first multiple field |
286 |
// search field references to first multiple field |
287 |
search("fieldA73112*", FIELD, ALL_OCCURRENCES); |
287 |
search("fieldA73112*", FIELD, ALL_OCCURRENCES); |
288 |
assertSearchResults( |
288 |
assertSearchResults( |
289 |
"src/b73112/A.java b73112.A.fieldA73112a [fieldA73112a] EXACT_MATCH\n" + |
289 |
"src/b73112/A.java b73112.A.fieldA73112a [fieldA73112a] EXACT_MATCH\n" + |
290 |
"src/b73112/A.java b73112.A.fieldA73112b [fieldA73112b] EXACT_MATCH\n" + |
290 |
"src/b73112/A.java b73112.A.fieldA73112b [fieldA73112b] EXACT_MATCH\n" + |
291 |
"src/b73112/A.java b73112.A.fieldA73112c [fieldA73112c] EXACT_MATCH\n" + |
291 |
"src/b73112/A.java b73112.A.fieldA73112c [fieldA73112c] EXACT_MATCH\n" + |
292 |
"src/b73112/A.java b73112.A.fieldA73112c [fieldA73112a] EXACT_MATCH\n" + |
292 |
"src/b73112/A.java b73112.A.fieldA73112c [fieldA73112a] EXACT_MATCH\n" + |
293 |
"src/b73112/A.java b73112.A.fieldA73112c [fieldA73112b] EXACT_MATCH\n" + |
293 |
"src/b73112/A.java b73112.A.fieldA73112c [fieldA73112b] EXACT_MATCH\n" + |
294 |
"src/b73112/A.java b73112.A.fieldA73112d [fieldA73112d] EXACT_MATCH" |
294 |
"src/b73112/A.java b73112.A.fieldA73112d [fieldA73112d] EXACT_MATCH" |
295 |
); |
295 |
); |
296 |
} |
296 |
} |
297 |
public void testBug73112b() throws CoreException { |
297 |
public void testBug73112b() throws CoreException { |
298 |
workingCopies = new ICompilationUnit[1]; |
298 |
workingCopies = new ICompilationUnit[1]; |
299 |
workingCopies[0] = super.getWorkingCopy("/JavaSearchBugs/src/b73112/B.java", |
299 |
workingCopies[0] = super.getWorkingCopy("/JavaSearchBugs/src/b73112/B.java", |
300 |
"package b73112;\n" + |
300 |
"package b73112;\n" + |
301 |
"public class B {\n" + |
301 |
"public class B {\n" + |
302 |
" int fieldB73112a, fieldB73112b = 10;\n" + |
302 |
" int fieldB73112a, fieldB73112b = 10;\n" + |
303 |
" int fieldB73112c = fieldB73112a + fieldB73112b, fieldB73112d = fieldB73112c + fieldB73112a, fieldB73112e;\n" + |
303 |
" int fieldB73112c = fieldB73112a + fieldB73112b, fieldB73112d = fieldB73112c + fieldB73112a, fieldB73112e;\n" + |
304 |
" \n" + |
304 |
" \n" + |
305 |
" public void method(){}\n" + |
305 |
" public void method(){}\n" + |
306 |
"}\n"); |
306 |
"}\n"); |
307 |
// search field references to first multiple field |
307 |
// search field references to first multiple field |
308 |
search("fieldB73112*", FIELD, ALL_OCCURRENCES); |
308 |
search("fieldB73112*", FIELD, ALL_OCCURRENCES); |
309 |
assertSearchResults( |
309 |
assertSearchResults( |
310 |
"src/b73112/B.java b73112.B.fieldB73112a [fieldB73112a] EXACT_MATCH\n" + |
310 |
"src/b73112/B.java b73112.B.fieldB73112a [fieldB73112a] EXACT_MATCH\n" + |
311 |
"src/b73112/B.java b73112.B.fieldB73112b [fieldB73112b] EXACT_MATCH\n" + |
311 |
"src/b73112/B.java b73112.B.fieldB73112b [fieldB73112b] EXACT_MATCH\n" + |
312 |
"src/b73112/B.java b73112.B.fieldB73112c [fieldB73112c] EXACT_MATCH\n" + |
312 |
"src/b73112/B.java b73112.B.fieldB73112c [fieldB73112c] EXACT_MATCH\n" + |
313 |
"src/b73112/B.java b73112.B.fieldB73112c [fieldB73112a] EXACT_MATCH\n" + |
313 |
"src/b73112/B.java b73112.B.fieldB73112c [fieldB73112a] EXACT_MATCH\n" + |
314 |
"src/b73112/B.java b73112.B.fieldB73112c [fieldB73112b] EXACT_MATCH\n" + |
314 |
"src/b73112/B.java b73112.B.fieldB73112c [fieldB73112b] EXACT_MATCH\n" + |
315 |
"src/b73112/B.java b73112.B.fieldB73112d [fieldB73112d] EXACT_MATCH\n" + |
315 |
"src/b73112/B.java b73112.B.fieldB73112d [fieldB73112d] EXACT_MATCH\n" + |
316 |
"src/b73112/B.java b73112.B.fieldB73112d [fieldB73112c] EXACT_MATCH\n" + |
316 |
"src/b73112/B.java b73112.B.fieldB73112d [fieldB73112c] EXACT_MATCH\n" + |
317 |
"src/b73112/B.java b73112.B.fieldB73112d [fieldB73112a] EXACT_MATCH\n" + |
317 |
"src/b73112/B.java b73112.B.fieldB73112d [fieldB73112a] EXACT_MATCH\n" + |
318 |
"src/b73112/B.java b73112.B.fieldB73112e [fieldB73112e] EXACT_MATCH" |
318 |
"src/b73112/B.java b73112.B.fieldB73112e [fieldB73112e] EXACT_MATCH" |
319 |
); |
319 |
); |
320 |
} |
320 |
} |
Lines 327-372
Link Here
|
327 |
workingCopies = new ICompilationUnit[6]; |
327 |
workingCopies = new ICompilationUnit[6]; |
328 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
328 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
329 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b73336/A.java", |
329 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b73336/A.java", |
330 |
"package b73336;\n" + |
330 |
"package b73336;\n" + |
331 |
"public class A {}\n", |
331 |
"public class A {}\n", |
332 |
owner |
332 |
owner |
333 |
); |
333 |
); |
334 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b73336/AA.java", |
334 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b73336/AA.java", |
335 |
"package b73336;\n" + |
335 |
"package b73336;\n" + |
336 |
"public class AA extends A {}\n", |
336 |
"public class AA extends A {}\n", |
337 |
owner |
337 |
owner |
338 |
); |
338 |
); |
339 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b73336/B.java", |
339 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b73336/B.java", |
340 |
"package b73336;\n" + |
340 |
"package b73336;\n" + |
341 |
"public class B extends X<A, A> {\n" + |
341 |
"public class B extends X<A, A> {\n" + |
342 |
" <T> void foo(T t) {}\n" + |
342 |
" <T> void foo(T t) {}\n" + |
343 |
"}\n", |
343 |
"}\n", |
344 |
owner |
344 |
owner |
345 |
); |
345 |
); |
346 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b73336/C.java", |
346 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b73336/C.java", |
347 |
"package b73336;\n" + |
347 |
"package b73336;\n" + |
348 |
"public class C implements I<A> {\n" + |
348 |
"public class C implements I<A> {\n" + |
349 |
" public void foo() {\n" + |
349 |
" public void foo() {\n" + |
350 |
" B b = new B();\n" + |
350 |
" B b = new B();\n" + |
351 |
" b.<A>foo(new A());\n" + |
351 |
" b.<A>foo(new A());\n" + |
352 |
" }\n" + |
352 |
" }\n" + |
353 |
"}\n", |
353 |
"}\n", |
354 |
owner |
354 |
owner |
355 |
); |
355 |
); |
356 |
workingCopies[4] = getWorkingCopy("/JavaSearchBugs/src/b73336/I.java", |
356 |
workingCopies[4] = getWorkingCopy("/JavaSearchBugs/src/b73336/I.java", |
357 |
"package b73336;\n" + |
357 |
"package b73336;\n" + |
358 |
"public interface I<T> {\n" + |
358 |
"public interface I<T> {\n" + |
359 |
" public void foo();\n" + |
359 |
" public void foo();\n" + |
360 |
"}\n", |
360 |
"}\n", |
361 |
owner |
361 |
owner |
362 |
); |
362 |
); |
363 |
workingCopies[5] = getWorkingCopy("/JavaSearchBugs/src/b73336/X.java", |
363 |
workingCopies[5] = getWorkingCopy("/JavaSearchBugs/src/b73336/X.java", |
364 |
"package b73336;\n" + |
364 |
"package b73336;\n" + |
365 |
"public class X<T, U> {\n" + |
365 |
"public class X<T, U> {\n" + |
366 |
" <V> void foo(V v) {}\n" + |
366 |
" <V> void foo(V v) {}\n" + |
367 |
" class Member<T> {\n" + |
367 |
" class Member<T> {\n" + |
368 |
" void foo() {}\n" + |
368 |
" void foo() {}\n" + |
369 |
" }\n" + |
369 |
" }\n" + |
370 |
"}\n", |
370 |
"}\n", |
371 |
owner |
371 |
owner |
372 |
); |
372 |
); |
Lines 374-384
Link Here
|
374 |
IType type = workingCopies[0].getType("A"); |
374 |
IType type = workingCopies[0].getType("A"); |
375 |
search(type, REFERENCES); //, getJavaSearchScopeBugs("b73336", false)); |
375 |
search(type, REFERENCES); //, getJavaSearchScopeBugs("b73336", false)); |
376 |
assertSearchResults( |
376 |
assertSearchResults( |
377 |
"src/b73336/AA.java b73336.AA [A] EXACT_MATCH\n" + |
377 |
"src/b73336/AA.java b73336.AA [A] EXACT_MATCH\n" + |
378 |
"src/b73336/B.java b73336.B [A] EXACT_MATCH\n" + |
378 |
"src/b73336/B.java b73336.B [A] EXACT_MATCH\n" + |
379 |
"src/b73336/B.java b73336.B [A] EXACT_MATCH\n" + |
379 |
"src/b73336/B.java b73336.B [A] EXACT_MATCH\n" + |
380 |
"src/b73336/C.java b73336.C [A] EXACT_MATCH\n" + |
380 |
"src/b73336/C.java b73336.C [A] EXACT_MATCH\n" + |
381 |
"src/b73336/C.java void b73336.C.foo() [A] EXACT_MATCH\n" + |
381 |
"src/b73336/C.java void b73336.C.foo() [A] EXACT_MATCH\n" + |
382 |
"src/b73336/C.java void b73336.C.foo() [A] EXACT_MATCH" |
382 |
"src/b73336/C.java void b73336.C.foo() [A] EXACT_MATCH" |
383 |
); |
383 |
); |
384 |
} |
384 |
} |
Lines 386-417
Link Here
|
386 |
workingCopies = new ICompilationUnit[4]; |
386 |
workingCopies = new ICompilationUnit[4]; |
387 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
387 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
388 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b73336b/A.java", |
388 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b73336b/A.java", |
389 |
"package b73336b;\n" + |
389 |
"package b73336b;\n" + |
390 |
"public class A {}\n", |
390 |
"public class A {}\n", |
391 |
owner |
391 |
owner |
392 |
); |
392 |
); |
393 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b73336b/B.java", |
393 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b73336b/B.java", |
394 |
"package b73336b;\n" + |
394 |
"package b73336b;\n" + |
395 |
"public class B extends X<A, A> {\n" + |
395 |
"public class B extends X<A, A> {\n" + |
396 |
"}\n", |
396 |
"}\n", |
397 |
owner |
397 |
owner |
398 |
); |
398 |
); |
399 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b73336b/C.java", |
399 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b73336b/C.java", |
400 |
"package b73336b;\n" + |
400 |
"package b73336b;\n" + |
401 |
"public class C extends X<A, A>.Member<A> {\n" + |
401 |
"public class C extends X<A, A>.Member<A> {\n" + |
402 |
" public C() {\n" + |
402 |
" public C() {\n" + |
403 |
" new X<A, A>().super();\n" + |
403 |
" new X<A, A>().super();\n" + |
404 |
" }\n" + |
404 |
" }\n" + |
405 |
"}\n", |
405 |
"}\n", |
406 |
owner |
406 |
owner |
407 |
); |
407 |
); |
408 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b73336b/X.java", |
408 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b73336b/X.java", |
409 |
"package b73336b;\n" + |
409 |
"package b73336b;\n" + |
410 |
"public class X<T, U> {\n" + |
410 |
"public class X<T, U> {\n" + |
411 |
" <V> void foo(V v) {}\n" + |
411 |
" <V> void foo(V v) {}\n" + |
412 |
" class Member<T> {\n" + |
412 |
" class Member<T> {\n" + |
413 |
" void foo() {}\n" + |
413 |
" void foo() {}\n" + |
414 |
" }\n" + |
414 |
" }\n" + |
415 |
"}\n", |
415 |
"}\n", |
416 |
owner |
416 |
owner |
417 |
); |
417 |
); |
Lines 420-431
Link Here
|
420 |
// search(type, REFERENCES, getJavaSearchScopeBugs("b73336b", false)); |
420 |
// search(type, REFERENCES, getJavaSearchScopeBugs("b73336b", false)); |
421 |
search(type, REFERENCES); //, getJavaSearchScopeBugs("b73336", false)); |
421 |
search(type, REFERENCES); //, getJavaSearchScopeBugs("b73336", false)); |
422 |
assertSearchResults( |
422 |
assertSearchResults( |
423 |
"src/b73336b/B.java b73336b.B [A] EXACT_MATCH\n" + |
423 |
"src/b73336b/B.java b73336b.B [A] EXACT_MATCH\n" + |
424 |
"src/b73336b/B.java b73336b.B [A] EXACT_MATCH\n" + |
424 |
"src/b73336b/B.java b73336b.B [A] EXACT_MATCH\n" + |
425 |
"src/b73336b/C.java b73336b.C [A] EXACT_MATCH\n" + |
425 |
"src/b73336b/C.java b73336b.C [A] EXACT_MATCH\n" + |
426 |
"src/b73336b/C.java b73336b.C [A] EXACT_MATCH\n" + |
426 |
"src/b73336b/C.java b73336b.C [A] EXACT_MATCH\n" + |
427 |
"src/b73336b/C.java b73336b.C [A] EXACT_MATCH\n" + |
427 |
"src/b73336b/C.java b73336b.C [A] EXACT_MATCH\n" + |
428 |
"src/b73336b/C.java b73336b.C() [A] EXACT_MATCH\n" + |
428 |
"src/b73336b/C.java b73336b.C() [A] EXACT_MATCH\n" + |
429 |
"src/b73336b/C.java b73336b.C() [A] EXACT_MATCH" |
429 |
"src/b73336b/C.java b73336b.C() [A] EXACT_MATCH" |
430 |
); |
430 |
); |
431 |
} |
431 |
} |
Lines 434-462
Link Here
|
434 |
workingCopies = new ICompilationUnit[4]; |
434 |
workingCopies = new ICompilationUnit[4]; |
435 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
435 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
436 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b73336c/A.java", |
436 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b73336c/A.java", |
437 |
"package b73336c;\n" + |
437 |
"package b73336c;\n" + |
438 |
"public class A {}\n", |
438 |
"public class A {}\n", |
439 |
owner |
439 |
owner |
440 |
); |
440 |
); |
441 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b73336c/B.java", |
441 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b73336c/B.java", |
442 |
"package b73336c;\n" + |
442 |
"package b73336c;\n" + |
443 |
"public class B extends X<A, A> {\n" + |
443 |
"public class B extends X<A, A> {\n" + |
444 |
"}\n", |
444 |
"}\n", |
445 |
owner |
445 |
owner |
446 |
); |
446 |
); |
447 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b73336c/C.java", |
447 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b73336c/C.java", |
448 |
"package b73336c;\n" + |
448 |
"package b73336c;\n" + |
449 |
"public class C implements X<A, A>.Interface<A> {\n" + |
449 |
"public class C implements X<A, A>.Interface<A> {\n" + |
450 |
" void bar() {}\n" + |
450 |
" void bar() {}\n" + |
451 |
"}\n", |
451 |
"}\n", |
452 |
owner |
452 |
owner |
453 |
); |
453 |
); |
454 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b73336c/X.java", |
454 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b73336c/X.java", |
455 |
"package b73336c;\n" + |
455 |
"package b73336c;\n" + |
456 |
"public class X<T, U> {\n" + |
456 |
"public class X<T, U> {\n" + |
457 |
" interface Interface<V> {\n" + |
457 |
" interface Interface<V> {\n" + |
458 |
" void bar();\n" + |
458 |
" void bar();\n" + |
459 |
" }\n" + |
459 |
" }\n" + |
460 |
"}\n", |
460 |
"}\n", |
461 |
owner |
461 |
owner |
462 |
); |
462 |
); |
Lines 465-474
Link Here
|
465 |
// search(type, REFERENCES, getJavaSearchScopeBugs("b73336c", false)); |
465 |
// search(type, REFERENCES, getJavaSearchScopeBugs("b73336c", false)); |
466 |
search(type, REFERENCES); //, getJavaSearchScopeBugs("b73336", false)); |
466 |
search(type, REFERENCES); //, getJavaSearchScopeBugs("b73336", false)); |
467 |
assertSearchResults( |
467 |
assertSearchResults( |
468 |
"src/b73336c/B.java b73336c.B [A] EXACT_MATCH\n" + |
468 |
"src/b73336c/B.java b73336c.B [A] EXACT_MATCH\n" + |
469 |
"src/b73336c/B.java b73336c.B [A] EXACT_MATCH\n" + |
469 |
"src/b73336c/B.java b73336c.B [A] EXACT_MATCH\n" + |
470 |
"src/b73336c/C.java b73336c.C [A] EXACT_MATCH\n" + |
470 |
"src/b73336c/C.java b73336c.C [A] EXACT_MATCH\n" + |
471 |
"src/b73336c/C.java b73336c.C [A] EXACT_MATCH\n" + |
471 |
"src/b73336c/C.java b73336c.C [A] EXACT_MATCH\n" + |
472 |
"src/b73336c/C.java b73336c.C [A] EXACT_MATCH" |
472 |
"src/b73336c/C.java b73336c.C [A] EXACT_MATCH" |
473 |
); |
473 |
); |
474 |
} |
474 |
} |
Lines 481-498
Link Here
|
481 |
workingCopies = new ICompilationUnit[2]; |
481 |
workingCopies = new ICompilationUnit[2]; |
482 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
482 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
483 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b73696/C.java", |
483 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b73696/C.java", |
484 |
"package b73696;\n" + |
484 |
"package b73696;\n" + |
485 |
"public class C implements I {\n" + |
485 |
"public class C implements I {\n" + |
486 |
"}", |
486 |
"}", |
487 |
owner |
487 |
owner |
488 |
); |
488 |
); |
489 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b73696/I.java", |
489 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b73696/I.java", |
490 |
"package b73696;\n" + |
490 |
"package b73696;\n" + |
491 |
"public interface I {}\n", |
491 |
"public interface I {}\n", |
492 |
owner |
492 |
owner |
493 |
); |
493 |
); |
494 |
IJavaSearchScope scope = SearchEngine.createJavaSearchScope(workingCopies); |
494 |
IJavaSearchScope scope = SearchEngine.createJavaSearchScope(workingCopies); |
495 |
|
495 |
|
496 |
// Interface declaration |
496 |
// Interface declaration |
497 |
TypeDeclarationPattern pattern = new TypeDeclarationPattern( |
497 |
TypeDeclarationPattern pattern = new TypeDeclarationPattern( |
498 |
null, |
498 |
null, |
Lines 522-528
Link Here
|
522 |
resultCollector, |
522 |
resultCollector, |
523 |
null); |
523 |
null); |
524 |
assertSearchResults( |
524 |
assertSearchResults( |
525 |
"src/b73696/I.java b73696.I [I] EXACT_MATCH\n" + |
525 |
"src/b73696/I.java b73696.I [I] EXACT_MATCH\n" + |
526 |
"src/b73696/C.java b73696.C [C] EXACT_MATCH" |
526 |
"src/b73696/C.java b73696.C [C] EXACT_MATCH" |
527 |
); |
527 |
); |
528 |
} |
528 |
} |
Lines 535-564
Link Here
|
535 |
workingCopies = new ICompilationUnit[3]; |
535 |
workingCopies = new ICompilationUnit[3]; |
536 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
536 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
537 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b74776/A.java", |
537 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b74776/A.java", |
538 |
"package b74776;\n" + |
538 |
"package b74776;\n" + |
539 |
"public class A {\n" + |
539 |
"public class A {\n" + |
540 |
" /**\n" + |
540 |
" /**\n" + |
541 |
" * @deprecated Use {@link #foo(IRegion)} instead\n" + |
541 |
" * @deprecated Use {@link #foo(IRegion)} instead\n" + |
542 |
" * @param r\n" + |
542 |
" * @param r\n" + |
543 |
" */\n" + |
543 |
" */\n" + |
544 |
" void foo(Region r) {\n" + |
544 |
" void foo(Region r) {\n" + |
545 |
" foo((IRegion)r);\n" + |
545 |
" foo((IRegion)r);\n" + |
546 |
" }\n" + |
546 |
" }\n" + |
547 |
" void foo(IRegion r) {\n" + |
547 |
" void foo(IRegion r) {\n" + |
548 |
" }\n" + |
548 |
" }\n" + |
549 |
"}\n", |
549 |
"}\n", |
550 |
owner |
550 |
owner |
551 |
); |
551 |
); |
552 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b74776/IRegion.java", |
552 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b74776/IRegion.java", |
553 |
"package b74776;\n" + |
553 |
"package b74776;\n" + |
554 |
"public interface IRegion {\n" + |
554 |
"public interface IRegion {\n" + |
555 |
"}\n", |
555 |
"}\n", |
556 |
owner |
556 |
owner |
557 |
); |
557 |
); |
558 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b74776/Region.java", |
558 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b74776/Region.java", |
559 |
"package b74776;\n" + |
559 |
"package b74776;\n" + |
560 |
"public class Region implements IRegion {\n" + |
560 |
"public class Region implements IRegion {\n" + |
561 |
"\n" + |
561 |
"\n" + |
562 |
"}\n", |
562 |
"}\n", |
563 |
owner |
563 |
owner |
564 |
); |
564 |
); |
Lines 591-613
Link Here
|
591 |
private void setUpBug77093() throws CoreException { |
591 |
private void setUpBug77093() throws CoreException { |
592 |
workingCopies = new ICompilationUnit[1]; |
592 |
workingCopies = new ICompilationUnit[1]; |
593 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b77093/X.java", |
593 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b77093/X.java", |
594 |
"package b77093;\n" + |
594 |
"package b77093;\n" + |
595 |
"public class X {\n" + |
595 |
"public class X {\n" + |
596 |
" class Z {\n" + |
596 |
" class Z {\n" + |
597 |
" }\n" + |
597 |
" }\n" + |
598 |
" Z[][] z_arrays;\n" + |
598 |
" Z[][] z_arrays;\n" + |
599 |
" X() {\n" + |
599 |
" X() {\n" + |
600 |
" this(new Z[10][]);\n" + |
600 |
" this(new Z[10][]);\n" + |
601 |
" }\n" + |
601 |
" }\n" + |
602 |
" X(Z[][] arrays) {\n" + |
602 |
" X(Z[][] arrays) {\n" + |
603 |
" z_arrays = arrays;\n" + |
603 |
" z_arrays = arrays;\n" + |
604 |
" }\n" + |
604 |
" }\n" + |
605 |
" private void foo(Z[] args) {\n" + |
605 |
" private void foo(Z[] args) {\n" + |
606 |
" }\n" + |
606 |
" }\n" + |
607 |
" void bar() {\n" + |
607 |
" void bar() {\n" + |
608 |
" for (int i=0; i<z_arrays.length; i++)\n" + |
608 |
" for (int i=0; i<z_arrays.length; i++)\n" + |
609 |
" foo(z_arrays[i]);\n" + |
609 |
" foo(z_arrays[i]);\n" + |
610 |
" }\n" + |
610 |
" }\n" + |
611 |
"}" |
611 |
"}" |
612 |
); |
612 |
); |
613 |
} |
613 |
} |
Lines 630-637
Link Here
|
630 |
search(field, ALL_OCCURRENCES); |
630 |
search(field, ALL_OCCURRENCES); |
631 |
assertSearchResults( |
631 |
assertSearchResults( |
632 |
"src/b77093/X.java b77093.X.z_arrays [z_arrays] EXACT_MATCH\n" + |
632 |
"src/b77093/X.java b77093.X.z_arrays [z_arrays] EXACT_MATCH\n" + |
633 |
"src/b77093/X.java b77093.X(Z[][]) [z_arrays] EXACT_MATCH\n" + |
633 |
"src/b77093/X.java b77093.X(Z[][]) [z_arrays] EXACT_MATCH\n" + |
634 |
"src/b77093/X.java void b77093.X.bar() [z_arrays] EXACT_MATCH\n" + |
634 |
"src/b77093/X.java void b77093.X.bar() [z_arrays] EXACT_MATCH\n" + |
635 |
"src/b77093/X.java void b77093.X.bar() [z_arrays] EXACT_MATCH" |
635 |
"src/b77093/X.java void b77093.X.bar() [z_arrays] EXACT_MATCH" |
636 |
); |
636 |
); |
637 |
} |
637 |
} |
Lines 652-664
Link Here
|
652 |
public void testBug77388() throws CoreException { |
652 |
public void testBug77388() throws CoreException { |
653 |
workingCopies = new ICompilationUnit[1]; |
653 |
workingCopies = new ICompilationUnit[1]; |
654 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b77388/Test.java", |
654 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b77388/Test.java", |
655 |
"package b77388;\n" + |
655 |
"package b77388;\n" + |
656 |
"class Test {\n" + |
656 |
"class Test {\n" + |
657 |
" Test(int a, int b) { }\n" + |
657 |
" Test(int a, int b) { }\n" + |
658 |
" void take(Test mc) { }\n" + |
658 |
" void take(Test mc) { }\n" + |
659 |
" void run() {\n" + |
659 |
" void run() {\n" + |
660 |
" take( new Test(1, 2) ); // space in \") )\" is in match\n" + |
660 |
" take( new Test(1, 2) ); // space in \") )\" is in match\n" + |
661 |
" }\n" + |
661 |
" }\n" + |
662 |
"}"); |
662 |
"}"); |
663 |
IType type = workingCopies[0].getType("Test"); |
663 |
IType type = workingCopies[0].getType("Test"); |
664 |
IMethod method = type.getMethod("Test", new String[] {"I", "I"}); |
664 |
IMethod method = type.getMethod("Test", new String[] {"I", "I"}); |
Lines 677-694
Link Here
|
677 |
workingCopies = new ICompilationUnit[2]; |
677 |
workingCopies = new ICompilationUnit[2]; |
678 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
678 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
679 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b78082/M.java", |
679 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b78082/M.java", |
680 |
"package b78082;\n" + |
680 |
"package b78082;\n" + |
681 |
"public class M {\n" + |
681 |
"public class M {\n" + |
682 |
" static int VAL=78082;\n" + |
682 |
" static int VAL=78082;\n" + |
683 |
"}\n", |
683 |
"}\n", |
684 |
owner |
684 |
owner |
685 |
); |
685 |
); |
686 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b78082/XY.java", |
686 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b78082/XY.java", |
687 |
"package b78082;\n" + |
687 |
"package b78082;\n" + |
688 |
"import static b78082.M.VAL;\n" + |
688 |
"import static b78082.M.VAL;\n" + |
689 |
"public class XY {\n" + |
689 |
"public class XY {\n" + |
690 |
" double val = VAL;\n" + |
690 |
" double val = VAL;\n" + |
691 |
" double val2= b78082.M.VAL;\n" + |
691 |
" double val2= b78082.M.VAL;\n" + |
692 |
"}\n", |
692 |
"}\n", |
693 |
owner |
693 |
owner |
694 |
); |
694 |
); |
Lines 697-705
Link Here
|
697 |
IField field = type.getField("VAL"); |
697 |
IField field = type.getField("VAL"); |
698 |
search(field, ALL_OCCURRENCES); |
698 |
search(field, ALL_OCCURRENCES); |
699 |
assertSearchResults( |
699 |
assertSearchResults( |
700 |
"src/b78082/M.java b78082.M.VAL [VAL] EXACT_MATCH\n" + |
700 |
"src/b78082/M.java b78082.M.VAL [VAL] EXACT_MATCH\n" + |
701 |
"src/b78082/XY.java [VAL] EXACT_MATCH\n" + |
701 |
"src/b78082/XY.java [VAL] EXACT_MATCH\n" + |
702 |
"src/b78082/XY.java b78082.XY.val [VAL] EXACT_MATCH\n" + |
702 |
"src/b78082/XY.java b78082.XY.val [VAL] EXACT_MATCH\n" + |
703 |
"src/b78082/XY.java b78082.XY.val2 [VAL] EXACT_MATCH" |
703 |
"src/b78082/XY.java b78082.XY.val2 [VAL] EXACT_MATCH" |
704 |
); |
704 |
); |
705 |
} |
705 |
} |
Lines 711-739
Link Here
|
711 |
public void testBug79267() throws CoreException { |
711 |
public void testBug79267() throws CoreException { |
712 |
workingCopies = new ICompilationUnit[1]; |
712 |
workingCopies = new ICompilationUnit[1]; |
713 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79267/Test.java", |
713 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79267/Test.java", |
714 |
"package b79267;\n" + |
714 |
"package b79267;\n" + |
715 |
"public class Test {\n" + |
715 |
"public class Test {\n" + |
716 |
" private static final X<String, String> BEFORE = new X<String, String>(4);\n" + |
716 |
" private static final X<String, String> BEFORE = new X<String, String>(4);\n" + |
717 |
"\n" + |
717 |
"\n" + |
718 |
" static {\n" + |
718 |
" static {\n" + |
719 |
" BEFORE.put(\"key1\",\"value1\");\n" + |
719 |
" BEFORE.put(\"key1\",\"value1\");\n" + |
720 |
" BEFORE.put(\"key2\",\"value2\");\n" + |
720 |
" BEFORE.put(\"key2\",\"value2\");\n" + |
721 |
" }\n" + |
721 |
" }\n" + |
722 |
" \n" + |
722 |
" \n" + |
723 |
" private static final X<Y, Object> objectToPrimitiveMap = new X<Y, Object>(8);\n" + |
723 |
" private static final X<Y, Object> objectToPrimitiveMap = new X<Y, Object>(8);\n" + |
724 |
"\n" + |
724 |
"\n" + |
725 |
" static {\n" + |
725 |
" static {\n" + |
726 |
" objectToPrimitiveMap.put(new Y<Object>(new Object()), new Object());\n" + |
726 |
" objectToPrimitiveMap.put(new Y<Object>(new Object()), new Object());\n" + |
727 |
" }\n" + |
727 |
" }\n" + |
728 |
"}\n" + |
728 |
"}\n" + |
729 |
"\n" + |
729 |
"\n" + |
730 |
"class X<T, U> {\n" + |
730 |
"class X<T, U> {\n" + |
731 |
" X(int x) {}\n" + |
731 |
" X(int x) {}\n" + |
732 |
" void put(T t, U u) {}\n" + |
732 |
" void put(T t, U u) {}\n" + |
733 |
"}\n" + |
733 |
"}\n" + |
734 |
"\n" + |
734 |
"\n" + |
735 |
"class Y<T> {\n" + |
735 |
"class Y<T> {\n" + |
736 |
" Y(T t) {}\n" + |
736 |
" Y(T t) {}\n" + |
737 |
"}\n"); |
737 |
"}\n"); |
738 |
// search field references |
738 |
// search field references |
739 |
IType type = workingCopies[0].getType("Test"); |
739 |
IType type = workingCopies[0].getType("Test"); |
Lines 742-749
Link Here
|
742 |
field = type.getField("objectToPrimitiveMap"); |
742 |
field = type.getField("objectToPrimitiveMap"); |
743 |
search(field, REFERENCES); |
743 |
search(field, REFERENCES); |
744 |
assertSearchResults( |
744 |
assertSearchResults( |
745 |
"src/b79267/Test.java b79267.Test.static {} [BEFORE] EXACT_MATCH\n" + |
745 |
"src/b79267/Test.java b79267.Test.static {} [BEFORE] EXACT_MATCH\n" + |
746 |
"src/b79267/Test.java b79267.Test.static {} [BEFORE] EXACT_MATCH\n" + |
746 |
"src/b79267/Test.java b79267.Test.static {} [BEFORE] EXACT_MATCH\n" + |
747 |
"src/b79267/Test.java b79267.Test.static {} [objectToPrimitiveMap] EXACT_MATCH" |
747 |
"src/b79267/Test.java b79267.Test.static {} [objectToPrimitiveMap] EXACT_MATCH" |
748 |
); |
748 |
); |
749 |
} |
749 |
} |
Lines 755-769
Link Here
|
755 |
public void testBug79378() throws CoreException { |
755 |
public void testBug79378() throws CoreException { |
756 |
workingCopies = new ICompilationUnit[1]; |
756 |
workingCopies = new ICompilationUnit[1]; |
757 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79378/A.java", |
757 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79378/A.java", |
758 |
"package b79378;\n" + |
758 |
"package b79378;\n" + |
759 |
"public class Test {\n" + |
759 |
"public class Test {\n" + |
760 |
" void foo79378(String s, RuntimeException[] exceptions) {}\n" + |
760 |
" void foo79378(String s, RuntimeException[] exceptions) {}\n" + |
761 |
" void foo79378(RuntimeException[] exceptions) {}\n" + |
761 |
" void foo79378(RuntimeException[] exceptions) {}\n" + |
762 |
" void call() {\n" + |
762 |
" void call() {\n" + |
763 |
" String s= null; \n" + |
763 |
" String s= null; \n" + |
764 |
" Exception[] exceptions= null;\n" + |
764 |
" Exception[] exceptions= null;\n" + |
765 |
" foo79378(s, exceptions);\n" + |
765 |
" foo79378(s, exceptions);\n" + |
766 |
" }\n" + |
766 |
" }\n" + |
767 |
"}\n" |
767 |
"}\n" |
768 |
); |
768 |
); |
769 |
IMethod[] methods = workingCopies[0].getType("Test").getMethods(); |
769 |
IMethod[] methods = workingCopies[0].getType("Test").getMethods(); |
Lines 777-791
Link Here
|
777 |
resultCollector.showRule = true; |
777 |
resultCollector.showRule = true; |
778 |
workingCopies = new ICompilationUnit[1]; |
778 |
workingCopies = new ICompilationUnit[1]; |
779 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79378/A.java", |
779 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79378/A.java", |
780 |
"package b79378;\n" + |
780 |
"package b79378;\n" + |
781 |
"public class Test {\n" + |
781 |
"public class Test {\n" + |
782 |
" void foo79378(String s, RuntimeException[] exceptions) {}\n" + |
782 |
" void foo79378(String s, RuntimeException[] exceptions) {}\n" + |
783 |
" void foo79378(RuntimeException[] exceptions) {}\n" + |
783 |
" void foo79378(RuntimeException[] exceptions) {}\n" + |
784 |
" void call() {\n" + |
784 |
" void call() {\n" + |
785 |
" String s= null; \n" + |
785 |
" String s= null; \n" + |
786 |
" Exception[] exceptions= null;\n" + |
786 |
" Exception[] exceptions= null;\n" + |
787 |
" foo79378(s, exceptions);\n" + |
787 |
" foo79378(s, exceptions);\n" + |
788 |
" }\n" + |
788 |
" }\n" + |
789 |
"}\n" |
789 |
"}\n" |
790 |
); |
790 |
); |
791 |
IMethod[] methods = workingCopies[0].getType("Test").getMethods(); |
791 |
IMethod[] methods = workingCopies[0].getType("Test").getMethods(); |
Lines 801-832
Link Here
|
801 |
public void testBug79803() throws CoreException { |
801 |
public void testBug79803() throws CoreException { |
802 |
workingCopies = new ICompilationUnit[1]; |
802 |
workingCopies = new ICompilationUnit[1]; |
803 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79803/A.java", |
803 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79803/A.java", |
804 |
"package b79803;\n" + |
804 |
"package b79803;\n" + |
805 |
"class A<A> {\n" + |
805 |
"class A<A> {\n" + |
806 |
" A a;\n" + |
806 |
" A a;\n" + |
807 |
" b79803.A pa= new b79803.A();\n" + |
807 |
" b79803.A pa= new b79803.A();\n" + |
808 |
"}\n" |
808 |
"}\n" |
809 |
); |
809 |
); |
810 |
IType type = workingCopies[0].getType("A"); |
810 |
IType type = workingCopies[0].getType("A"); |
811 |
search(type, REFERENCES, ERASURE_RULE); |
811 |
search(type, REFERENCES, ERASURE_RULE); |
812 |
assertSearchResults( |
812 |
assertSearchResults( |
813 |
"src/b79803/A.java b79803.A.pa [b79803.A] EXACT_MATCH\n" + |
813 |
"src/b79803/A.java b79803.A.pa [b79803.A] EXACT_MATCH\n" + |
814 |
"src/b79803/A.java b79803.A.pa [b79803.A] EXACT_MATCH" |
814 |
"src/b79803/A.java b79803.A.pa [b79803.A] EXACT_MATCH" |
815 |
); |
815 |
); |
816 |
} |
816 |
} |
817 |
public void testBug79803string() throws CoreException { |
817 |
public void testBug79803string() throws CoreException { |
818 |
workingCopies = new ICompilationUnit[1]; |
818 |
workingCopies = new ICompilationUnit[1]; |
819 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79803/A.java", |
819 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79803/A.java", |
820 |
"package b79803;\n" + |
820 |
"package b79803;\n" + |
821 |
"class A<A> {\n" + |
821 |
"class A<A> {\n" + |
822 |
" A a;\n" + |
822 |
" A a;\n" + |
823 |
" b79803.A pa= new b79803.A();\n" + |
823 |
" b79803.A pa= new b79803.A();\n" + |
824 |
"}\n" |
824 |
"}\n" |
825 |
); |
825 |
); |
826 |
search("A", TYPE, REFERENCES); |
826 |
search("A", TYPE, REFERENCES); |
827 |
assertSearchResults( |
827 |
assertSearchResults( |
828 |
"src/b79803/A.java b79803.A.a [A] EXACT_MATCH\n" + |
828 |
"src/b79803/A.java b79803.A.a [A] EXACT_MATCH\n" + |
829 |
"src/b79803/A.java b79803.A.pa [A] EXACT_MATCH\n" + |
829 |
"src/b79803/A.java b79803.A.pa [A] EXACT_MATCH\n" + |
830 |
"src/b79803/A.java b79803.A.pa [A] EXACT_MATCH" |
830 |
"src/b79803/A.java b79803.A.pa [A] EXACT_MATCH" |
831 |
); |
831 |
); |
832 |
} |
832 |
} |
Lines 839-855
Link Here
|
839 |
workingCopies = new ICompilationUnit[2]; |
839 |
workingCopies = new ICompilationUnit[2]; |
840 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
840 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
841 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79860/X.java", |
841 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79860/X.java", |
842 |
"package b79860;\n" + |
842 |
"package b79860;\n" + |
843 |
"public class X<T extends A> { }\n" + |
843 |
"public class X<T extends A> { }\n" + |
844 |
"class A { }", |
844 |
"class A { }", |
845 |
owner |
845 |
owner |
846 |
); |
846 |
); |
847 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b79860/Y.java", |
847 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b79860/Y.java", |
848 |
"package b79860;\n" + |
848 |
"package b79860;\n" + |
849 |
"public class Y<T extends B&I1&I2&I3> { }\n" + |
849 |
"public class Y<T extends B&I1&I2&I3> { }\n" + |
850 |
"class B { }\n" + |
850 |
"class B { }\n" + |
851 |
"interface I1 {}\n" + |
851 |
"interface I1 {}\n" + |
852 |
"interface I2 {}\n" + |
852 |
"interface I2 {}\n" + |
853 |
"interface I3 {}\n", |
853 |
"interface I3 {}\n", |
854 |
owner |
854 |
owner |
855 |
); |
855 |
); |
Lines 863-886
Link Here
|
863 |
workingCopies = new ICompilationUnit[2]; |
863 |
workingCopies = new ICompilationUnit[2]; |
864 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
864 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
865 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79860/X.java", |
865 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79860/X.java", |
866 |
"package b79860;\n" + |
866 |
"package b79860;\n" + |
867 |
"public class X<T extends A> { }\n" + |
867 |
"public class X<T extends A> { }\n" + |
868 |
"class A { }", |
868 |
"class A { }", |
869 |
owner |
869 |
owner |
870 |
); |
870 |
); |
871 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b79860/Y.java", |
871 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b79860/Y.java", |
872 |
"package b79860;\n" + |
872 |
"package b79860;\n" + |
873 |
"public class Y<T extends B&I1&I2&I3> { }\n" + |
873 |
"public class Y<T extends B&I1&I2&I3> { }\n" + |
874 |
"class B { }\n" + |
874 |
"class B { }\n" + |
875 |
"interface I1 {}\n" + |
875 |
"interface I1 {}\n" + |
876 |
"interface I2 {}\n" + |
876 |
"interface I2 {}\n" + |
877 |
"interface I3 {}\n", |
877 |
"interface I3 {}\n", |
878 |
owner |
878 |
owner |
879 |
); |
879 |
); |
880 |
search("I?", TYPE, REFERENCES); |
880 |
search("I?", TYPE, REFERENCES); |
881 |
assertSearchResults( |
881 |
assertSearchResults( |
882 |
"src/b79860/Y.java b79860.Y [I1] EXACT_MATCH\n" + |
882 |
"src/b79860/Y.java b79860.Y [I1] EXACT_MATCH\n" + |
883 |
"src/b79860/Y.java b79860.Y [I2] EXACT_MATCH\n" + |
883 |
"src/b79860/Y.java b79860.Y [I2] EXACT_MATCH\n" + |
884 |
"src/b79860/Y.java b79860.Y [I3] EXACT_MATCH" |
884 |
"src/b79860/Y.java b79860.Y [I3] EXACT_MATCH" |
885 |
); |
885 |
); |
886 |
} |
886 |
} |
Lines 892-905
Link Here
|
892 |
private void setUpBug79990() throws CoreException { |
892 |
private void setUpBug79990() throws CoreException { |
893 |
workingCopies = new ICompilationUnit[1]; |
893 |
workingCopies = new ICompilationUnit[1]; |
894 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79990/Test.java", |
894 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79990/Test.java", |
895 |
"package b79990;\n" + |
895 |
"package b79990;\n" + |
896 |
"class Test<T> {\n" + |
896 |
"class Test<T> {\n" + |
897 |
" public void first(Exception num) {}\n" + |
897 |
" public void first(Exception num) {}\n" + |
898 |
" public void second(T t) {}\n" + |
898 |
" public void second(T t) {}\n" + |
899 |
"}\n" + |
899 |
"}\n" + |
900 |
"class Sub extends Test<Exception> {\n" + |
900 |
"class Sub extends Test<Exception> {\n" + |
901 |
" public void first(Exception num) {}\n" + |
901 |
" public void first(Exception num) {}\n" + |
902 |
" public void second(Exception t) {}\n" + |
902 |
" public void second(Exception t) {}\n" + |
903 |
"}\n" |
903 |
"}\n" |
904 |
);} |
904 |
);} |
905 |
public void testBug79990() throws CoreException { |
905 |
public void testBug79990() throws CoreException { |
Lines 907-913
Link Here
|
907 |
IMethod method = workingCopies[0].getType("Test").getMethods()[0]; |
907 |
IMethod method = workingCopies[0].getType("Test").getMethods()[0]; |
908 |
search(method, DECLARATIONS); |
908 |
search(method, DECLARATIONS); |
909 |
assertSearchResults( |
909 |
assertSearchResults( |
910 |
"src/b79990/Test.java void b79990.Test.first(Exception) [first] EXACT_MATCH\n" + |
910 |
"src/b79990/Test.java void b79990.Test.first(Exception) [first] EXACT_MATCH\n" + |
911 |
"src/b79990/Test.java void b79990.Sub.first(Exception) [first] EXACT_MATCH" |
911 |
"src/b79990/Test.java void b79990.Sub.first(Exception) [first] EXACT_MATCH" |
912 |
); |
912 |
); |
913 |
} |
913 |
} |
Lines 916-922
Link Here
|
916 |
IMethod method = workingCopies[0].getType("Test").getMethods()[1]; |
916 |
IMethod method = workingCopies[0].getType("Test").getMethods()[1]; |
917 |
search(method, DECLARATIONS); |
917 |
search(method, DECLARATIONS); |
918 |
assertSearchResults( |
918 |
assertSearchResults( |
919 |
"src/b79990/Test.java void b79990.Test.second(T) [second] EXACT_MATCH\n" + |
919 |
"src/b79990/Test.java void b79990.Test.second(T) [second] EXACT_MATCH\n" + |
920 |
"src/b79990/Test.java void b79990.Sub.second(Exception) [second] EXACT_MATCH" |
920 |
"src/b79990/Test.java void b79990.Sub.second(Exception) [second] EXACT_MATCH" |
921 |
); |
921 |
); |
922 |
} |
922 |
} |
Lines 925-949
Link Here
|
925 |
IMethod method = workingCopies[0].getType("Test").getMethods()[1]; |
925 |
IMethod method = workingCopies[0].getType("Test").getMethods()[1]; |
926 |
search(method, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
926 |
search(method, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
927 |
assertSearchResults( |
927 |
assertSearchResults( |
928 |
"src/b79990/Test.java void b79990.Test.second(T) [second] EXACT_MATCH\n" + |
928 |
"src/b79990/Test.java void b79990.Test.second(T) [second] EXACT_MATCH\n" + |
929 |
"src/b79990/Test.java void b79990.Sub.second(Exception) [second] EXACT_MATCH" |
929 |
"src/b79990/Test.java void b79990.Sub.second(Exception) [second] EXACT_MATCH" |
930 |
); |
930 |
); |
931 |
} |
931 |
} |
932 |
public void testBug79990d() throws CoreException { |
932 |
public void testBug79990d() throws CoreException { |
933 |
workingCopies = new ICompilationUnit[1]; |
933 |
workingCopies = new ICompilationUnit[1]; |
934 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79990/Test.java", |
934 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b79990/Test.java", |
935 |
"package b79990;\n" + |
935 |
"package b79990;\n" + |
936 |
"public class Test<T> {\n" + |
936 |
"public class Test<T> {\n" + |
937 |
" void methodT(T t) {}\n" + |
937 |
" void methodT(T t) {}\n" + |
938 |
"}\n" + |
938 |
"}\n" + |
939 |
"class Sub<X> extends Test<X> {\n" + |
939 |
"class Sub<X> extends Test<X> {\n" + |
940 |
" void methodT(X x) {} // overrides Super#methodT(T)\n" + |
940 |
" void methodT(X x) {} // overrides Super#methodT(T)\n" + |
941 |
"}\n" |
941 |
"}\n" |
942 |
); |
942 |
); |
943 |
IMethod method = workingCopies[0].getType("Test").getMethods()[0]; |
943 |
IMethod method = workingCopies[0].getType("Test").getMethods()[0]; |
944 |
search(method, DECLARATIONS); |
944 |
search(method, DECLARATIONS); |
945 |
assertSearchResults( |
945 |
assertSearchResults( |
946 |
"src/b79990/Test.java void b79990.Test.methodT(T) [methodT] EXACT_MATCH\n" + |
946 |
"src/b79990/Test.java void b79990.Test.methodT(T) [methodT] EXACT_MATCH\n" + |
947 |
"src/b79990/Test.java void b79990.Sub.methodT(X) [methodT] EXACT_MATCH" |
947 |
"src/b79990/Test.java void b79990.Sub.methodT(X) [methodT] EXACT_MATCH" |
948 |
); |
948 |
); |
949 |
} |
949 |
} |
Lines 955-968
Link Here
|
955 |
public void testBug80084() throws CoreException, JavaModelException { |
955 |
public void testBug80084() throws CoreException, JavaModelException { |
956 |
workingCopies = new ICompilationUnit[1]; |
956 |
workingCopies = new ICompilationUnit[1]; |
957 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80084/Test.java", |
957 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80084/Test.java", |
958 |
"package b80084;\n" + |
958 |
"package b80084;\n" + |
959 |
"class List<T> {}\n" + |
959 |
"class List<T> {}\n" + |
960 |
"public class Test {\n" + |
960 |
"public class Test {\n" + |
961 |
" void foo(List<Exception> le) {}\n" + |
961 |
" void foo(List<Exception> le) {}\n" + |
962 |
" void bar() {\n" + |
962 |
" void bar() {\n" + |
963 |
" List<Exception> le = new List<Exception>();\n" + |
963 |
" List<Exception> le = new List<Exception>();\n" + |
964 |
" foo(le);\n" + |
964 |
" foo(le);\n" + |
965 |
" }\n" + |
965 |
" }\n" + |
966 |
"}\n" |
966 |
"}\n" |
967 |
); |
967 |
); |
968 |
IType type = workingCopies[0].getType("Test"); |
968 |
IType type = workingCopies[0].getType("Test"); |
Lines 980-998
Link Here
|
980 |
private void setUpBug80194() throws CoreException, JavaModelException { |
980 |
private void setUpBug80194() throws CoreException, JavaModelException { |
981 |
workingCopies = new ICompilationUnit[1]; |
981 |
workingCopies = new ICompilationUnit[1]; |
982 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80194/Test.java", |
982 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80194/Test.java", |
983 |
"package b80194;\n" + |
983 |
"package b80194;\n" + |
984 |
"interface Map<K, V> {}\n" + |
984 |
"interface Map<K, V> {}\n" + |
985 |
"class HashMap<K, V> implements Map {}\n" + |
985 |
"class HashMap<K, V> implements Map {}\n" + |
986 |
"public class Test {\n" + |
986 |
"public class Test {\n" + |
987 |
" void callDoSomething() {\n" + |
987 |
" void callDoSomething() {\n" + |
988 |
" final Map<String, Object> map = new HashMap<String, Object>();\n" + |
988 |
" final Map<String, Object> map = new HashMap<String, Object>();\n" + |
989 |
" doSomething(map);\n" + |
989 |
" doSomething(map);\n" + |
990 |
" doSomething(map, true);\n" + |
990 |
" doSomething(map, true);\n" + |
991 |
" doSomething(true);\n" + |
991 |
" doSomething(true);\n" + |
992 |
" }\n" + |
992 |
" }\n" + |
993 |
" void doSomething(final Map<String, Object> map) {}\n" + |
993 |
" void doSomething(final Map<String, Object> map) {}\n" + |
994 |
" void doSomething(final Map<String, Object> map, final boolean flag) {}\n" + |
994 |
" void doSomething(final Map<String, Object> map, final boolean flag) {}\n" + |
995 |
" void doSomething(final boolean flag) {}\n" + |
995 |
" void doSomething(final boolean flag) {}\n" + |
996 |
"}\n" |
996 |
"}\n" |
997 |
); |
997 |
); |
998 |
} |
998 |
} |
Lines 1018-1025
Link Here
|
1018 |
setUpBug80194(); |
1018 |
setUpBug80194(); |
1019 |
search("doSomething(boolean)", METHOD, ALL_OCCURRENCES); |
1019 |
search("doSomething(boolean)", METHOD, ALL_OCCURRENCES); |
1020 |
assertSearchResults( |
1020 |
assertSearchResults( |
1021 |
"src/b80194/Test.java void b80194.Test.callDoSomething() [doSomething(map)] EXACT_MATCH\n" + |
1021 |
"src/b80194/Test.java void b80194.Test.callDoSomething() [doSomething(map)] EXACT_MATCH\n" + |
1022 |
"src/b80194/Test.java void b80194.Test.callDoSomething() [doSomething(true)] EXACT_MATCH\n" + |
1022 |
"src/b80194/Test.java void b80194.Test.callDoSomething() [doSomething(true)] EXACT_MATCH\n" + |
1023 |
"src/b80194/Test.java void b80194.Test.doSomething(boolean) [doSomething] EXACT_MATCH" |
1023 |
"src/b80194/Test.java void b80194.Test.doSomething(boolean) [doSomething] EXACT_MATCH" |
1024 |
); |
1024 |
); |
1025 |
} |
1025 |
} |
Lines 1027-1034
Link Here
|
1027 |
setUpBug80194(); |
1027 |
setUpBug80194(); |
1028 |
search("doSomething(Map<String,Object>)", METHOD, ALL_OCCURRENCES); |
1028 |
search("doSomething(Map<String,Object>)", METHOD, ALL_OCCURRENCES); |
1029 |
assertSearchResults( |
1029 |
assertSearchResults( |
1030 |
"src/b80194/Test.java void b80194.Test.callDoSomething() [doSomething(map)] EXACT_MATCH\n" + |
1030 |
"src/b80194/Test.java void b80194.Test.callDoSomething() [doSomething(map)] EXACT_MATCH\n" + |
1031 |
"src/b80194/Test.java void b80194.Test.callDoSomething() [doSomething(true)] EXACT_MATCH\n" + |
1031 |
"src/b80194/Test.java void b80194.Test.callDoSomething() [doSomething(true)] EXACT_MATCH\n" + |
1032 |
"src/b80194/Test.java void b80194.Test.doSomething(Map<String,Object>) [doSomething] EXACT_MATCH" |
1032 |
"src/b80194/Test.java void b80194.Test.doSomething(Map<String,Object>) [doSomething] EXACT_MATCH" |
1033 |
); |
1033 |
); |
1034 |
} |
1034 |
} |
Lines 1036-1042
Link Here
|
1036 |
setUpBug80194(); |
1036 |
setUpBug80194(); |
1037 |
search("doSomething(Map<String,Object>,boolean)", METHOD, ALL_OCCURRENCES); |
1037 |
search("doSomething(Map<String,Object>,boolean)", METHOD, ALL_OCCURRENCES); |
1038 |
assertSearchResults( |
1038 |
assertSearchResults( |
1039 |
"src/b80194/Test.java void b80194.Test.callDoSomething() [doSomething(map, true)] EXACT_MATCH\n" + |
1039 |
"src/b80194/Test.java void b80194.Test.callDoSomething() [doSomething(map, true)] EXACT_MATCH\n" + |
1040 |
"src/b80194/Test.java void b80194.Test.doSomething(Map<String,Object>, boolean) [doSomething] EXACT_MATCH" |
1040 |
"src/b80194/Test.java void b80194.Test.doSomething(Map<String,Object>, boolean) [doSomething] EXACT_MATCH" |
1041 |
); |
1041 |
); |
1042 |
} |
1042 |
} |
Lines 1049-1064
Link Here
|
1049 |
workingCopies = new ICompilationUnit[2]; |
1049 |
workingCopies = new ICompilationUnit[2]; |
1050 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
1050 |
WorkingCopyOwner owner = new WorkingCopyOwner() {}; |
1051 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80223/a/A.java", |
1051 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80223/a/A.java", |
1052 |
"package b80223.a;\n" + |
1052 |
"package b80223.a;\n" + |
1053 |
"public class A {\n" + |
1053 |
"public class A {\n" + |
1054 |
" void m() {}\n" + |
1054 |
" void m() {}\n" + |
1055 |
"}", |
1055 |
"}", |
1056 |
owner |
1056 |
owner |
1057 |
); |
1057 |
); |
1058 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b80223/b/B.java", |
1058 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b80223/b/B.java", |
1059 |
"package b80223.b;\n" + |
1059 |
"package b80223.b;\n" + |
1060 |
"public class B extends b80223.a.A {\n" + |
1060 |
"public class B extends b80223.a.A {\n" + |
1061 |
" void m() {}\n" + |
1061 |
" void m() {}\n" + |
1062 |
"}", |
1062 |
"}", |
1063 |
owner |
1063 |
owner |
1064 |
); |
1064 |
); |
Lines 1074-1080
Link Here
|
1074 |
/** |
1074 |
/** |
1075 |
* Bug 80264: [search] Search for method declarations in workspace, disregarding declaring type |
1075 |
* Bug 80264: [search] Search for method declarations in workspace, disregarding declaring type |
1076 |
* @see "http://bugs.eclipse.org/bugs/show_bug.cgi?id=80264" |
1076 |
* @see "http://bugs.eclipse.org/bugs/show_bug.cgi?id=80264" |
1077 |
* |
1077 |
* |
1078 |
* Following tests also verify |
1078 |
* Following tests also verify |
1079 |
* Bug 87778: [search] doesn't find all declarations of method with covariant return type |
1079 |
* Bug 87778: [search] doesn't find all declarations of method with covariant return type |
1080 |
* @see "http://bugs.eclipse.org/bugs/show_bug.cgi?id=87778" |
1080 |
* @see "http://bugs.eclipse.org/bugs/show_bug.cgi?id=87778" |
Lines 1083-1100
Link Here
|
1083 |
private void setUpBug80264_Methods() throws CoreException { |
1083 |
private void setUpBug80264_Methods() throws CoreException { |
1084 |
workingCopies = new ICompilationUnit[1]; |
1084 |
workingCopies = new ICompilationUnit[1]; |
1085 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80264/Methods.java", |
1085 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80264/Methods.java", |
1086 |
"package b80264;\n" + |
1086 |
"package b80264;\n" + |
1087 |
"class Methods {\n" + |
1087 |
"class Methods {\n" + |
1088 |
" Methods stable() { return null; }\n" + |
1088 |
" Methods stable() { return null; }\n" + |
1089 |
" Methods covariant() { return null; }\n" + |
1089 |
" Methods covariant() { return null; }\n" + |
1090 |
"}\n" + |
1090 |
"}\n" + |
1091 |
"class MethodsSub extends Methods {\n" + |
1091 |
"class MethodsSub extends Methods {\n" + |
1092 |
" Methods stable() { return null; }\n" + |
1092 |
" Methods stable() { return null; }\n" + |
1093 |
" MethodsSub covariant() { return null; }\n" + |
1093 |
" MethodsSub covariant() { return null; }\n" + |
1094 |
"}\n" + |
1094 |
"}\n" + |
1095 |
"class MethodsOther {\n" + |
1095 |
"class MethodsOther {\n" + |
1096 |
" Methods stable() { return null; }\n" + |
1096 |
" Methods stable() { return null; }\n" + |
1097 |
" Methods covariant() { return null; }\n" + |
1097 |
" Methods covariant() { return null; }\n" + |
1098 |
"}\n" |
1098 |
"}\n" |
1099 |
); |
1099 |
); |
1100 |
} |
1100 |
} |
Lines 1105-1113
Link Here
|
1105 |
search(methods[0], DECLARATIONS); |
1105 |
search(methods[0], DECLARATIONS); |
1106 |
search(methods[1], DECLARATIONS); |
1106 |
search(methods[1], DECLARATIONS); |
1107 |
assertSearchResults( |
1107 |
assertSearchResults( |
1108 |
"src/b80264/Methods.java Methods b80264.Methods.stable() [stable] EXACT_MATCH\n" + |
1108 |
"src/b80264/Methods.java Methods b80264.Methods.stable() [stable] EXACT_MATCH\n" + |
1109 |
"src/b80264/Methods.java Methods b80264.MethodsSub.stable() [stable] EXACT_MATCH\n" + |
1109 |
"src/b80264/Methods.java Methods b80264.MethodsSub.stable() [stable] EXACT_MATCH\n" + |
1110 |
"src/b80264/Methods.java Methods b80264.Methods.covariant() [covariant] EXACT_MATCH\n" + |
1110 |
"src/b80264/Methods.java Methods b80264.Methods.covariant() [covariant] EXACT_MATCH\n" + |
1111 |
"src/b80264/Methods.java MethodsSub b80264.MethodsSub.covariant() [covariant] EXACT_MATCH" |
1111 |
"src/b80264/Methods.java MethodsSub b80264.MethodsSub.covariant() [covariant] EXACT_MATCH" |
1112 |
); |
1112 |
); |
1113 |
} |
1113 |
} |
Lines 1118-1127
Link Here
|
1118 |
search(methods[0], DECLARATIONS|IGNORE_DECLARING_TYPE); |
1118 |
search(methods[0], DECLARATIONS|IGNORE_DECLARING_TYPE); |
1119 |
search(methods[1], DECLARATIONS|IGNORE_DECLARING_TYPE); |
1119 |
search(methods[1], DECLARATIONS|IGNORE_DECLARING_TYPE); |
1120 |
assertSearchResults( |
1120 |
assertSearchResults( |
1121 |
"src/b80264/Methods.java Methods b80264.Methods.stable() [stable] EXACT_MATCH\n" + |
1121 |
"src/b80264/Methods.java Methods b80264.Methods.stable() [stable] EXACT_MATCH\n" + |
1122 |
"src/b80264/Methods.java Methods b80264.MethodsSub.stable() [stable] EXACT_MATCH\n" + |
1122 |
"src/b80264/Methods.java Methods b80264.MethodsSub.stable() [stable] EXACT_MATCH\n" + |
1123 |
"src/b80264/Methods.java Methods b80264.MethodsOther.stable() [stable] EXACT_MATCH\n" + |
1123 |
"src/b80264/Methods.java Methods b80264.MethodsOther.stable() [stable] EXACT_MATCH\n" + |
1124 |
"src/b80264/Methods.java Methods b80264.Methods.covariant() [covariant] EXACT_MATCH\n" + |
1124 |
"src/b80264/Methods.java Methods b80264.Methods.covariant() [covariant] EXACT_MATCH\n" + |
1125 |
"src/b80264/Methods.java Methods b80264.MethodsOther.covariant() [covariant] EXACT_MATCH" |
1125 |
"src/b80264/Methods.java Methods b80264.MethodsOther.covariant() [covariant] EXACT_MATCH" |
1126 |
); |
1126 |
); |
1127 |
} |
1127 |
} |
Lines 1132-1140
Link Here
|
1132 |
search(methods[0], DECLARATIONS|IGNORE_RETURN_TYPE); |
1132 |
search(methods[0], DECLARATIONS|IGNORE_RETURN_TYPE); |
1133 |
search(methods[1], DECLARATIONS|IGNORE_RETURN_TYPE); |
1133 |
search(methods[1], DECLARATIONS|IGNORE_RETURN_TYPE); |
1134 |
assertSearchResults( |
1134 |
assertSearchResults( |
1135 |
"src/b80264/Methods.java Methods b80264.Methods.stable() [stable] EXACT_MATCH\n" + |
1135 |
"src/b80264/Methods.java Methods b80264.Methods.stable() [stable] EXACT_MATCH\n" + |
1136 |
"src/b80264/Methods.java Methods b80264.MethodsSub.stable() [stable] EXACT_MATCH\n" + |
1136 |
"src/b80264/Methods.java Methods b80264.MethodsSub.stable() [stable] EXACT_MATCH\n" + |
1137 |
"src/b80264/Methods.java Methods b80264.Methods.covariant() [covariant] EXACT_MATCH\n" + |
1137 |
"src/b80264/Methods.java Methods b80264.Methods.covariant() [covariant] EXACT_MATCH\n" + |
1138 |
"src/b80264/Methods.java MethodsSub b80264.MethodsSub.covariant() [covariant] EXACT_MATCH" |
1138 |
"src/b80264/Methods.java MethodsSub b80264.MethodsSub.covariant() [covariant] EXACT_MATCH" |
1139 |
); |
1139 |
); |
1140 |
} |
1140 |
} |
Lines 1145-1155
Link Here
|
1145 |
search(methods[0], DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
1145 |
search(methods[0], DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
1146 |
search(methods[1], DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
1146 |
search(methods[1], DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
1147 |
assertSearchResults( |
1147 |
assertSearchResults( |
1148 |
"src/b80264/Methods.java Methods b80264.Methods.stable() [stable] EXACT_MATCH\n" + |
1148 |
"src/b80264/Methods.java Methods b80264.Methods.stable() [stable] EXACT_MATCH\n" + |
1149 |
"src/b80264/Methods.java Methods b80264.MethodsSub.stable() [stable] EXACT_MATCH\n" + |
1149 |
"src/b80264/Methods.java Methods b80264.MethodsSub.stable() [stable] EXACT_MATCH\n" + |
1150 |
"src/b80264/Methods.java Methods b80264.MethodsOther.stable() [stable] EXACT_MATCH\n" + |
1150 |
"src/b80264/Methods.java Methods b80264.MethodsOther.stable() [stable] EXACT_MATCH\n" + |
1151 |
"src/b80264/Methods.java Methods b80264.Methods.covariant() [covariant] EXACT_MATCH\n" + |
1151 |
"src/b80264/Methods.java Methods b80264.Methods.covariant() [covariant] EXACT_MATCH\n" + |
1152 |
"src/b80264/Methods.java MethodsSub b80264.MethodsSub.covariant() [covariant] EXACT_MATCH\n" + |
1152 |
"src/b80264/Methods.java MethodsSub b80264.MethodsSub.covariant() [covariant] EXACT_MATCH\n" + |
1153 |
"src/b80264/Methods.java Methods b80264.MethodsOther.covariant() [covariant] EXACT_MATCH" |
1153 |
"src/b80264/Methods.java Methods b80264.MethodsOther.covariant() [covariant] EXACT_MATCH" |
1154 |
); |
1154 |
); |
1155 |
} |
1155 |
} |
Lines 1157-1171
Link Here
|
1157 |
private void setUpBug80264_Classes() throws CoreException { |
1157 |
private void setUpBug80264_Classes() throws CoreException { |
1158 |
workingCopies = new ICompilationUnit[1]; |
1158 |
workingCopies = new ICompilationUnit[1]; |
1159 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80264/Classes.java", |
1159 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80264/Classes.java", |
1160 |
"package b80264;\n" + |
1160 |
"package b80264;\n" + |
1161 |
"class Classes {\n" + |
1161 |
"class Classes {\n" + |
1162 |
" class Inner {}\n" + |
1162 |
" class Inner {}\n" + |
1163 |
"}\n" + |
1163 |
"}\n" + |
1164 |
"class ClassesSub extends Classes {\n" + |
1164 |
"class ClassesSub extends Classes {\n" + |
1165 |
" class Inner {}\n" + |
1165 |
" class Inner {}\n" + |
1166 |
"}\n" + |
1166 |
"}\n" + |
1167 |
"class ClassesOther {\n" + |
1167 |
"class ClassesOther {\n" + |
1168 |
" class Inner {}\n" + |
1168 |
" class Inner {}\n" + |
1169 |
"}\n" |
1169 |
"}\n" |
1170 |
); |
1170 |
); |
1171 |
} |
1171 |
} |
Lines 1182-1189
Link Here
|
1182 |
IType type = workingCopies[0].getType("Classes").getType("Inner"); |
1182 |
IType type = workingCopies[0].getType("Classes").getType("Inner"); |
1183 |
search(type, DECLARATIONS|IGNORE_DECLARING_TYPE); |
1183 |
search(type, DECLARATIONS|IGNORE_DECLARING_TYPE); |
1184 |
assertSearchResults( |
1184 |
assertSearchResults( |
1185 |
"src/b80264/Classes.java b80264.Classes$Inner [Inner] EXACT_MATCH\n" + |
1185 |
"src/b80264/Classes.java b80264.Classes$Inner [Inner] EXACT_MATCH\n" + |
1186 |
"src/b80264/Classes.java b80264.ClassesSub$Inner [Inner] EXACT_MATCH\n" + |
1186 |
"src/b80264/Classes.java b80264.ClassesSub$Inner [Inner] EXACT_MATCH\n" + |
1187 |
"src/b80264/Classes.java b80264.ClassesOther$Inner [Inner] EXACT_MATCH" |
1187 |
"src/b80264/Classes.java b80264.ClassesOther$Inner [Inner] EXACT_MATCH" |
1188 |
); |
1188 |
); |
1189 |
} |
1189 |
} |
Lines 1200-1207
Link Here
|
1200 |
IType type = workingCopies[0].getType("Classes").getType("Inner"); |
1200 |
IType type = workingCopies[0].getType("Classes").getType("Inner"); |
1201 |
search(type, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
1201 |
search(type, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
1202 |
assertSearchResults( |
1202 |
assertSearchResults( |
1203 |
"src/b80264/Classes.java b80264.Classes$Inner [Inner] EXACT_MATCH\n" + |
1203 |
"src/b80264/Classes.java b80264.Classes$Inner [Inner] EXACT_MATCH\n" + |
1204 |
"src/b80264/Classes.java b80264.ClassesSub$Inner [Inner] EXACT_MATCH\n" + |
1204 |
"src/b80264/Classes.java b80264.ClassesSub$Inner [Inner] EXACT_MATCH\n" + |
1205 |
"src/b80264/Classes.java b80264.ClassesOther$Inner [Inner] EXACT_MATCH" |
1205 |
"src/b80264/Classes.java b80264.ClassesOther$Inner [Inner] EXACT_MATCH" |
1206 |
); |
1206 |
); |
1207 |
} |
1207 |
} |
Lines 1209-1226
Link Here
|
1209 |
private void setUpBug80264_Fields() throws CoreException { |
1209 |
private void setUpBug80264_Fields() throws CoreException { |
1210 |
workingCopies = new ICompilationUnit[1]; |
1210 |
workingCopies = new ICompilationUnit[1]; |
1211 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80264/Fields.java", |
1211 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80264/Fields.java", |
1212 |
"package b80264;\n" + |
1212 |
"package b80264;\n" + |
1213 |
"class Fields {\n" + |
1213 |
"class Fields {\n" + |
1214 |
" Fields field1;\n" + |
1214 |
" Fields field1;\n" + |
1215 |
" Fields field2;\n" + |
1215 |
" Fields field2;\n" + |
1216 |
"}\n" + |
1216 |
"}\n" + |
1217 |
"class FieldsSub extends Fields {\n" + |
1217 |
"class FieldsSub extends Fields {\n" + |
1218 |
" Fields field1;\n" + |
1218 |
" Fields field1;\n" + |
1219 |
" FieldsSub field2;\n" + |
1219 |
" FieldsSub field2;\n" + |
1220 |
"}\n" + |
1220 |
"}\n" + |
1221 |
"class FieldsOther {\n" + |
1221 |
"class FieldsOther {\n" + |
1222 |
" Fields field1;\n" + |
1222 |
" Fields field1;\n" + |
1223 |
" Fields field2;\n" + |
1223 |
" Fields field2;\n" + |
1224 |
"}\n" |
1224 |
"}\n" |
1225 |
); |
1225 |
); |
1226 |
} |
1226 |
} |
Lines 1231-1237
Link Here
|
1231 |
search(fields[0], DECLARATIONS); |
1231 |
search(fields[0], DECLARATIONS); |
1232 |
search(fields[1], DECLARATIONS); |
1232 |
search(fields[1], DECLARATIONS); |
1233 |
assertSearchResults( |
1233 |
assertSearchResults( |
1234 |
"src/b80264/Fields.java b80264.Fields.field1 [field1] EXACT_MATCH\n" + |
1234 |
"src/b80264/Fields.java b80264.Fields.field1 [field1] EXACT_MATCH\n" + |
1235 |
"src/b80264/Fields.java b80264.Fields.field2 [field2] EXACT_MATCH" |
1235 |
"src/b80264/Fields.java b80264.Fields.field2 [field2] EXACT_MATCH" |
1236 |
); |
1236 |
); |
1237 |
} |
1237 |
} |
Lines 1242-1251
Link Here
|
1242 |
search(fields[0], DECLARATIONS|IGNORE_DECLARING_TYPE); |
1242 |
search(fields[0], DECLARATIONS|IGNORE_DECLARING_TYPE); |
1243 |
search(fields[1], DECLARATIONS|IGNORE_DECLARING_TYPE); |
1243 |
search(fields[1], DECLARATIONS|IGNORE_DECLARING_TYPE); |
1244 |
assertSearchResults( |
1244 |
assertSearchResults( |
1245 |
"src/b80264/Fields.java b80264.Fields.field1 [field1] EXACT_MATCH\n" + |
1245 |
"src/b80264/Fields.java b80264.Fields.field1 [field1] EXACT_MATCH\n" + |
1246 |
"src/b80264/Fields.java b80264.FieldsSub.field1 [field1] EXACT_MATCH\n" + |
1246 |
"src/b80264/Fields.java b80264.FieldsSub.field1 [field1] EXACT_MATCH\n" + |
1247 |
"src/b80264/Fields.java b80264.FieldsOther.field1 [field1] EXACT_MATCH\n" + |
1247 |
"src/b80264/Fields.java b80264.FieldsOther.field1 [field1] EXACT_MATCH\n" + |
1248 |
"src/b80264/Fields.java b80264.Fields.field2 [field2] EXACT_MATCH\n" + |
1248 |
"src/b80264/Fields.java b80264.Fields.field2 [field2] EXACT_MATCH\n" + |
1249 |
"src/b80264/Fields.java b80264.FieldsOther.field2 [field2] EXACT_MATCH" |
1249 |
"src/b80264/Fields.java b80264.FieldsOther.field2 [field2] EXACT_MATCH" |
1250 |
); |
1250 |
); |
1251 |
} |
1251 |
} |
Lines 1256-1262
Link Here
|
1256 |
search(fields[0], DECLARATIONS|IGNORE_RETURN_TYPE); |
1256 |
search(fields[0], DECLARATIONS|IGNORE_RETURN_TYPE); |
1257 |
search(fields[1], DECLARATIONS|IGNORE_RETURN_TYPE); |
1257 |
search(fields[1], DECLARATIONS|IGNORE_RETURN_TYPE); |
1258 |
assertSearchResults( |
1258 |
assertSearchResults( |
1259 |
"src/b80264/Fields.java b80264.Fields.field1 [field1] EXACT_MATCH\n" + |
1259 |
"src/b80264/Fields.java b80264.Fields.field1 [field1] EXACT_MATCH\n" + |
1260 |
"src/b80264/Fields.java b80264.Fields.field2 [field2] EXACT_MATCH" |
1260 |
"src/b80264/Fields.java b80264.Fields.field2 [field2] EXACT_MATCH" |
1261 |
); |
1261 |
); |
1262 |
} |
1262 |
} |
Lines 1267-1277
Link Here
|
1267 |
search(fields[0], DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
1267 |
search(fields[0], DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
1268 |
search(fields[1], DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
1268 |
search(fields[1], DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
1269 |
assertSearchResults( |
1269 |
assertSearchResults( |
1270 |
"src/b80264/Fields.java b80264.Fields.field1 [field1] EXACT_MATCH\n" + |
1270 |
"src/b80264/Fields.java b80264.Fields.field1 [field1] EXACT_MATCH\n" + |
1271 |
"src/b80264/Fields.java b80264.FieldsSub.field1 [field1] EXACT_MATCH\n" + |
1271 |
"src/b80264/Fields.java b80264.FieldsSub.field1 [field1] EXACT_MATCH\n" + |
1272 |
"src/b80264/Fields.java b80264.FieldsOther.field1 [field1] EXACT_MATCH\n" + |
1272 |
"src/b80264/Fields.java b80264.FieldsOther.field1 [field1] EXACT_MATCH\n" + |
1273 |
"src/b80264/Fields.java b80264.Fields.field2 [field2] EXACT_MATCH\n" + |
1273 |
"src/b80264/Fields.java b80264.Fields.field2 [field2] EXACT_MATCH\n" + |
1274 |
"src/b80264/Fields.java b80264.FieldsSub.field2 [field2] EXACT_MATCH\n" + |
1274 |
"src/b80264/Fields.java b80264.FieldsSub.field2 [field2] EXACT_MATCH\n" + |
1275 |
"src/b80264/Fields.java b80264.FieldsOther.field2 [field2] EXACT_MATCH" |
1275 |
"src/b80264/Fields.java b80264.FieldsOther.field2 [field2] EXACT_MATCH" |
1276 |
); |
1276 |
); |
1277 |
} |
1277 |
} |
Lines 1283-1302
Link Here
|
1283 |
public void testBug80890() throws CoreException, JavaModelException { |
1283 |
public void testBug80890() throws CoreException, JavaModelException { |
1284 |
workingCopies = new ICompilationUnit[1]; |
1284 |
workingCopies = new ICompilationUnit[1]; |
1285 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80890/A.java", |
1285 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b80890/A.java", |
1286 |
"package b80890;\n" + |
1286 |
"package b80890;\n" + |
1287 |
"public class A {\n" + |
1287 |
"public class A {\n" + |
1288 |
" protected void foo(Exception e) {}\n" + |
1288 |
" protected void foo(Exception e) {}\n" + |
1289 |
" protected void foo(String s) {}\n" + |
1289 |
" protected void foo(String s) {}\n" + |
1290 |
"}\n" + |
1290 |
"}\n" + |
1291 |
"class B1 extends A {\n" + |
1291 |
"class B1 extends A {\n" + |
1292 |
" public void bar1() {\n" + |
1292 |
" public void bar1() {\n" + |
1293 |
" foo(null);\n" + |
1293 |
" foo(null);\n" + |
1294 |
" }\n" + |
1294 |
" }\n" + |
1295 |
"}\n" + |
1295 |
"}\n" + |
1296 |
"class B2 extends A {\n" + |
1296 |
"class B2 extends A {\n" + |
1297 |
" public void bar2() {\n" + |
1297 |
" public void bar2() {\n" + |
1298 |
" foo(null);\n" + |
1298 |
" foo(null);\n" + |
1299 |
" }\n" + |
1299 |
" }\n" + |
1300 |
"}\n" |
1300 |
"}\n" |
1301 |
); |
1301 |
); |
1302 |
// search for first and second method should both return 2 inaccurate matches |
1302 |
// search for first and second method should both return 2 inaccurate matches |
Lines 1306-1314
Link Here
|
1306 |
method = type.getMethods()[1]; |
1306 |
method = type.getMethods()[1]; |
1307 |
search(method, REFERENCES); |
1307 |
search(method, REFERENCES); |
1308 |
assertSearchResults( |
1308 |
assertSearchResults( |
1309 |
"src/b80890/A.java void b80890.B1.bar1() [foo(null)] POTENTIAL_MATCH\n" + |
1309 |
"src/b80890/A.java void b80890.B1.bar1() [foo(null)] POTENTIAL_MATCH\n" + |
1310 |
"src/b80890/A.java void b80890.B2.bar2() [foo(null)] POTENTIAL_MATCH\n" + |
1310 |
"src/b80890/A.java void b80890.B2.bar2() [foo(null)] POTENTIAL_MATCH\n" + |
1311 |
"src/b80890/A.java void b80890.B1.bar1() [foo(null)] POTENTIAL_MATCH\n" + |
1311 |
"src/b80890/A.java void b80890.B1.bar1() [foo(null)] POTENTIAL_MATCH\n" + |
1312 |
"src/b80890/A.java void b80890.B2.bar2() [foo(null)] POTENTIAL_MATCH" |
1312 |
"src/b80890/A.java void b80890.B2.bar2() [foo(null)] POTENTIAL_MATCH" |
1313 |
); |
1313 |
); |
1314 |
} |
1314 |
} |
Lines 1333-1350
Link Here
|
1333 |
public void testBug81084a() throws CoreException, JavaModelException { |
1333 |
public void testBug81084a() throws CoreException, JavaModelException { |
1334 |
workingCopies = new ICompilationUnit[1]; |
1334 |
workingCopies = new ICompilationUnit[1]; |
1335 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b81084a/Test.java", |
1335 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b81084a/Test.java", |
1336 |
"package b81084a;\n" + |
1336 |
"package b81084a;\n" + |
1337 |
"class List<E> {}\n" + |
1337 |
"class List<E> {}\n" + |
1338 |
"public class Test {\n" + |
1338 |
"public class Test {\n" + |
1339 |
" class Element{}\n" + |
1339 |
" class Element{}\n" + |
1340 |
" static class Inner {\n" + |
1340 |
" static class Inner {\n" + |
1341 |
" private final List<Element> fList1;\n" + |
1341 |
" private final List<Element> fList1;\n" + |
1342 |
" private final List<Test.Element> fList2;\n" + |
1342 |
" private final List<Test.Element> fList2;\n" + |
1343 |
" public Inner(List<Element> list) {\n" + |
1343 |
" public Inner(List<Element> list) {\n" + |
1344 |
" fList1 = list;\n" + |
1344 |
" fList1 = list;\n" + |
1345 |
" fList2 = list;\n" + |
1345 |
" fList2 = list;\n" + |
1346 |
" }\n" + |
1346 |
" }\n" + |
1347 |
" }\n" + |
1347 |
" }\n" + |
1348 |
"}\n" |
1348 |
"}\n" |
1349 |
); |
1349 |
); |
1350 |
IType type = workingCopies[0].getType("Test").getType("Inner"); |
1350 |
IType type = workingCopies[0].getType("Test").getType("Inner"); |
Lines 1353-1401
Link Here
|
1353 |
IField field2 = type.getField("fList2"); |
1353 |
IField field2 = type.getField("fList2"); |
1354 |
search(field2, REFERENCES); |
1354 |
search(field2, REFERENCES); |
1355 |
assertSearchResults( |
1355 |
assertSearchResults( |
1356 |
"src/b81084a/Test.java b81084a.Test$Inner(List<Element>) [fList1] EXACT_MATCH\n" + |
1356 |
"src/b81084a/Test.java b81084a.Test$Inner(List<Element>) [fList1] EXACT_MATCH\n" + |
1357 |
"src/b81084a/Test.java b81084a.Test$Inner(List<Element>) [fList2] EXACT_MATCH" |
1357 |
"src/b81084a/Test.java b81084a.Test$Inner(List<Element>) [fList2] EXACT_MATCH" |
1358 |
); |
1358 |
); |
1359 |
} |
1359 |
} |
1360 |
public void testBug81084string() throws CoreException, JavaModelException { |
1360 |
public void testBug81084string() throws CoreException, JavaModelException { |
1361 |
workingCopies = new ICompilationUnit[1]; |
1361 |
workingCopies = new ICompilationUnit[1]; |
1362 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b81084a/Test.java", |
1362 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b81084a/Test.java", |
1363 |
"package b81084a;\n" + |
1363 |
"package b81084a;\n" + |
1364 |
"class List<E> {}\n" + |
1364 |
"class List<E> {}\n" + |
1365 |
"public class Test {\n" + |
1365 |
"public class Test {\n" + |
1366 |
" class Element{}\n" + |
1366 |
" class Element{}\n" + |
1367 |
" static class Inner {\n" + |
1367 |
" static class Inner {\n" + |
1368 |
" private final List<Element> fList1;\n" + |
1368 |
" private final List<Element> fList1;\n" + |
1369 |
" private final List<Test.Element> fList2;\n" + |
1369 |
" private final List<Test.Element> fList2;\n" + |
1370 |
" public Inner(List<Element> list) {\n" + |
1370 |
" public Inner(List<Element> list) {\n" + |
1371 |
" fList1 = list;\n" + |
1371 |
" fList1 = list;\n" + |
1372 |
" fList2 = list;\n" + |
1372 |
" fList2 = list;\n" + |
1373 |
" }\n" + |
1373 |
" }\n" + |
1374 |
" }\n" + |
1374 |
" }\n" + |
1375 |
"}\n" |
1375 |
"}\n" |
1376 |
); |
1376 |
); |
1377 |
search("fList1", FIELD, REFERENCES); |
1377 |
search("fList1", FIELD, REFERENCES); |
1378 |
search("fList2", FIELD, REFERENCES); |
1378 |
search("fList2", FIELD, REFERENCES); |
1379 |
assertSearchResults( |
1379 |
assertSearchResults( |
1380 |
"src/b81084a/Test.java b81084a.Test$Inner(List<Element>) [fList1] EXACT_MATCH\n" + |
1380 |
"src/b81084a/Test.java b81084a.Test$Inner(List<Element>) [fList1] EXACT_MATCH\n" + |
1381 |
"src/b81084a/Test.java b81084a.Test$Inner(List<Element>) [fList2] EXACT_MATCH" |
1381 |
"src/b81084a/Test.java b81084a.Test$Inner(List<Element>) [fList2] EXACT_MATCH" |
1382 |
); |
1382 |
); |
1383 |
} |
1383 |
} |
1384 |
public void testBug81084b() throws CoreException, JavaModelException { |
1384 |
public void testBug81084b() throws CoreException, JavaModelException { |
1385 |
workingCopies = new ICompilationUnit[1]; |
1385 |
workingCopies = new ICompilationUnit[1]; |
1386 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b81084b/Test.java", |
1386 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b81084b/Test.java", |
1387 |
"package b81084b;\n" + |
1387 |
"package b81084b;\n" + |
1388 |
"class List<E> {}\n" + |
1388 |
"class List<E> {}\n" + |
1389 |
"public class Test {\n" + |
1389 |
"public class Test {\n" + |
1390 |
" class Element{}\n" + |
1390 |
" class Element{}\n" + |
1391 |
" static class Inner {\n" + |
1391 |
" static class Inner {\n" + |
1392 |
" private final List<? extends Element> fListb1;\n" + |
1392 |
" private final List<? extends Element> fListb1;\n" + |
1393 |
" private final List<? extends Test.Element> fListb2;\n" + |
1393 |
" private final List<? extends Test.Element> fListb2;\n" + |
1394 |
" public Inner(List<Element> list) {\n" + |
1394 |
" public Inner(List<Element> list) {\n" + |
1395 |
" fListb1 = list;\n" + |
1395 |
" fListb1 = list;\n" + |
1396 |
" fListb2 = list;\n" + |
1396 |
" fListb2 = list;\n" + |
1397 |
" }\n" + |
1397 |
" }\n" + |
1398 |
" }\n" + |
1398 |
" }\n" + |
1399 |
"}\n" |
1399 |
"}\n" |
1400 |
); |
1400 |
); |
1401 |
// search element patterns |
1401 |
// search element patterns |
Lines 1405-1411
Link Here
|
1405 |
IField field2 = type.getField("fListb2"); |
1405 |
IField field2 = type.getField("fListb2"); |
1406 |
search(field2, REFERENCES); |
1406 |
search(field2, REFERENCES); |
1407 |
assertSearchResults( |
1407 |
assertSearchResults( |
1408 |
"src/b81084b/Test.java b81084b.Test$Inner(List<Element>) [fListb1] EXACT_MATCH\n" + |
1408 |
"src/b81084b/Test.java b81084b.Test$Inner(List<Element>) [fListb1] EXACT_MATCH\n" + |
1409 |
"src/b81084b/Test.java b81084b.Test$Inner(List<Element>) [fListb2] EXACT_MATCH" |
1409 |
"src/b81084b/Test.java b81084b.Test$Inner(List<Element>) [fListb2] EXACT_MATCH" |
1410 |
); |
1410 |
); |
1411 |
} |
1411 |
} |
Lines 1432-1453
Link Here
|
1432 |
workingCopies = new ICompilationUnit[1]; |
1432 |
workingCopies = new ICompilationUnit[1]; |
1433 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b82088/m/Test.java", |
1433 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b82088/m/Test.java", |
1434 |
"package b82088.m;\n" + |
1434 |
"package b82088.m;\n" + |
1435 |
"/**\n" + |
1435 |
"/**\n" + |
1436 |
" * @see #setA(A)\n" + |
1436 |
" * @see #setA(A)\n" + |
1437 |
" */\n" + |
1437 |
" */\n" + |
1438 |
"public class Test {\n" + |
1438 |
"public class Test {\n" + |
1439 |
" A a;\n" + |
1439 |
" A a;\n" + |
1440 |
" public void setA(A a) {\n" + |
1440 |
" public void setA(A a) {\n" + |
1441 |
" this.a = a;\n" + |
1441 |
" this.a = a;\n" + |
1442 |
" }\n" + |
1442 |
" }\n" + |
1443 |
"}\n" + |
1443 |
"}\n" + |
1444 |
"class A {}\n" |
1444 |
"class A {}\n" |
1445 |
); |
1445 |
); |
1446 |
IType type = workingCopies[0].getType("A"); |
1446 |
IType type = workingCopies[0].getType("A"); |
1447 |
search(type, REFERENCES); |
1447 |
search(type, REFERENCES); |
1448 |
assertSearchResults( |
1448 |
assertSearchResults( |
1449 |
"src/b82088/m/Test.java b82088.m.Test [A] EXACT_MATCH\n" + |
1449 |
"src/b82088/m/Test.java b82088.m.Test [A] EXACT_MATCH\n" + |
1450 |
"src/b82088/m/Test.java b82088.m.Test.a [A] EXACT_MATCH\n" + |
1450 |
"src/b82088/m/Test.java b82088.m.Test.a [A] EXACT_MATCH\n" + |
1451 |
"src/b82088/m/Test.java void b82088.m.Test.setA(A) [A] EXACT_MATCH" |
1451 |
"src/b82088/m/Test.java void b82088.m.Test.setA(A) [A] EXACT_MATCH" |
1452 |
); |
1452 |
); |
1453 |
} |
1453 |
} |
Lines 1455-1476
Link Here
|
1455 |
workingCopies = new ICompilationUnit[1]; |
1455 |
workingCopies = new ICompilationUnit[1]; |
1456 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b82088/c/Test.java", |
1456 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b82088/c/Test.java", |
1457 |
"package b82088.c;\n" + |
1457 |
"package b82088.c;\n" + |
1458 |
"/**\n" + |
1458 |
"/**\n" + |
1459 |
" * @see #Test(A)\n" + |
1459 |
" * @see #Test(A)\n" + |
1460 |
" */\n" + |
1460 |
" */\n" + |
1461 |
"public class Test {\n" + |
1461 |
"public class Test {\n" + |
1462 |
" A a;\n" + |
1462 |
" A a;\n" + |
1463 |
" Test(A a) {\n" + |
1463 |
" Test(A a) {\n" + |
1464 |
" this.a = a;\n" + |
1464 |
" this.a = a;\n" + |
1465 |
" }\n" + |
1465 |
" }\n" + |
1466 |
"}\n" + |
1466 |
"}\n" + |
1467 |
"class A {}\n" |
1467 |
"class A {}\n" |
1468 |
); |
1468 |
); |
1469 |
IType type = workingCopies[0].getType("A"); |
1469 |
IType type = workingCopies[0].getType("A"); |
1470 |
search(type, REFERENCES); |
1470 |
search(type, REFERENCES); |
1471 |
assertSearchResults( |
1471 |
assertSearchResults( |
1472 |
"src/b82088/c/Test.java b82088.c.Test [A] EXACT_MATCH\n" + |
1472 |
"src/b82088/c/Test.java b82088.c.Test [A] EXACT_MATCH\n" + |
1473 |
"src/b82088/c/Test.java b82088.c.Test.a [A] EXACT_MATCH\n" + |
1473 |
"src/b82088/c/Test.java b82088.c.Test.a [A] EXACT_MATCH\n" + |
1474 |
"src/b82088/c/Test.java b82088.c.Test(A) [A] EXACT_MATCH" |
1474 |
"src/b82088/c/Test.java b82088.c.Test(A) [A] EXACT_MATCH" |
1475 |
); |
1475 |
); |
1476 |
} |
1476 |
} |
Lines 1482-1491
Link Here
|
1482 |
private void setUpBug82208() throws CoreException { |
1482 |
private void setUpBug82208() throws CoreException { |
1483 |
workingCopies = new ICompilationUnit[1]; |
1483 |
workingCopies = new ICompilationUnit[1]; |
1484 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b82208/Test.java", |
1484 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b82208/Test.java", |
1485 |
"package b82208;\n" + |
1485 |
"package b82208;\n" + |
1486 |
"interface B82208_I {}\n" + |
1486 |
"interface B82208_I {}\n" + |
1487 |
"enum B82208_E {}\n" + |
1487 |
"enum B82208_E {}\n" + |
1488 |
"@interface B82208_A {}\n" + |
1488 |
"@interface B82208_A {}\n" + |
1489 |
"public class B82208 {}\n" |
1489 |
"public class B82208 {}\n" |
1490 |
); |
1490 |
); |
1491 |
} |
1491 |
} |
Lines 1494-1502
Link Here
|
1494 |
setUpBug82208(); |
1494 |
setUpBug82208(); |
1495 |
search("B82208*", TYPE, ALL_OCCURRENCES); |
1495 |
search("B82208*", TYPE, ALL_OCCURRENCES); |
1496 |
assertSearchResults( |
1496 |
assertSearchResults( |
1497 |
"src/b82208/Test.java b82208.B82208_I [B82208_I] EXACT_MATCH\n" + |
1497 |
"src/b82208/Test.java b82208.B82208_I [B82208_I] EXACT_MATCH\n" + |
1498 |
"src/b82208/Test.java b82208.B82208_E [B82208_E] EXACT_MATCH\n" + |
1498 |
"src/b82208/Test.java b82208.B82208_E [B82208_E] EXACT_MATCH\n" + |
1499 |
"src/b82208/Test.java b82208.B82208_A [B82208_A] EXACT_MATCH\n" + |
1499 |
"src/b82208/Test.java b82208.B82208_A [B82208_A] EXACT_MATCH\n" + |
1500 |
"src/b82208/Test.java b82208.B82208 [B82208] EXACT_MATCH" |
1500 |
"src/b82208/Test.java b82208.B82208 [B82208] EXACT_MATCH" |
1501 |
); |
1501 |
); |
1502 |
} |
1502 |
} |
Lines 1537-1543
Link Here
|
1537 |
setUpBug82208(); |
1537 |
setUpBug82208(); |
1538 |
search("B82208*", CLASS_AND_INTERFACE, ALL_OCCURRENCES); |
1538 |
search("B82208*", CLASS_AND_INTERFACE, ALL_OCCURRENCES); |
1539 |
assertSearchResults( |
1539 |
assertSearchResults( |
1540 |
"src/b82208/Test.java b82208.B82208_I [B82208_I] EXACT_MATCH\n" + |
1540 |
"src/b82208/Test.java b82208.B82208_I [B82208_I] EXACT_MATCH\n" + |
1541 |
"src/b82208/Test.java b82208.B82208 [B82208] EXACT_MATCH" |
1541 |
"src/b82208/Test.java b82208.B82208 [B82208] EXACT_MATCH" |
1542 |
); |
1542 |
); |
1543 |
} |
1543 |
} |
Lines 1546-1552
Link Here
|
1546 |
setUpBug82208(); |
1546 |
setUpBug82208(); |
1547 |
search("B82208*", CLASS_AND_ENUM, ALL_OCCURRENCES); |
1547 |
search("B82208*", CLASS_AND_ENUM, ALL_OCCURRENCES); |
1548 |
assertSearchResults( |
1548 |
assertSearchResults( |
1549 |
"src/b82208/Test.java b82208.B82208_E [B82208_E] EXACT_MATCH\n" + |
1549 |
"src/b82208/Test.java b82208.B82208_E [B82208_E] EXACT_MATCH\n" + |
1550 |
"src/b82208/Test.java b82208.B82208 [B82208] EXACT_MATCH" |
1550 |
"src/b82208/Test.java b82208.B82208 [B82208] EXACT_MATCH" |
1551 |
); |
1551 |
); |
1552 |
} |
1552 |
} |
Lines 1559-1585
Link Here
|
1559 |
resultCollector.showRule = true; |
1559 |
resultCollector.showRule = true; |
1560 |
workingCopies = new ICompilationUnit[1]; |
1560 |
workingCopies = new ICompilationUnit[1]; |
1561 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b82673/Test.java", |
1561 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b82673/Test.java", |
1562 |
"package b82673;\n" + |
1562 |
"package b82673;\n" + |
1563 |
"public class Test {\n" + |
1563 |
"public class Test {\n" + |
1564 |
" void test1() {\n" + |
1564 |
" void test1() {\n" + |
1565 |
" class Dummy {};\n" + |
1565 |
" class Dummy {};\n" + |
1566 |
" Dummy d = new Dummy();\n" + |
1566 |
" Dummy d = new Dummy();\n" + |
1567 |
" new X();\n" + |
1567 |
" new X();\n" + |
1568 |
" }\n" + |
1568 |
" }\n" + |
1569 |
" \n" + |
1569 |
" \n" + |
1570 |
" void test2() {\n" + |
1570 |
" void test2() {\n" + |
1571 |
" class Dummy {};\n" + |
1571 |
" class Dummy {};\n" + |
1572 |
" Dummy d = new Dummy();\n" + |
1572 |
" Dummy d = new Dummy();\n" + |
1573 |
" new Y();\n" + |
1573 |
" new Y();\n" + |
1574 |
" }\n" + |
1574 |
" }\n" + |
1575 |
"}\n" + |
1575 |
"}\n" + |
1576 |
"class X {}\n" + |
1576 |
"class X {}\n" + |
1577 |
"class Y {}\n" |
1577 |
"class Y {}\n" |
1578 |
); |
1578 |
); |
1579 |
IType type = selectType(workingCopies[0], "Test").getMethod("test1", new String[0]).getType("Dummy", 1); |
1579 |
IType type = selectType(workingCopies[0], "Test").getMethod("test1", new String[0]).getType("Dummy", 1); |
1580 |
search(type, REFERENCES); |
1580 |
search(type, REFERENCES); |
1581 |
assertSearchResults( |
1581 |
assertSearchResults( |
1582 |
"src/b82673/Test.java void b82673.Test.test1() [Dummy] EXACT_MATCH\n" + |
1582 |
"src/b82673/Test.java void b82673.Test.test1() [Dummy] EXACT_MATCH\n" + |
1583 |
"src/b82673/Test.java void b82673.Test.test1() [Dummy] EXACT_MATCH" |
1583 |
"src/b82673/Test.java void b82673.Test.test1() [Dummy] EXACT_MATCH" |
1584 |
); |
1584 |
); |
1585 |
} |
1585 |
} |
Lines 1592-1617
Link Here
|
1592 |
resultCollector.showRule = true; |
1592 |
resultCollector.showRule = true; |
1593 |
workingCopies = new ICompilationUnit[1]; |
1593 |
workingCopies = new ICompilationUnit[1]; |
1594 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83012/Test.java", |
1594 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83012/Test.java", |
1595 |
"package b83012;\n" + |
1595 |
"package b83012;\n" + |
1596 |
"@interface A {\n" + |
1596 |
"@interface A {\n" + |
1597 |
" String value() default \"\";\n" + |
1597 |
" String value() default \"\";\n" + |
1598 |
"}\n" + |
1598 |
"}\n" + |
1599 |
"@interface Main {\n" + |
1599 |
"@interface Main {\n" + |
1600 |
" A first() default @A(\"Void\");\n" + |
1600 |
" A first() default @A(\"Void\");\n" + |
1601 |
" A second();\n" + |
1601 |
" A second();\n" + |
1602 |
"}\n" + |
1602 |
"}\n" + |
1603 |
"\n" + |
1603 |
"\n" + |
1604 |
"@Main(first=@A(\"\"), second=@A(\"2\"))\n" + |
1604 |
"@Main(first=@A(\"\"), second=@A(\"2\"))\n" + |
1605 |
"public class Test {\n" + |
1605 |
"public class Test {\n" + |
1606 |
"}\n" |
1606 |
"}\n" |
1607 |
); |
1607 |
); |
1608 |
IType type = selectType(workingCopies[0], "A"); |
1608 |
IType type = selectType(workingCopies[0], "A"); |
1609 |
search(type, REFERENCES); |
1609 |
search(type, REFERENCES); |
1610 |
assertSearchResults( |
1610 |
assertSearchResults( |
1611 |
"src/b83012/Test.java A b83012.Main.first() [A] EXACT_MATCH\n" + |
1611 |
"src/b83012/Test.java A b83012.Main.first() [A] EXACT_MATCH\n" + |
1612 |
"src/b83012/Test.java A b83012.Main.first() [A] EXACT_MATCH\n" + |
1612 |
"src/b83012/Test.java A b83012.Main.first() [A] EXACT_MATCH\n" + |
1613 |
"src/b83012/Test.java A b83012.Main.second() [A] EXACT_MATCH\n" + |
1613 |
"src/b83012/Test.java A b83012.Main.second() [A] EXACT_MATCH\n" + |
1614 |
"src/b83012/Test.java b83012.Test [A] EXACT_MATCH\n" + |
1614 |
"src/b83012/Test.java b83012.Test [A] EXACT_MATCH\n" + |
1615 |
"src/b83012/Test.java b83012.Test [A] EXACT_MATCH" |
1615 |
"src/b83012/Test.java b83012.Test [A] EXACT_MATCH" |
1616 |
); |
1616 |
); |
1617 |
} |
1617 |
} |
Lines 1624-1661
Link Here
|
1624 |
resultCollector.showRule = true; |
1624 |
resultCollector.showRule = true; |
1625 |
workingCopies = new ICompilationUnit[1]; |
1625 |
workingCopies = new ICompilationUnit[1]; |
1626 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83230/Test.java", |
1626 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83230/Test.java", |
1627 |
"package b83230;\n" + |
1627 |
"package b83230;\n" + |
1628 |
"@interface Author {\n" + |
1628 |
"@interface Author {\n" + |
1629 |
" String[] authorName() default \"FREDERIC\";\n" + |
1629 |
" String[] authorName() default \"FREDERIC\";\n" + |
1630 |
" int[] age();\n" + |
1630 |
" int[] age();\n" + |
1631 |
" int ageMin = 20;\n" + |
1631 |
" int ageMin = 20;\n" + |
1632 |
" @interface Surname {}\n" + |
1632 |
" @interface Surname {}\n" + |
1633 |
" class Address {\n" + |
1633 |
" class Address {\n" + |
1634 |
" String city;\n" + |
1634 |
" String city;\n" + |
1635 |
" public void foo(Object obj) {}\n" + |
1635 |
" public void foo(Object obj) {}\n" + |
1636 |
" }\n" + |
1636 |
" }\n" + |
1637 |
"}\n" + |
1637 |
"}\n" + |
1638 |
"\n" + |
1638 |
"\n" + |
1639 |
"@Author(authorName=\"FREDERIC\", age=41)\n" + |
1639 |
"@Author(authorName=\"FREDERIC\", age=41)\n" + |
1640 |
"public class Test {\n" + |
1640 |
"public class Test {\n" + |
1641 |
" @Author(authorName={\"FREDERIC\", \"JEROME\"}, age={41, 35} )\n" + |
1641 |
" @Author(authorName={\"FREDERIC\", \"JEROME\"}, age={41, 35} )\n" + |
1642 |
" Test() {}\n" + |
1642 |
" Test() {}\n" + |
1643 |
" @Author(authorName=\"PHILIPPE\", age=37)\n" + |
1643 |
" @Author(authorName=\"PHILIPPE\", age=37)\n" + |
1644 |
" void foo() {\n" + |
1644 |
" void foo() {\n" + |
1645 |
" @Author(authorName=\"FREDERIC\", age=41)\n" + |
1645 |
" @Author(authorName=\"FREDERIC\", age=41)\n" + |
1646 |
" final Object obj = new Object() {};\n" + |
1646 |
" final Object obj = new Object() {};\n" + |
1647 |
" @Author(authorName=\"FREDERIC\", age=41)\n" + |
1647 |
" @Author(authorName=\"FREDERIC\", age=41)\n" + |
1648 |
" class Local {\n" + |
1648 |
" class Local {\n" + |
1649 |
" @Author(authorName=\"FREDERIC\", age=41)\n" + |
1649 |
" @Author(authorName=\"FREDERIC\", age=41)\n" + |
1650 |
" String foo() {\n" + |
1650 |
" String foo() {\n" + |
1651 |
" Author.Address address = new Author.Address();\n" + |
1651 |
" Author.Address address = new Author.Address();\n" + |
1652 |
" address.foo(obj);\n" + |
1652 |
" address.foo(obj);\n" + |
1653 |
" return address.city;\n" + |
1653 |
" return address.city;\n" + |
1654 |
" }\n" + |
1654 |
" }\n" + |
1655 |
" }\n" + |
1655 |
" }\n" + |
1656 |
" }\n" + |
1656 |
" }\n" + |
1657 |
" @Author(authorName=\"DAVID\", age=28)\n" + |
1657 |
" @Author(authorName=\"DAVID\", age=28)\n" + |
1658 |
" int min = Author.ageMin;\n" + |
1658 |
" int min = Author.ageMin;\n" + |
1659 |
"}\n" |
1659 |
"}\n" |
1660 |
); |
1660 |
); |
1661 |
} |
1661 |
} |
Lines 1665-1676
Link Here
|
1665 |
IMethod method = selectMethod(workingCopies[0], "authorName"); |
1665 |
IMethod method = selectMethod(workingCopies[0], "authorName"); |
1666 |
search(method, REFERENCES); |
1666 |
search(method, REFERENCES); |
1667 |
assertSearchResults( |
1667 |
assertSearchResults( |
1668 |
"src/b83230/Test.java b83230.Test [authorName] EXACT_MATCH\n" + |
1668 |
"src/b83230/Test.java b83230.Test [authorName] EXACT_MATCH\n" + |
1669 |
"src/b83230/Test.java b83230.Test.min [authorName] EXACT_MATCH\n" + |
1669 |
"src/b83230/Test.java b83230.Test.min [authorName] EXACT_MATCH\n" + |
1670 |
"src/b83230/Test.java b83230.Test() [authorName] EXACT_MATCH\n" + |
1670 |
"src/b83230/Test.java b83230.Test() [authorName] EXACT_MATCH\n" + |
1671 |
"src/b83230/Test.java void b83230.Test.foo():Local#1 [authorName] EXACT_MATCH\n" + |
1671 |
"src/b83230/Test.java void b83230.Test.foo():Local#1 [authorName] EXACT_MATCH\n" + |
1672 |
"src/b83230/Test.java String void b83230.Test.foo():Local#1.foo() [authorName] EXACT_MATCH\n" + |
1672 |
"src/b83230/Test.java String void b83230.Test.foo():Local#1.foo() [authorName] EXACT_MATCH\n" + |
1673 |
"src/b83230/Test.java void b83230.Test.foo() [authorName] EXACT_MATCH\n" + |
1673 |
"src/b83230/Test.java void b83230.Test.foo() [authorName] EXACT_MATCH\n" + |
1674 |
"src/b83230/Test.java void b83230.Test.foo() [authorName] EXACT_MATCH" |
1674 |
"src/b83230/Test.java void b83230.Test.foo() [authorName] EXACT_MATCH" |
1675 |
); |
1675 |
); |
1676 |
} |
1676 |
} |
Lines 1689-1695
Link Here
|
1689 |
IType type = selectType(workingCopies[0], "Address"); |
1689 |
IType type = selectType(workingCopies[0], "Address"); |
1690 |
search(type, REFERENCES); |
1690 |
search(type, REFERENCES); |
1691 |
assertSearchResults( |
1691 |
assertSearchResults( |
1692 |
"src/b83230/Test.java String void b83230.Test.foo():Local#1.foo() [Author.Address] EXACT_MATCH\n" + |
1692 |
"src/b83230/Test.java String void b83230.Test.foo():Local#1.foo() [Author.Address] EXACT_MATCH\n" + |
1693 |
"src/b83230/Test.java String void b83230.Test.foo():Local#1.foo() [Author.Address] EXACT_MATCH" |
1693 |
"src/b83230/Test.java String void b83230.Test.foo():Local#1.foo() [Author.Address] EXACT_MATCH" |
1694 |
); |
1694 |
); |
1695 |
} |
1695 |
} |
Lines 1724-1747
Link Here
|
1724 |
resultCollector.showRule = true; |
1724 |
resultCollector.showRule = true; |
1725 |
workingCopies = new ICompilationUnit[1]; |
1725 |
workingCopies = new ICompilationUnit[1]; |
1726 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83230/Test.java", |
1726 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83230/Test.java", |
1727 |
"package b83230;\n" + |
1727 |
"package b83230;\n" + |
1728 |
"@interface Annot {\n" + |
1728 |
"@interface Annot {\n" + |
1729 |
" int value();\n" + |
1729 |
" int value();\n" + |
1730 |
"}\n" + |
1730 |
"}\n" + |
1731 |
"@Annot(41)\n" + |
1731 |
"@Annot(41)\n" + |
1732 |
"public class Test {\n" + |
1732 |
"public class Test {\n" + |
1733 |
" @Annot(10)\n" + |
1733 |
" @Annot(10)\n" + |
1734 |
" public void foo() {}\n" + |
1734 |
" public void foo() {}\n" + |
1735 |
" @Annot(21)\n" + |
1735 |
" @Annot(21)\n" + |
1736 |
" int bar;\n" + |
1736 |
" int bar;\n" + |
1737 |
"}\n" |
1737 |
"}\n" |
1738 |
); |
1738 |
); |
1739 |
IType type = selectType(workingCopies[0], "Annot"); |
1739 |
IType type = selectType(workingCopies[0], "Annot"); |
1740 |
IMethod method = type.getMethod("value", new String[0]); |
1740 |
IMethod method = type.getMethod("value", new String[0]); |
1741 |
search(method, REFERENCES); |
1741 |
search(method, REFERENCES); |
1742 |
assertSearchResults( |
1742 |
assertSearchResults( |
1743 |
"src/b83230/Test.java b83230.Test [41] EXACT_MATCH\n" + |
1743 |
"src/b83230/Test.java b83230.Test [41] EXACT_MATCH\n" + |
1744 |
"src/b83230/Test.java b83230.Test.bar [21] EXACT_MATCH\n" + |
1744 |
"src/b83230/Test.java b83230.Test.bar [21] EXACT_MATCH\n" + |
1745 |
"src/b83230/Test.java void b83230.Test.foo() [10] EXACT_MATCH" |
1745 |
"src/b83230/Test.java void b83230.Test.foo() [10] EXACT_MATCH" |
1746 |
); |
1746 |
); |
1747 |
} |
1747 |
} |
Lines 1749-1773
Link Here
|
1749 |
resultCollector.showRule = true; |
1749 |
resultCollector.showRule = true; |
1750 |
workingCopies = new ICompilationUnit[1]; |
1750 |
workingCopies = new ICompilationUnit[1]; |
1751 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83230/Test.java", |
1751 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83230/Test.java", |
1752 |
"package b83230;\n" + |
1752 |
"package b83230;\n" + |
1753 |
"@interface A {\n" + |
1753 |
"@interface A {\n" + |
1754 |
" String value() default \"\";\n" + |
1754 |
" String value() default \"\";\n" + |
1755 |
"}\n" + |
1755 |
"}\n" + |
1756 |
"@interface Main {\n" + |
1756 |
"@interface Main {\n" + |
1757 |
" A first() default @A(\"Void\");\n" + |
1757 |
" A first() default @A(\"Void\");\n" + |
1758 |
" A second();\n" + |
1758 |
" A second();\n" + |
1759 |
"}\n" + |
1759 |
"}\n" + |
1760 |
"\n" + |
1760 |
"\n" + |
1761 |
"@Main(first=@A(\"\"), second=@A(\"2\"))\n" + |
1761 |
"@Main(first=@A(\"\"), second=@A(\"2\"))\n" + |
1762 |
"public class Test {\n" + |
1762 |
"public class Test {\n" + |
1763 |
"}\n" |
1763 |
"}\n" |
1764 |
); |
1764 |
); |
1765 |
IType type = selectType(workingCopies[0], "A"); |
1765 |
IType type = selectType(workingCopies[0], "A"); |
1766 |
IMethod method = type.getMethod("value", new String[0]); |
1766 |
IMethod method = type.getMethod("value", new String[0]); |
1767 |
search(method, REFERENCES); |
1767 |
search(method, REFERENCES); |
1768 |
assertSearchResults( |
1768 |
assertSearchResults( |
1769 |
"src/b83230/Test.java A b83230.Main.first() [\"Void\"] EXACT_MATCH\n" + |
1769 |
"src/b83230/Test.java A b83230.Main.first() [\"Void\"] EXACT_MATCH\n" + |
1770 |
"src/b83230/Test.java b83230.Test [\"\"] EXACT_MATCH\n" + |
1770 |
"src/b83230/Test.java b83230.Test [\"\"] EXACT_MATCH\n" + |
1771 |
"src/b83230/Test.java b83230.Test [\"2\"] EXACT_MATCH" |
1771 |
"src/b83230/Test.java b83230.Test [\"2\"] EXACT_MATCH" |
1772 |
); |
1772 |
); |
1773 |
} |
1773 |
} |
Lines 1780-1800
Link Here
|
1780 |
resultCollector.showRule = true; |
1780 |
resultCollector.showRule = true; |
1781 |
workingCopies = new ICompilationUnit[1]; |
1781 |
workingCopies = new ICompilationUnit[1]; |
1782 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83304/Test.java", |
1782 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83304/Test.java", |
1783 |
"package b83304;\n" + |
1783 |
"package b83304;\n" + |
1784 |
"public class Test {\n" + |
1784 |
"public class Test {\n" + |
1785 |
" void foo() {\n" + |
1785 |
" void foo() {\n" + |
1786 |
" Class<? extends Throwable> l1= null;\n" + |
1786 |
" Class<? extends Throwable> l1= null;\n" + |
1787 |
" Class<Exception> l2= null;\n" + |
1787 |
" Class<Exception> l2= null;\n" + |
1788 |
" \n" + |
1788 |
" \n" + |
1789 |
" Class<String> string_Class;\n" + |
1789 |
" Class<String> string_Class;\n" + |
1790 |
" }\n" + |
1790 |
" }\n" + |
1791 |
"}\n" |
1791 |
"}\n" |
1792 |
); |
1792 |
); |
1793 |
IType type = selectType(workingCopies[0], "Class", 3); |
1793 |
IType type = selectType(workingCopies[0], "Class", 3); |
1794 |
search(type, REFERENCES, ERASURE_RULE, getJavaSearchWorkingCopiesScope()); |
1794 |
search(type, REFERENCES, ERASURE_RULE, getJavaSearchWorkingCopiesScope()); |
1795 |
assertSearchResults( |
1795 |
assertSearchResults( |
1796 |
"src/b83304/Test.java void b83304.Test.foo() [Class] ERASURE_MATCH\n" + |
1796 |
"src/b83304/Test.java void b83304.Test.foo() [Class] ERASURE_MATCH\n" + |
1797 |
"src/b83304/Test.java void b83304.Test.foo() [Class] ERASURE_MATCH\n" + |
1797 |
"src/b83304/Test.java void b83304.Test.foo() [Class] ERASURE_MATCH\n" + |
1798 |
"src/b83304/Test.java void b83304.Test.foo() [Class] EXACT_MATCH" |
1798 |
"src/b83304/Test.java void b83304.Test.foo() [Class] EXACT_MATCH" |
1799 |
); |
1799 |
); |
1800 |
} |
1800 |
} |
Lines 1802-1816
Link Here
|
1802 |
resultCollector.showRule = true; |
1802 |
resultCollector.showRule = true; |
1803 |
workingCopies = new ICompilationUnit[1]; |
1803 |
workingCopies = new ICompilationUnit[1]; |
1804 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83304/Types.java", |
1804 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83304/Types.java", |
1805 |
"package b83304;\n" + |
1805 |
"package b83304;\n" + |
1806 |
"import g1.t.s.def.Generic;\n" + |
1806 |
"import g1.t.s.def.Generic;\n" + |
1807 |
"public class Types {\n" + |
1807 |
"public class Types {\n" + |
1808 |
" public Generic gen;\n" + |
1808 |
" public Generic gen;\n" + |
1809 |
" public Generic<Object> gen_obj;\n" + |
1809 |
" public Generic<Object> gen_obj;\n" + |
1810 |
" public Generic<Exception> gen_exc;\n" + |
1810 |
" public Generic<Exception> gen_exc;\n" + |
1811 |
" public Generic<?> gen_wld;\n" + |
1811 |
" public Generic<?> gen_wld;\n" + |
1812 |
" public Generic<? extends Throwable> gen_thr;\n" + |
1812 |
" public Generic<? extends Throwable> gen_thr;\n" + |
1813 |
" public Generic<? super RuntimeException> gen_run;\n" + |
1813 |
" public Generic<? super RuntimeException> gen_run;\n" + |
1814 |
"}\n" |
1814 |
"}\n" |
1815 |
); |
1815 |
); |
1816 |
} |
1816 |
} |
Lines 1820-1832
Link Here
|
1820 |
IType type = selectType(workingCopies[0], "Generic", 4); |
1820 |
IType type = selectType(workingCopies[0], "Generic", 4); |
1821 |
search(type, REFERENCES, ERASURE_RULE); |
1821 |
search(type, REFERENCES, ERASURE_RULE); |
1822 |
assertSearchResults( |
1822 |
assertSearchResults( |
1823 |
"src/b83304/Types.java [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + |
1823 |
"src/b83304/Types.java [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + |
1824 |
"src/b83304/Types.java b83304.Types.gen [Generic] EQUIVALENT_RAW_MATCH\n" + |
1824 |
"src/b83304/Types.java b83304.Types.gen [Generic] EQUIVALENT_RAW_MATCH\n" + |
1825 |
"src/b83304/Types.java b83304.Types.gen_obj [Generic] ERASURE_MATCH\n" + |
1825 |
"src/b83304/Types.java b83304.Types.gen_obj [Generic] ERASURE_MATCH\n" + |
1826 |
"src/b83304/Types.java b83304.Types.gen_exc [Generic] EXACT_MATCH\n" + |
1826 |
"src/b83304/Types.java b83304.Types.gen_exc [Generic] EXACT_MATCH\n" + |
1827 |
"src/b83304/Types.java b83304.Types.gen_wld [Generic] EQUIVALENT_MATCH\n" + |
1827 |
"src/b83304/Types.java b83304.Types.gen_wld [Generic] EQUIVALENT_MATCH\n" + |
1828 |
"src/b83304/Types.java b83304.Types.gen_thr [Generic] EQUIVALENT_MATCH\n" + |
1828 |
"src/b83304/Types.java b83304.Types.gen_thr [Generic] EQUIVALENT_MATCH\n" + |
1829 |
"src/b83304/Types.java b83304.Types.gen_run [Generic] EQUIVALENT_MATCH\n" + |
1829 |
"src/b83304/Types.java b83304.Types.gen_run [Generic] EQUIVALENT_MATCH\n" + |
1830 |
"lib/JavaSearch15.jar g1.t.s.def.Generic<T> g1.t.s.def.Generic.foo() ERASURE_MATCH" |
1830 |
"lib/JavaSearch15.jar g1.t.s.def.Generic<T> g1.t.s.def.Generic.foo() ERASURE_MATCH" |
1831 |
); |
1831 |
); |
1832 |
} |
1832 |
} |
Lines 1836-1848
Link Here
|
1836 |
IType type = getClassFile("JavaSearchBugs", "lib/JavaSearch15.jar", "g1.t.s.def", "Generic.class").getType(); |
1836 |
IType type = getClassFile("JavaSearchBugs", "lib/JavaSearch15.jar", "g1.t.s.def", "Generic.class").getType(); |
1837 |
search(type, REFERENCES, ERASURE_RULE); |
1837 |
search(type, REFERENCES, ERASURE_RULE); |
1838 |
assertSearchResults( |
1838 |
assertSearchResults( |
1839 |
"src/b83304/Types.java [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + |
1839 |
"src/b83304/Types.java [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + |
1840 |
"src/b83304/Types.java b83304.Types.gen [Generic] ERASURE_RAW_MATCH\n" + |
1840 |
"src/b83304/Types.java b83304.Types.gen [Generic] ERASURE_RAW_MATCH\n" + |
1841 |
"src/b83304/Types.java b83304.Types.gen_obj [Generic] ERASURE_MATCH\n" + |
1841 |
"src/b83304/Types.java b83304.Types.gen_obj [Generic] ERASURE_MATCH\n" + |
1842 |
"src/b83304/Types.java b83304.Types.gen_exc [Generic] ERASURE_MATCH\n" + |
1842 |
"src/b83304/Types.java b83304.Types.gen_exc [Generic] ERASURE_MATCH\n" + |
1843 |
"src/b83304/Types.java b83304.Types.gen_wld [Generic] ERASURE_MATCH\n" + |
1843 |
"src/b83304/Types.java b83304.Types.gen_wld [Generic] ERASURE_MATCH\n" + |
1844 |
"src/b83304/Types.java b83304.Types.gen_thr [Generic] ERASURE_MATCH\n" + |
1844 |
"src/b83304/Types.java b83304.Types.gen_thr [Generic] ERASURE_MATCH\n" + |
1845 |
"src/b83304/Types.java b83304.Types.gen_run [Generic] ERASURE_MATCH\n" + |
1845 |
"src/b83304/Types.java b83304.Types.gen_run [Generic] ERASURE_MATCH\n" + |
1846 |
"lib/JavaSearch15.jar g1.t.s.def.Generic<T> g1.t.s.def.Generic.foo() EXACT_MATCH" |
1846 |
"lib/JavaSearch15.jar g1.t.s.def.Generic<T> g1.t.s.def.Generic.foo() EXACT_MATCH" |
1847 |
); |
1847 |
); |
1848 |
} |
1848 |
} |
Lines 1851-1863
Link Here
|
1851 |
setUpBug83304_TypeParameterizedElementPattern(); |
1851 |
setUpBug83304_TypeParameterizedElementPattern(); |
1852 |
search("Generic<? super Exception>", TYPE, REFERENCES, ERASURE_RULE); |
1852 |
search("Generic<? super Exception>", TYPE, REFERENCES, ERASURE_RULE); |
1853 |
assertSearchResults( |
1853 |
assertSearchResults( |
1854 |
"src/b83304/Types.java [Generic] EQUIVALENT_RAW_MATCH\n" + |
1854 |
"src/b83304/Types.java [Generic] EQUIVALENT_RAW_MATCH\n" + |
1855 |
"src/b83304/Types.java b83304.Types.gen [Generic] EQUIVALENT_RAW_MATCH\n" + |
1855 |
"src/b83304/Types.java b83304.Types.gen [Generic] EQUIVALENT_RAW_MATCH\n" + |
1856 |
"src/b83304/Types.java b83304.Types.gen_obj [Generic] EQUIVALENT_MATCH\n" + |
1856 |
"src/b83304/Types.java b83304.Types.gen_obj [Generic] EQUIVALENT_MATCH\n" + |
1857 |
"src/b83304/Types.java b83304.Types.gen_exc [Generic] EQUIVALENT_MATCH\n" + |
1857 |
"src/b83304/Types.java b83304.Types.gen_exc [Generic] EQUIVALENT_MATCH\n" + |
1858 |
"src/b83304/Types.java b83304.Types.gen_wld [Generic] EQUIVALENT_MATCH\n" + |
1858 |
"src/b83304/Types.java b83304.Types.gen_wld [Generic] EQUIVALENT_MATCH\n" + |
1859 |
"src/b83304/Types.java b83304.Types.gen_thr [Generic] ERASURE_MATCH\n" + |
1859 |
"src/b83304/Types.java b83304.Types.gen_thr [Generic] ERASURE_MATCH\n" + |
1860 |
"src/b83304/Types.java b83304.Types.gen_run [Generic] ERASURE_MATCH\n" + |
1860 |
"src/b83304/Types.java b83304.Types.gen_run [Generic] ERASURE_MATCH\n" + |
1861 |
"lib/JavaSearch15.jar g1.t.s.def.Generic<T> g1.t.s.def.Generic.foo() ERASURE_MATCH" |
1861 |
"lib/JavaSearch15.jar g1.t.s.def.Generic<T> g1.t.s.def.Generic.foo() ERASURE_MATCH" |
1862 |
); |
1862 |
); |
1863 |
} |
1863 |
} |
Lines 1865-1880
Link Here
|
1865 |
resultCollector.showRule = true; |
1865 |
resultCollector.showRule = true; |
1866 |
workingCopies = new ICompilationUnit[1]; |
1866 |
workingCopies = new ICompilationUnit[1]; |
1867 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83304/Methods.java", |
1867 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83304/Methods.java", |
1868 |
"package b83304;\n" + |
1868 |
"package b83304;\n" + |
1869 |
"import g5.m.def.Single;\n" + |
1869 |
"import g5.m.def.Single;\n" + |
1870 |
"public class Methods {\n" + |
1870 |
"public class Methods {\n" + |
1871 |
" void test() {\n" + |
1871 |
" void test() {\n" + |
1872 |
" Single<Exception> gs = new Single<Exception>();\n" + |
1872 |
" Single<Exception> gs = new Single<Exception>();\n" + |
1873 |
" Exception exc = new Exception();\n" + |
1873 |
" Exception exc = new Exception();\n" + |
1874 |
" gs.<Throwable>generic(exc);\n" + |
1874 |
" gs.<Throwable>generic(exc);\n" + |
1875 |
" gs.<Exception>generic(exc);\n" + |
1875 |
" gs.<Exception>generic(exc);\n" + |
1876 |
" gs.<String>generic(\"\");\n" + |
1876 |
" gs.<String>generic(\"\");\n" + |
1877 |
" }\n" + |
1877 |
" }\n" + |
1878 |
"}\n" |
1878 |
"}\n" |
1879 |
); |
1879 |
); |
1880 |
} |
1880 |
} |
Lines 1884-1891
Link Here
|
1884 |
IMethod method = selectMethod(workingCopies[0], "generic", 2); |
1884 |
IMethod method = selectMethod(workingCopies[0], "generic", 2); |
1885 |
search(method, REFERENCES, ERASURE_RULE); |
1885 |
search(method, REFERENCES, ERASURE_RULE); |
1886 |
assertSearchResults( |
1886 |
assertSearchResults( |
1887 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] ERASURE_MATCH\n" + |
1887 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] ERASURE_MATCH\n" + |
1888 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] EXACT_MATCH\n" + |
1888 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] EXACT_MATCH\n" + |
1889 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(\"\")] ERASURE_MATCH" |
1889 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(\"\")] ERASURE_MATCH" |
1890 |
); |
1890 |
); |
1891 |
} |
1891 |
} |
Lines 1896-1903
Link Here
|
1896 |
IMethod method = type.getMethod("generic", new String[] { "TU;" }); |
1896 |
IMethod method = type.getMethod("generic", new String[] { "TU;" }); |
1897 |
search(method, REFERENCES, ERASURE_RULE); |
1897 |
search(method, REFERENCES, ERASURE_RULE); |
1898 |
assertSearchResults( |
1898 |
assertSearchResults( |
1899 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] ERASURE_MATCH\n" + |
1899 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] ERASURE_MATCH\n" + |
1900 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] ERASURE_MATCH\n" + |
1900 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] ERASURE_MATCH\n" + |
1901 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(\"\")] ERASURE_MATCH" |
1901 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(\"\")] ERASURE_MATCH" |
1902 |
); |
1902 |
); |
1903 |
} |
1903 |
} |
Lines 1906-1913
Link Here
|
1906 |
setUpBug83304_MethodParameterizedElementPattern(); |
1906 |
setUpBug83304_MethodParameterizedElementPattern(); |
1907 |
search("<Exception>generic", METHOD, REFERENCES, ERASURE_RULE); |
1907 |
search("<Exception>generic", METHOD, REFERENCES, ERASURE_RULE); |
1908 |
assertSearchResults( |
1908 |
assertSearchResults( |
1909 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] ERASURE_MATCH\n" + |
1909 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] ERASURE_MATCH\n" + |
1910 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] EXACT_MATCH\n" + |
1910 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(exc)] EXACT_MATCH\n" + |
1911 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(\"\")] ERASURE_MATCH" |
1911 |
"src/b83304/Methods.java void b83304.Methods.test() [generic(\"\")] ERASURE_MATCH" |
1912 |
); |
1912 |
); |
1913 |
} |
1913 |
} |
Lines 1915-1929
Link Here
|
1915 |
resultCollector.showRule = true; |
1915 |
resultCollector.showRule = true; |
1916 |
workingCopies = new ICompilationUnit[1]; |
1916 |
workingCopies = new ICompilationUnit[1]; |
1917 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83304/Constructors.java", |
1917 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83304/Constructors.java", |
1918 |
"package b83304;\n" + |
1918 |
"package b83304;\n" + |
1919 |
"import g5.c.def.Single;\n" + |
1919 |
"import g5.c.def.Single;\n" + |
1920 |
"public class Constructors {\n" + |
1920 |
"public class Constructors {\n" + |
1921 |
" void test() {\n" + |
1921 |
" void test() {\n" + |
1922 |
" Exception exc= new Exception();\n" + |
1922 |
" Exception exc= new Exception();\n" + |
1923 |
" new <Throwable>Single<String>(\"\", exc);\n" + |
1923 |
" new <Throwable>Single<String>(\"\", exc);\n" + |
1924 |
" new <Exception>Single<String>(\"\", exc);\n" + |
1924 |
" new <Exception>Single<String>(\"\", exc);\n" + |
1925 |
" new <String>Single<String>(\"\", \"\");\n" + |
1925 |
" new <String>Single<String>(\"\", \"\");\n" + |
1926 |
" }\n" + |
1926 |
" }\n" + |
1927 |
"}\n" |
1927 |
"}\n" |
1928 |
); |
1928 |
); |
1929 |
} |
1929 |
} |
Lines 1933-1940
Link Here
|
1933 |
IMethod method = selectMethod(workingCopies[0], "Single", 3); |
1933 |
IMethod method = selectMethod(workingCopies[0], "Single", 3); |
1934 |
search(method, REFERENCES, ERASURE_RULE); |
1934 |
search(method, REFERENCES, ERASURE_RULE); |
1935 |
assertSearchResults( |
1935 |
assertSearchResults( |
1936 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Throwable>Single<String>(\"\", exc)] ERASURE_MATCH\n" + |
1936 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Throwable>Single<String>(\"\", exc)] ERASURE_MATCH\n" + |
1937 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Exception>Single<String>(\"\", exc)] EXACT_MATCH\n" + |
1937 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Exception>Single<String>(\"\", exc)] EXACT_MATCH\n" + |
1938 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <String>Single<String>(\"\", \"\")] ERASURE_MATCH" |
1938 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <String>Single<String>(\"\", \"\")] ERASURE_MATCH" |
1939 |
); |
1939 |
); |
1940 |
} |
1940 |
} |
Lines 1945-1952
Link Here
|
1945 |
IMethod method = type.getMethod("Single", new String[] { "TT;", "TU;" }); |
1945 |
IMethod method = type.getMethod("Single", new String[] { "TT;", "TU;" }); |
1946 |
search(method, REFERENCES, ERASURE_RULE); |
1946 |
search(method, REFERENCES, ERASURE_RULE); |
1947 |
assertSearchResults( |
1947 |
assertSearchResults( |
1948 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Throwable>Single<String>(\"\", exc)] ERASURE_MATCH\n" + |
1948 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Throwable>Single<String>(\"\", exc)] ERASURE_MATCH\n" + |
1949 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Exception>Single<String>(\"\", exc)] ERASURE_MATCH\n" + |
1949 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Exception>Single<String>(\"\", exc)] ERASURE_MATCH\n" + |
1950 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <String>Single<String>(\"\", \"\")] ERASURE_MATCH" |
1950 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <String>Single<String>(\"\", \"\")] ERASURE_MATCH" |
1951 |
); |
1951 |
); |
1952 |
} |
1952 |
} |
Lines 1955-1964
Link Here
|
1955 |
setUpBug83304_ConstructorGenericElementPattern(); |
1955 |
setUpBug83304_ConstructorGenericElementPattern(); |
1956 |
search("<Exception>Single", CONSTRUCTOR, REFERENCES, ERASURE_RULE); |
1956 |
search("<Exception>Single", CONSTRUCTOR, REFERENCES, ERASURE_RULE); |
1957 |
assertSearchResults( |
1957 |
assertSearchResults( |
1958 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Throwable>Single<String>(\"\", exc)] ERASURE_MATCH\n" + |
1958 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Throwable>Single<String>(\"\", exc)] ERASURE_MATCH\n" + |
1959 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Exception>Single<String>(\"\", exc)] EXACT_MATCH\n" + |
1959 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <Exception>Single<String>(\"\", exc)] EXACT_MATCH\n" + |
1960 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <String>Single<String>(\"\", \"\")] ERASURE_MATCH\n" + |
1960 |
"src/b83304/Constructors.java void b83304.Constructors.test() [new <String>Single<String>(\"\", \"\")] ERASURE_MATCH\n" + |
1961 |
"lib/JavaSearch15.jar g5.m.def.Single<T> g5.m.def.Single.returnParamType() ERASURE_MATCH\n" + |
1961 |
"lib/JavaSearch15.jar g5.m.def.Single<T> g5.m.def.Single.returnParamType() ERASURE_MATCH\n" + |
1962 |
"lib/JavaSearch15.jar g5.m.def.Single<T> g5.m.def.Single.complete(U, g5.m.def.Single<T>) ERASURE_MATCH" |
1962 |
"lib/JavaSearch15.jar g5.m.def.Single<T> g5.m.def.Single.complete(U, g5.m.def.Single<T>) ERASURE_MATCH" |
1963 |
); |
1963 |
); |
1964 |
} |
1964 |
} |
Lines 1970-1997
Link Here
|
1970 |
private void setUpBug83804_Type() throws CoreException { |
1970 |
private void setUpBug83804_Type() throws CoreException { |
1971 |
workingCopies = new ICompilationUnit[2]; |
1971 |
workingCopies = new ICompilationUnit[2]; |
1972 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83804/package-info.java", |
1972 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83804/package-info.java", |
1973 |
"/**\n" + |
1973 |
"/**\n" + |
1974 |
" * Valid javadoc.\n" + |
1974 |
" * Valid javadoc.\n" + |
1975 |
" * @see Test\n" + |
1975 |
" * @see Test\n" + |
1976 |
" * @see Unknown\n" + |
1976 |
" * @see Unknown\n" + |
1977 |
" * @see Test#foo()\n" + |
1977 |
" * @see Test#foo()\n" + |
1978 |
" * @see Test#unknown()\n" + |
1978 |
" * @see Test#unknown()\n" + |
1979 |
" * @see Test#field\n" + |
1979 |
" * @see Test#field\n" + |
1980 |
" * @see Test#unknown\n" + |
1980 |
" * @see Test#unknown\n" + |
1981 |
" * @param unexpected\n" + |
1981 |
" * @param unexpected\n" + |
1982 |
" * @throws unexpected\n" + |
1982 |
" * @throws unexpected\n" + |
1983 |
" * @return unexpected \n" + |
1983 |
" * @return unexpected \n" + |
1984 |
" */\n" + |
1984 |
" */\n" + |
1985 |
"package b83804;\n" |
1985 |
"package b83804;\n" |
1986 |
); |
1986 |
); |
1987 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b83804/Test.java", |
1987 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b83804/Test.java", |
1988 |
"/**\n" + |
1988 |
"/**\n" + |
1989 |
" * Invalid javadoc\n" + |
1989 |
" * Invalid javadoc\n" + |
1990 |
" */\n" + |
1990 |
" */\n" + |
1991 |
"package b83804;\n" + |
1991 |
"package b83804;\n" + |
1992 |
"public class Test {\n" + |
1992 |
"public class Test {\n" + |
1993 |
" public int field;\n" + |
1993 |
" public int field;\n" + |
1994 |
" public void foo() {}\n" + |
1994 |
" public void foo() {}\n" + |
1995 |
"}\n" |
1995 |
"}\n" |
1996 |
); |
1996 |
); |
1997 |
} |
1997 |
} |
Lines 2001-2010
Link Here
|
2001 |
IType type = workingCopies[1].getType("Test"); |
2001 |
IType type = workingCopies[1].getType("Test"); |
2002 |
search(type, REFERENCES); |
2002 |
search(type, REFERENCES); |
2003 |
assertSearchResults( |
2003 |
assertSearchResults( |
2004 |
"src/b83804/package-info.java [Test] EXACT_MATCH INSIDE_JAVADOC\n" + |
2004 |
"src/b83804/package-info.java [Test] EXACT_MATCH INSIDE_JAVADOC\n" + |
2005 |
"src/b83804/package-info.java [Test] EXACT_MATCH INSIDE_JAVADOC\n" + |
2005 |
"src/b83804/package-info.java [Test] EXACT_MATCH INSIDE_JAVADOC\n" + |
2006 |
"src/b83804/package-info.java [Test] EXACT_MATCH INSIDE_JAVADOC\n" + |
2006 |
"src/b83804/package-info.java [Test] EXACT_MATCH INSIDE_JAVADOC\n" + |
2007 |
"src/b83804/package-info.java [Test] EXACT_MATCH INSIDE_JAVADOC\n" + |
2007 |
"src/b83804/package-info.java [Test] EXACT_MATCH INSIDE_JAVADOC\n" + |
2008 |
"src/b83804/package-info.java [Test] EXACT_MATCH INSIDE_JAVADOC" |
2008 |
"src/b83804/package-info.java [Test] EXACT_MATCH INSIDE_JAVADOC" |
2009 |
); |
2009 |
); |
2010 |
} |
2010 |
} |
Lines 2037-2052
Link Here
|
2037 |
resultCollector.showRule = true; |
2037 |
resultCollector.showRule = true; |
2038 |
workingCopies = new ICompilationUnit[1]; |
2038 |
workingCopies = new ICompilationUnit[1]; |
2039 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83388/R.java", |
2039 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83388/R.java", |
2040 |
"package b83388;\n" + |
2040 |
"package b83388;\n" + |
2041 |
"import b83388.*;\n" + |
2041 |
"import b83388.*;\n" + |
2042 |
"public class R {}\n" |
2042 |
"public class R {}\n" |
2043 |
); |
2043 |
); |
2044 |
IImportDeclaration importDeclaration = workingCopies[0].getImport("pack"); |
2044 |
IImportDeclaration importDeclaration = workingCopies[0].getImport("pack"); |
2045 |
assertNotNull("Cannot find \"pack\" import declaration for "+workingCopies[0].getElementName(), importDeclaration); |
2045 |
assertNotNull("Cannot find \"pack\" import declaration for "+workingCopies[0].getElementName(), importDeclaration); |
2046 |
SearchPattern pattern = SearchPattern.createPattern( |
2046 |
SearchPattern pattern = SearchPattern.createPattern( |
2047 |
"pack", |
2047 |
"pack", |
2048 |
PACKAGE, |
2048 |
PACKAGE, |
2049 |
DECLARATIONS, |
2049 |
DECLARATIONS, |
2050 |
EXACT_RULE); |
2050 |
EXACT_RULE); |
2051 |
assertNotNull("Pattern should not be null", pattern); |
2051 |
assertNotNull("Pattern should not be null", pattern); |
2052 |
MatchLocator.setFocus(pattern, importDeclaration); |
2052 |
MatchLocator.setFocus(pattern, importDeclaration); |
Lines 2065-2080
Link Here
|
2065 |
resultCollector.showRule = true; |
2065 |
resultCollector.showRule = true; |
2066 |
workingCopies = new ICompilationUnit[1]; |
2066 |
workingCopies = new ICompilationUnit[1]; |
2067 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83388/R.java", |
2067 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83388/R.java", |
2068 |
"package b83388;\n" + |
2068 |
"package b83388;\n" + |
2069 |
"import b83388.*;\n" + |
2069 |
"import b83388.*;\n" + |
2070 |
"public class R {}\n" |
2070 |
"public class R {}\n" |
2071 |
); |
2071 |
); |
2072 |
IPackageDeclaration packageDeclaration = workingCopies[0].getPackageDeclaration("pack"); |
2072 |
IPackageDeclaration packageDeclaration = workingCopies[0].getPackageDeclaration("pack"); |
2073 |
assertNotNull("Cannot find \"pack\" import declaration for "+workingCopies[0].getElementName(), packageDeclaration); |
2073 |
assertNotNull("Cannot find \"pack\" import declaration for "+workingCopies[0].getElementName(), packageDeclaration); |
2074 |
SearchPattern pattern = SearchPattern.createPattern( |
2074 |
SearchPattern pattern = SearchPattern.createPattern( |
2075 |
"pack", |
2075 |
"pack", |
2076 |
PACKAGE, |
2076 |
PACKAGE, |
2077 |
DECLARATIONS, |
2077 |
DECLARATIONS, |
2078 |
EXACT_RULE); |
2078 |
EXACT_RULE); |
2079 |
assertNotNull("Pattern should not be null", pattern); |
2079 |
assertNotNull("Pattern should not be null", pattern); |
2080 |
MatchLocator.setFocus(pattern, packageDeclaration); |
2080 |
MatchLocator.setFocus(pattern, packageDeclaration); |
Lines 2099-2121
Link Here
|
2099 |
resultCollector.showInsideDoc = true; |
2099 |
resultCollector.showInsideDoc = true; |
2100 |
workingCopies = new ICompilationUnit[1]; |
2100 |
workingCopies = new ICompilationUnit[1]; |
2101 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83693/A.java", |
2101 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83693/A.java", |
2102 |
"package b83693;\n" + |
2102 |
"package b83693;\n" + |
2103 |
"import static b83693.A.m;\n" + |
2103 |
"import static b83693.A.m;\n" + |
2104 |
"/**\n" + |
2104 |
"/**\n" + |
2105 |
" * @see A#m(int)\n" + |
2105 |
" * @see A#m(int)\n" + |
2106 |
" */\n" + |
2106 |
" */\n" + |
2107 |
"class A {\n" + |
2107 |
"class A {\n" + |
2108 |
" static void m(int i) {\n" + |
2108 |
" static void m(int i) {\n" + |
2109 |
" b83693.A.m(i);\n" + |
2109 |
" b83693.A.m(i);\n" + |
2110 |
" }\n" + |
2110 |
" }\n" + |
2111 |
"}" |
2111 |
"}" |
2112 |
); |
2112 |
); |
2113 |
IMethod[] methods = workingCopies[0].getType("A").getMethods(); |
2113 |
IMethod[] methods = workingCopies[0].getType("A").getMethods(); |
2114 |
assertEquals("Invalid number of methods", 1, methods.length); |
2114 |
assertEquals("Invalid number of methods", 1, methods.length); |
2115 |
search(methods[0], REFERENCES); |
2115 |
search(methods[0], REFERENCES); |
2116 |
assertSearchResults( |
2116 |
assertSearchResults( |
2117 |
"src/b83693/A.java [b83693.A.m] EXACT_MATCH OUTSIDE_JAVADOC\n" + |
2117 |
"src/b83693/A.java [b83693.A.m] EXACT_MATCH OUTSIDE_JAVADOC\n" + |
2118 |
"src/b83693/A.java b83693.A [m(int)] EXACT_MATCH INSIDE_JAVADOC\n" + |
2118 |
"src/b83693/A.java b83693.A [m(int)] EXACT_MATCH INSIDE_JAVADOC\n" + |
2119 |
"src/b83693/A.java void b83693.A.m(int) [m(i)] EXACT_MATCH OUTSIDE_JAVADOC" |
2119 |
"src/b83693/A.java void b83693.A.m(int) [m(i)] EXACT_MATCH OUTSIDE_JAVADOC" |
2120 |
); |
2120 |
); |
2121 |
} |
2121 |
} |
Lines 2123-2129
Link Here
|
2123 |
/** |
2123 |
/** |
2124 |
* Bug 83716: [search] refs to 2-arg constructor on Action found unexpected matches |
2124 |
* Bug 83716: [search] refs to 2-arg constructor on Action found unexpected matches |
2125 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=83716" |
2125 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=83716" |
2126 |
* |
2126 |
* |
2127 |
* Note that this test does verify that bug is really fixed, but only that it has no impact |
2127 |
* Note that this test does verify that bug is really fixed, but only that it has no impact |
2128 |
* on existing behavior. It was not really possible to put a test in this suite to verify that |
2128 |
* on existing behavior. It was not really possible to put a test in this suite to verify that |
2129 |
* bug is effectively fixed as it appears only to potential match found in plugin dependencies... |
2129 |
* bug is effectively fixed as it appears only to potential match found in plugin dependencies... |
Lines 2131-2144
Link Here
|
2131 |
public void testBug83716() throws CoreException { |
2131 |
public void testBug83716() throws CoreException { |
2132 |
workingCopies = new ICompilationUnit[1]; |
2132 |
workingCopies = new ICompilationUnit[1]; |
2133 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83716/X.java", |
2133 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b83716/X.java", |
2134 |
"package b83716;\n" + |
2134 |
"package b83716;\n" + |
2135 |
"public class X {\n" + |
2135 |
"public class X {\n" + |
2136 |
" X() {}\n" + |
2136 |
" X() {}\n" + |
2137 |
" X(int x) {}\n" + |
2137 |
" X(int x) {}\n" + |
2138 |
"}\n" + |
2138 |
"}\n" + |
2139 |
"class Y extends X {\n" + |
2139 |
"class Y extends X {\n" + |
2140 |
" Y(int y) {\n" + |
2140 |
" Y(int y) {\n" + |
2141 |
" }\n" + |
2141 |
" }\n" + |
2142 |
"}" |
2142 |
"}" |
2143 |
); |
2143 |
); |
2144 |
search("X", CONSTRUCTOR, REFERENCES); |
2144 |
search("X", CONSTRUCTOR, REFERENCES); |
Lines 2155-2181
Link Here
|
2155 |
resultCollector.showRule = true; |
2155 |
resultCollector.showRule = true; |
2156 |
workingCopies = new ICompilationUnit[2]; |
2156 |
workingCopies = new ICompilationUnit[2]; |
2157 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b84100/X.java", |
2157 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b84100/X.java", |
2158 |
"package b84100;\n" + |
2158 |
"package b84100;\n" + |
2159 |
"public class X {\n" + |
2159 |
"public class X {\n" + |
2160 |
" void foo() {}\n" + |
2160 |
" void foo() {}\n" + |
2161 |
" void foo(String s) {}\n" + |
2161 |
" void foo(String s) {}\n" + |
2162 |
" void foo(String... xs) {}\n" + |
2162 |
" void foo(String... xs) {}\n" + |
2163 |
" void foo(int x, String... xs) {}\n" + |
2163 |
" void foo(int x, String... xs) {}\n" + |
2164 |
" void foo(String s, int x, String... xs) {}\n" + |
2164 |
" void foo(String s, int x, String... xs) {}\n" + |
2165 |
"}\n" |
2165 |
"}\n" |
2166 |
); |
2166 |
); |
2167 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b84100/Z.java", |
2167 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b84100/Z.java", |
2168 |
"package b84100;\n" + |
2168 |
"package b84100;\n" + |
2169 |
"public class Z {\n" + |
2169 |
"public class Z {\n" + |
2170 |
" X x;\n" + |
2170 |
" X x;\n" + |
2171 |
" void foo() {\n" + |
2171 |
" void foo() {\n" + |
2172 |
" x.foo();\n" + |
2172 |
" x.foo();\n" + |
2173 |
" x.foo(\"\");\n" + |
2173 |
" x.foo(\"\");\n" + |
2174 |
" x.foo(\"\", \"\");\n" + |
2174 |
" x.foo(\"\", \"\");\n" + |
2175 |
" x.foo(\"\", \"\", null);\n" + |
2175 |
" x.foo(\"\", \"\", null);\n" + |
2176 |
" x.foo(3, \"\", \"\");\n" + |
2176 |
" x.foo(3, \"\", \"\");\n" + |
2177 |
" x.foo(\"\", 3, \"\", \"\");\n" + |
2177 |
" x.foo(\"\", 3, \"\", \"\");\n" + |
2178 |
" }\n" + |
2178 |
" }\n" + |
2179 |
"}\n" |
2179 |
"}\n" |
2180 |
); |
2180 |
); |
2181 |
} |
2181 |
} |
Lines 2203-2209
Link Here
|
2203 |
IMethod method = selectMethod(workingCopies[0], "foo", 3); |
2203 |
IMethod method = selectMethod(workingCopies[0], "foo", 3); |
2204 |
search(method, REFERENCES); |
2204 |
search(method, REFERENCES); |
2205 |
assertSearchResults( |
2205 |
assertSearchResults( |
2206 |
"src/b84100/Z.java void b84100.Z.foo() [foo(\"\", \"\")] EXACT_MATCH\n" + |
2206 |
"src/b84100/Z.java void b84100.Z.foo() [foo(\"\", \"\")] EXACT_MATCH\n" + |
2207 |
"src/b84100/Z.java void b84100.Z.foo() [foo(\"\", \"\", null)] EXACT_MATCH" |
2207 |
"src/b84100/Z.java void b84100.Z.foo() [foo(\"\", \"\", null)] EXACT_MATCH" |
2208 |
); |
2208 |
); |
2209 |
} |
2209 |
} |
Lines 2234-2252
Link Here
|
2234 |
resultCollector.showRule = true; |
2234 |
resultCollector.showRule = true; |
2235 |
workingCopies = new ICompilationUnit[1]; |
2235 |
workingCopies = new ICompilationUnit[1]; |
2236 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b84121/Test.java", |
2236 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b84121/Test.java", |
2237 |
"package b84121;\n" + |
2237 |
"package b84121;\n" + |
2238 |
"public class Test {\n" + |
2238 |
"public class Test {\n" + |
2239 |
" void foo(Test... t) {}\n" + |
2239 |
" void foo(Test... t) {}\n" + |
2240 |
" void foo(int x, Test... t) {}\n" + |
2240 |
" void foo(int x, Test... t) {}\n" + |
2241 |
" void foo(Test[] t1, Test... t2) {}\n" + |
2241 |
" void foo(Test[] t1, Test... t2) {}\n" + |
2242 |
"}\n" |
2242 |
"}\n" |
2243 |
); |
2243 |
); |
2244 |
IType type = workingCopies[0].getType("Test"); |
2244 |
IType type = workingCopies[0].getType("Test"); |
2245 |
search(type, REFERENCES); |
2245 |
search(type, REFERENCES); |
2246 |
assertSearchResults( |
2246 |
assertSearchResults( |
2247 |
"src/b84121/Test.java void b84121.Test.foo(Test ...) [Test] EXACT_MATCH\n" + |
2247 |
"src/b84121/Test.java void b84121.Test.foo(Test ...) [Test] EXACT_MATCH\n" + |
2248 |
"src/b84121/Test.java void b84121.Test.foo(int, Test ...) [Test] EXACT_MATCH\n" + |
2248 |
"src/b84121/Test.java void b84121.Test.foo(int, Test ...) [Test] EXACT_MATCH\n" + |
2249 |
"src/b84121/Test.java void b84121.Test.foo(Test[], Test ...) [Test] EXACT_MATCH\n" + |
2249 |
"src/b84121/Test.java void b84121.Test.foo(Test[], Test ...) [Test] EXACT_MATCH\n" + |
2250 |
"src/b84121/Test.java void b84121.Test.foo(Test[], Test ...) [Test] EXACT_MATCH" |
2250 |
"src/b84121/Test.java void b84121.Test.foo(Test[], Test ...) [Test] EXACT_MATCH" |
2251 |
); |
2251 |
); |
2252 |
} |
2252 |
} |
Lines 2259-2283
Link Here
|
2259 |
resultCollector.showRule = true; |
2259 |
resultCollector.showRule = true; |
2260 |
workingCopies = new ICompilationUnit[2]; |
2260 |
workingCopies = new ICompilationUnit[2]; |
2261 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b84724/X.java", |
2261 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b84724/X.java", |
2262 |
"package b84724;\n" + |
2262 |
"package b84724;\n" + |
2263 |
"public class X {\n" + |
2263 |
"public class X {\n" + |
2264 |
" X(String s) {}\n" + |
2264 |
" X(String s) {}\n" + |
2265 |
" X(String... v) {}\n" + |
2265 |
" X(String... v) {}\n" + |
2266 |
" X(int x, String... v) {}\n" + |
2266 |
" X(int x, String... v) {}\n" + |
2267 |
" X(String s, int x, String... v) {}\n" + |
2267 |
" X(String s, int x, String... v) {}\n" + |
2268 |
"}\n" |
2268 |
"}\n" |
2269 |
); |
2269 |
); |
2270 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b84724/Z.java", |
2270 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b84724/Z.java", |
2271 |
"package b84724;\n" + |
2271 |
"package b84724;\n" + |
2272 |
"public class Z {\n" + |
2272 |
"public class Z {\n" + |
2273 |
" void foo() {\n" + |
2273 |
" void foo() {\n" + |
2274 |
" new X();\n" + |
2274 |
" new X();\n" + |
2275 |
" new X(\"\");\n" + |
2275 |
" new X(\"\");\n" + |
2276 |
" new X(\"\", \"\");\n" + |
2276 |
" new X(\"\", \"\");\n" + |
2277 |
" new X(\"\", \"\", null);\n" + |
2277 |
" new X(\"\", \"\", null);\n" + |
2278 |
" new X(3, \"\", \"\");\n" + |
2278 |
" new X(3, \"\", \"\");\n" + |
2279 |
" new X(\"\", 3, \"\", \"\");\n" + |
2279 |
" new X(\"\", 3, \"\", \"\");\n" + |
2280 |
" }\n" + |
2280 |
" }\n" + |
2281 |
"}\n" |
2281 |
"}\n" |
2282 |
); |
2282 |
); |
2283 |
} |
2283 |
} |
Lines 2296-2303
Link Here
|
2296 |
IMethod method = selectMethod(workingCopies[0], "X", 3); |
2296 |
IMethod method = selectMethod(workingCopies[0], "X", 3); |
2297 |
search(method, REFERENCES); |
2297 |
search(method, REFERENCES); |
2298 |
assertSearchResults( |
2298 |
assertSearchResults( |
2299 |
"src/b84724/Z.java void b84724.Z.foo() [new X()] EXACT_MATCH\n" + |
2299 |
"src/b84724/Z.java void b84724.Z.foo() [new X()] EXACT_MATCH\n" + |
2300 |
"src/b84724/Z.java void b84724.Z.foo() [new X(\"\", \"\")] EXACT_MATCH\n" + |
2300 |
"src/b84724/Z.java void b84724.Z.foo() [new X(\"\", \"\")] EXACT_MATCH\n" + |
2301 |
"src/b84724/Z.java void b84724.Z.foo() [new X(\"\", \"\", null)] EXACT_MATCH" |
2301 |
"src/b84724/Z.java void b84724.Z.foo() [new X(\"\", \"\", null)] EXACT_MATCH" |
2302 |
); |
2302 |
); |
2303 |
} |
2303 |
} |
Lines 2328-2353
Link Here
|
2328 |
resultCollector.showRule = true; |
2328 |
resultCollector.showRule = true; |
2329 |
workingCopies = new ICompilationUnit[3]; |
2329 |
workingCopies = new ICompilationUnit[3]; |
2330 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b84727/A.java", |
2330 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b84727/A.java", |
2331 |
"package b84727;\n" + |
2331 |
"package b84727;\n" + |
2332 |
"public interface A {\n" + |
2332 |
"public interface A {\n" + |
2333 |
" Set<Set<Exception>> getXYZ(List<Set<Exception>> arg);\n" + |
2333 |
" Set<Set<Exception>> getXYZ(List<Set<Exception>> arg);\n" + |
2334 |
" void getXYZ(String s);\n" + |
2334 |
" void getXYZ(String s);\n" + |
2335 |
"}\n" |
2335 |
"}\n" |
2336 |
); |
2336 |
); |
2337 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b84727/X.java", |
2337 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b84727/X.java", |
2338 |
"package b84727;\n" + |
2338 |
"package b84727;\n" + |
2339 |
"public class X {\n" + |
2339 |
"public class X {\n" + |
2340 |
" A a;\n" + |
2340 |
" A a;\n" + |
2341 |
" void foo() {\n" + |
2341 |
" void foo() {\n" + |
2342 |
" a.getXYZ(new ArrayList());\n" + |
2342 |
" a.getXYZ(new ArrayList());\n" + |
2343 |
" a.getXYZ(\"\");\n" + |
2343 |
" a.getXYZ(\"\");\n" + |
2344 |
" }\n" + |
2344 |
" }\n" + |
2345 |
"}\n" |
2345 |
"}\n" |
2346 |
); |
2346 |
); |
2347 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b84727/List.java", |
2347 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b84727/List.java", |
2348 |
"package b84727;\n" + |
2348 |
"package b84727;\n" + |
2349 |
"public interface List<E> {}\n" + |
2349 |
"public interface List<E> {}\n" + |
2350 |
"interface Set<E> {}\n" + |
2350 |
"interface Set<E> {}\n" + |
2351 |
"class ArrayList<E> implements List<E> {}" |
2351 |
"class ArrayList<E> implements List<E> {}" |
2352 |
); |
2352 |
); |
2353 |
} |
2353 |
} |
Lines 2380-2395
Link Here
|
2380 |
resultCollector.showRule = true; |
2380 |
resultCollector.showRule = true; |
2381 |
workingCopies = new ICompilationUnit[1]; |
2381 |
workingCopies = new ICompilationUnit[1]; |
2382 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b85810/Test.java", |
2382 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b85810/Test.java", |
2383 |
"package b85810;\n" + |
2383 |
"package b85810;\n" + |
2384 |
"public class Test<E> implements In<Test<E>> {\n" + |
2384 |
"public class Test<E> implements In<Test<E>> {\n" + |
2385 |
" E e;\n" + |
2385 |
" E e;\n" + |
2386 |
"}\n" + |
2386 |
"}\n" + |
2387 |
"interface In<T> {}\n" |
2387 |
"interface In<T> {}\n" |
2388 |
); |
2388 |
); |
2389 |
ITypeParameter param = selectTypeParameter(workingCopies[0], "E"); |
2389 |
ITypeParameter param = selectTypeParameter(workingCopies[0], "E"); |
2390 |
search(param, REFERENCES); |
2390 |
search(param, REFERENCES); |
2391 |
assertSearchResults( |
2391 |
assertSearchResults( |
2392 |
"src/b85810/Test.java b85810.Test [E] EXACT_MATCH\n" + |
2392 |
"src/b85810/Test.java b85810.Test [E] EXACT_MATCH\n" + |
2393 |
"src/b85810/Test.java b85810.Test.e [E] EXACT_MATCH" |
2393 |
"src/b85810/Test.java b85810.Test.e [E] EXACT_MATCH" |
2394 |
); |
2394 |
); |
2395 |
} |
2395 |
} |
Lines 2402-2426
Link Here
|
2402 |
resultCollector.showRule = true; |
2402 |
resultCollector.showRule = true; |
2403 |
workingCopies = new ICompilationUnit[3]; |
2403 |
workingCopies = new ICompilationUnit[3]; |
2404 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b86596/aa/link/A.java", |
2404 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b86596/aa/link/A.java", |
2405 |
"package b86596.aa.link;\n" + |
2405 |
"package b86596.aa.link;\n" + |
2406 |
"public interface A {}\n" |
2406 |
"public interface A {}\n" |
2407 |
); |
2407 |
); |
2408 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b86596/bb/Link.java", |
2408 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b86596/bb/Link.java", |
2409 |
"package b86596.bb;\n" + |
2409 |
"package b86596.bb;\n" + |
2410 |
"public class Link{}\n" |
2410 |
"public class Link{}\n" |
2411 |
); |
2411 |
); |
2412 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b86596/cc/X.java", |
2412 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b86596/cc/X.java", |
2413 |
"package b86596.cc;\n" + |
2413 |
"package b86596.cc;\n" + |
2414 |
"import b86596.aa.link.A;\n" + |
2414 |
"import b86596.aa.link.A;\n" + |
2415 |
"import b86596.bb.Link;\n" + |
2415 |
"import b86596.bb.Link;\n" + |
2416 |
"public class X {\n" + |
2416 |
"public class X {\n" + |
2417 |
" A a;\n" + |
2417 |
" A a;\n" + |
2418 |
" Link l;\n" + |
2418 |
" Link l;\n" + |
2419 |
"}\n" |
2419 |
"}\n" |
2420 |
); |
2420 |
); |
2421 |
search("Link", TYPE, REFERENCES, SearchPattern.R_EXACT_MATCH); |
2421 |
search("Link", TYPE, REFERENCES, SearchPattern.R_EXACT_MATCH); |
2422 |
assertSearchResults( |
2422 |
assertSearchResults( |
2423 |
"src/b86596/cc/X.java [Link] EXACT_RAW_MATCH\n" + |
2423 |
"src/b86596/cc/X.java [Link] EXACT_RAW_MATCH\n" + |
2424 |
"src/b86596/cc/X.java b86596.cc.X.l [Link] EXACT_MATCH" |
2424 |
"src/b86596/cc/X.java b86596.cc.X.l [Link] EXACT_MATCH" |
2425 |
); |
2425 |
); |
2426 |
} |
2426 |
} |
Lines 2433-2457
Link Here
|
2433 |
resultCollector.showRule = true; |
2433 |
resultCollector.showRule = true; |
2434 |
workingCopies = new ICompilationUnit[2]; |
2434 |
workingCopies = new ICompilationUnit[2]; |
2435 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b86642/A.java", |
2435 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b86642/A.java", |
2436 |
"package b86642;\n" + |
2436 |
"package b86642;\n" + |
2437 |
"class A {\n" + |
2437 |
"class A {\n" + |
2438 |
" public void m() {}\n" + |
2438 |
" public void m() {}\n" + |
2439 |
" protected void f(A a){}\n" + |
2439 |
" protected void f(A a){}\n" + |
2440 |
"}\n" |
2440 |
"}\n" |
2441 |
); |
2441 |
); |
2442 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b86642/B.java", |
2442 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b86642/B.java", |
2443 |
"package b86642;\n" + |
2443 |
"package b86642;\n" + |
2444 |
"public class B extends A{\n" + |
2444 |
"public class B extends A{\n" + |
2445 |
" protected void f(A a){\n" + |
2445 |
" protected void f(A a){\n" + |
2446 |
" a.m();\n" + |
2446 |
" a.m();\n" + |
2447 |
" }\n" + |
2447 |
" }\n" + |
2448 |
"}\n" |
2448 |
"}\n" |
2449 |
); |
2449 |
); |
2450 |
IType type = workingCopies[0].getType("A"); |
2450 |
IType type = workingCopies[0].getType("A"); |
2451 |
search(type, REFERENCES); |
2451 |
search(type, REFERENCES); |
2452 |
assertSearchResults( |
2452 |
assertSearchResults( |
2453 |
"src/b86642/A.java void b86642.A.f(A) [A] EXACT_MATCH\n" + |
2453 |
"src/b86642/A.java void b86642.A.f(A) [A] EXACT_MATCH\n" + |
2454 |
"src/b86642/B.java b86642.B [A] EXACT_MATCH\n" + |
2454 |
"src/b86642/B.java b86642.B [A] EXACT_MATCH\n" + |
2455 |
"src/b86642/B.java void b86642.B.f(A) [A] EXACT_MATCH" |
2455 |
"src/b86642/B.java void b86642.B.f(A) [A] EXACT_MATCH" |
2456 |
); |
2456 |
); |
2457 |
} |
2457 |
} |
Lines 2464-2470
Link Here
|
2464 |
IMethod method = type.getMethod("m86293", new String[0]); |
2464 |
IMethod method = type.getMethod("m86293", new String[0]); |
2465 |
search(method, DECLARATIONS); |
2465 |
search(method, DECLARATIONS); |
2466 |
assertSearchResults( |
2466 |
assertSearchResults( |
2467 |
"lib/b86293.jar void <anonymous>.m86293() EXACT_MATCH\n" + |
2467 |
"lib/b86293.jar void <anonymous>.m86293() EXACT_MATCH\n" + |
2468 |
"lib/b86293.jar void I86293.m86293() EXACT_MATCH" |
2468 |
"lib/b86293.jar void I86293.m86293() EXACT_MATCH" |
2469 |
); |
2469 |
); |
2470 |
} |
2470 |
} |
Lines 2477-2493
Link Here
|
2477 |
resultCollector.showInsideDoc = true; |
2477 |
resultCollector.showInsideDoc = true; |
2478 |
workingCopies = new ICompilationUnit[2]; |
2478 |
workingCopies = new ICompilationUnit[2]; |
2479 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b86380/package-info.java", |
2479 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b86380/package-info.java", |
2480 |
"/**\n" + |
2480 |
"/**\n" + |
2481 |
" * @see Annot#field\n" + |
2481 |
" * @see Annot#field\n" + |
2482 |
" */\n" + |
2482 |
" */\n" + |
2483 |
"@Annot(value=11)\n" + |
2483 |
"@Annot(value=11)\n" + |
2484 |
"package b86380;\n" |
2484 |
"package b86380;\n" |
2485 |
); |
2485 |
); |
2486 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b86380/Test.java", |
2486 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b86380/Test.java", |
2487 |
"package b86380;\n" + |
2487 |
"package b86380;\n" + |
2488 |
"@Annot(12) public class Test {\n" + |
2488 |
"@Annot(12) public class Test {\n" + |
2489 |
" public int field = Annot.field;\n" + |
2489 |
" public int field = Annot.field;\n" + |
2490 |
" public void foo() {}\n" + |
2490 |
" public void foo() {}\n" + |
2491 |
"}\n" |
2491 |
"}\n" |
2492 |
); |
2492 |
); |
2493 |
} |
2493 |
} |
Lines 2498-2506
Link Here
|
2498 |
IType type = unit.getType("Annot"); |
2498 |
IType type = unit.getType("Annot"); |
2499 |
search(type, REFERENCES); |
2499 |
search(type, REFERENCES); |
2500 |
assertSearchResults( |
2500 |
assertSearchResults( |
2501 |
"src/b86380/Test.java b86380.Test [Annot] EXACT_MATCH OUTSIDE_JAVADOC\n" + |
2501 |
"src/b86380/Test.java b86380.Test [Annot] EXACT_MATCH OUTSIDE_JAVADOC\n" + |
2502 |
"src/b86380/Test.java b86380.Test.field [Annot] EXACT_MATCH OUTSIDE_JAVADOC\n" + |
2502 |
"src/b86380/Test.java b86380.Test.field [Annot] EXACT_MATCH OUTSIDE_JAVADOC\n" + |
2503 |
"src/b86380/package-info.java [Annot] EXACT_MATCH INSIDE_JAVADOC\n" + |
2503 |
"src/b86380/package-info.java [Annot] EXACT_MATCH INSIDE_JAVADOC\n" + |
2504 |
"src/b86380/package-info.java [Annot] EXACT_MATCH OUTSIDE_JAVADOC" |
2504 |
"src/b86380/package-info.java [Annot] EXACT_MATCH OUTSIDE_JAVADOC" |
2505 |
); |
2505 |
); |
2506 |
} |
2506 |
} |
Lines 2512-2518
Link Here
|
2512 |
assertEquals("Invalid number of methods", 1, methods.length); |
2512 |
assertEquals("Invalid number of methods", 1, methods.length); |
2513 |
search(methods[0], REFERENCES); |
2513 |
search(methods[0], REFERENCES); |
2514 |
assertSearchResults( |
2514 |
assertSearchResults( |
2515 |
"src/b86380/Test.java b86380.Test [12] EXACT_MATCH OUTSIDE_JAVADOC\n" + |
2515 |
"src/b86380/Test.java b86380.Test [12] EXACT_MATCH OUTSIDE_JAVADOC\n" + |
2516 |
"src/b86380/package-info.java [value] EXACT_MATCH OUTSIDE_JAVADOC" |
2516 |
"src/b86380/package-info.java [value] EXACT_MATCH OUTSIDE_JAVADOC" |
2517 |
); |
2517 |
); |
2518 |
} |
2518 |
} |
Lines 2524-2530
Link Here
|
2524 |
assertEquals("Invalid number of fields", 1, fields.length); |
2524 |
assertEquals("Invalid number of fields", 1, fields.length); |
2525 |
search(fields[0], REFERENCES); |
2525 |
search(fields[0], REFERENCES); |
2526 |
assertSearchResults( |
2526 |
assertSearchResults( |
2527 |
"src/b86380/Test.java b86380.Test.field [field] EXACT_MATCH OUTSIDE_JAVADOC\n" + |
2527 |
"src/b86380/Test.java b86380.Test.field [field] EXACT_MATCH OUTSIDE_JAVADOC\n" + |
2528 |
"src/b86380/package-info.java [field] EXACT_MATCH INSIDE_JAVADOC" |
2528 |
"src/b86380/package-info.java [field] EXACT_MATCH INSIDE_JAVADOC" |
2529 |
); |
2529 |
); |
2530 |
} |
2530 |
} |
Lines 2537-2569
Link Here
|
2537 |
resultCollector.showRule = true; |
2537 |
resultCollector.showRule = true; |
2538 |
workingCopies = new ICompilationUnit[2]; |
2538 |
workingCopies = new ICompilationUnit[2]; |
2539 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b88174/Test.java", |
2539 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b88174/Test.java", |
2540 |
"package b88174;\n" + |
2540 |
"package b88174;\n" + |
2541 |
"public enum Test {\n" + |
2541 |
"public enum Test {\n" + |
2542 |
" a {\n" + |
2542 |
" a {\n" + |
2543 |
" int getTheValue() { // not found\n" + |
2543 |
" int getTheValue() { // not found\n" + |
2544 |
" return 0;\n" + |
2544 |
" return 0;\n" + |
2545 |
" }\n" + |
2545 |
" }\n" + |
2546 |
" };\n" + |
2546 |
" };\n" + |
2547 |
" abstract int getTheValue();\n" + |
2547 |
" abstract int getTheValue();\n" + |
2548 |
"}\n" |
2548 |
"}\n" |
2549 |
); |
2549 |
); |
2550 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b88174/X.java", |
2550 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b88174/X.java", |
2551 |
"package b88174;\n" + |
2551 |
"package b88174;\n" + |
2552 |
"public class X {\n" + |
2552 |
"public class X {\n" + |
2553 |
" X x = new X() {\n" + |
2553 |
" X x = new X() {\n" + |
2554 |
" int getTheValue() {\n" + |
2554 |
" int getTheValue() {\n" + |
2555 |
" return 0;\n" + |
2555 |
" return 0;\n" + |
2556 |
" }\n" + |
2556 |
" }\n" + |
2557 |
" };\n" + |
2557 |
" };\n" + |
2558 |
" int getTheValue() { return 0; }\n" + |
2558 |
" int getTheValue() { return 0; }\n" + |
2559 |
"}\n" |
2559 |
"}\n" |
2560 |
); |
2560 |
); |
2561 |
IMethod method = workingCopies[0].getType("Test").getMethod("getTheValue", new String[0]); |
2561 |
IMethod method = workingCopies[0].getType("Test").getMethod("getTheValue", new String[0]); |
2562 |
search(method, DECLARATIONS | IGNORE_DECLARING_TYPE); |
2562 |
search(method, DECLARATIONS | IGNORE_DECLARING_TYPE); |
2563 |
assertSearchResults( |
2563 |
assertSearchResults( |
2564 |
"src/b88174/Test.java int b88174.Test.a:<anonymous>#1.getTheValue() [getTheValue] EXACT_MATCH\n" + |
2564 |
"src/b88174/Test.java int b88174.Test.a:<anonymous>#1.getTheValue() [getTheValue] EXACT_MATCH\n" + |
2565 |
"src/b88174/Test.java int b88174.Test.getTheValue() [getTheValue] EXACT_MATCH\n" + |
2565 |
"src/b88174/Test.java int b88174.Test.getTheValue() [getTheValue] EXACT_MATCH\n" + |
2566 |
"src/b88174/X.java int b88174.X.x:<anonymous>#1.getTheValue() [getTheValue] EXACT_MATCH\n" + |
2566 |
"src/b88174/X.java int b88174.X.x:<anonymous>#1.getTheValue() [getTheValue] EXACT_MATCH\n" + |
2567 |
"src/b88174/X.java int b88174.X.getTheValue() [getTheValue] EXACT_MATCH" |
2567 |
"src/b88174/X.java int b88174.X.getTheValue() [getTheValue] EXACT_MATCH" |
2568 |
); |
2568 |
); |
2569 |
} |
2569 |
} |
Lines 2579-2585
Link Here
|
2579 |
assertEquals("Wrong number of parameters", 1, parameters.length); |
2579 |
assertEquals("Wrong number of parameters", 1, parameters.length); |
2580 |
search(parameters[0], REFERENCES); |
2580 |
search(parameters[0], REFERENCES); |
2581 |
assertSearchResults( |
2581 |
assertSearchResults( |
2582 |
"lib/b87627.jar b87627.List EXACT_MATCH\n" + |
2582 |
"lib/b87627.jar b87627.List EXACT_MATCH\n" + |
2583 |
"lib/b87627.jar boolean b87627.List.addAll(b87627.Collection<? extends E>) EXACT_MATCH" |
2583 |
"lib/b87627.jar boolean b87627.List.addAll(b87627.Collection<? extends E>) EXACT_MATCH" |
2584 |
); |
2584 |
); |
2585 |
} |
2585 |
} |
Lines 2591-2618
Link Here
|
2591 |
public void testBug88300() throws CoreException { |
2591 |
public void testBug88300() throws CoreException { |
2592 |
workingCopies = new ICompilationUnit[3]; |
2592 |
workingCopies = new ICompilationUnit[3]; |
2593 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b88300/SubClass.java", |
2593 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b88300/SubClass.java", |
2594 |
"package b88300;\n" + |
2594 |
"package b88300;\n" + |
2595 |
"public class SubClass extends SuperClass {\n" + |
2595 |
"public class SubClass extends SuperClass {\n" + |
2596 |
" private void aMethod(String x) {\n" + |
2596 |
" private void aMethod(String x) {\n" + |
2597 |
" }\n" + |
2597 |
" }\n" + |
2598 |
" public void aMethod(Object x) {\n" + |
2598 |
" public void aMethod(Object x) {\n" + |
2599 |
" }\n" + |
2599 |
" }\n" + |
2600 |
"}\n" |
2600 |
"}\n" |
2601 |
); |
2601 |
); |
2602 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b88300/SuperClass.java", |
2602 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b88300/SuperClass.java", |
2603 |
"package b88300;\n" + |
2603 |
"package b88300;\n" + |
2604 |
"public class SuperClass {\n" + |
2604 |
"public class SuperClass {\n" + |
2605 |
" public void aMethod(Object x) {\n" + |
2605 |
" public void aMethod(Object x) {\n" + |
2606 |
" }\n" + |
2606 |
" }\n" + |
2607 |
"}\n" |
2607 |
"}\n" |
2608 |
); |
2608 |
); |
2609 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b88300/User.java", |
2609 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b88300/User.java", |
2610 |
"package b88300;\n" + |
2610 |
"package b88300;\n" + |
2611 |
"public class User {\n" + |
2611 |
"public class User {\n" + |
2612 |
" public void methodUsingSubClassMethod() {\n" + |
2612 |
" public void methodUsingSubClassMethod() {\n" + |
2613 |
" SuperClass user = new SubClass();\n" + |
2613 |
" SuperClass user = new SubClass();\n" + |
2614 |
" user.aMethod(new Object());\n" + |
2614 |
" user.aMethod(new Object());\n" + |
2615 |
" }\n" + |
2615 |
" }\n" + |
2616 |
"}\n" |
2616 |
"}\n" |
2617 |
); |
2617 |
); |
2618 |
IType type = workingCopies[0].getType("SubClass"); |
2618 |
IType type = workingCopies[0].getType("SubClass"); |
Lines 2624-2651
Link Here
|
2624 |
public void testBug88300b() throws CoreException { |
2624 |
public void testBug88300b() throws CoreException { |
2625 |
workingCopies = new ICompilationUnit[3]; |
2625 |
workingCopies = new ICompilationUnit[3]; |
2626 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b88300/SubClass.java", |
2626 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b88300/SubClass.java", |
2627 |
"package b88300;\n" + |
2627 |
"package b88300;\n" + |
2628 |
"public class SubClass extends SuperClass {\n" + |
2628 |
"public class SubClass extends SuperClass {\n" + |
2629 |
" public void aMethod(Object x) {\n" + |
2629 |
" public void aMethod(Object x) {\n" + |
2630 |
" }\n" + |
2630 |
" }\n" + |
2631 |
" private void aMethod(String x) {\n" + |
2631 |
" private void aMethod(String x) {\n" + |
2632 |
" }\n" + |
2632 |
" }\n" + |
2633 |
"}\n" |
2633 |
"}\n" |
2634 |
); |
2634 |
); |
2635 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b88300/SuperClass.java", |
2635 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b88300/SuperClass.java", |
2636 |
"package b88300;\n" + |
2636 |
"package b88300;\n" + |
2637 |
"public class SuperClass {\n" + |
2637 |
"public class SuperClass {\n" + |
2638 |
" public void aMethod(Object x) {\n" + |
2638 |
" public void aMethod(Object x) {\n" + |
2639 |
" }\n" + |
2639 |
" }\n" + |
2640 |
"}\n" |
2640 |
"}\n" |
2641 |
); |
2641 |
); |
2642 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b88300/User.java", |
2642 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b88300/User.java", |
2643 |
"package b88300;\n" + |
2643 |
"package b88300;\n" + |
2644 |
"public class User {\n" + |
2644 |
"public class User {\n" + |
2645 |
" public void methodUsingSubClassMethod() {\n" + |
2645 |
" public void methodUsingSubClassMethod() {\n" + |
2646 |
" SuperClass user = new SubClass();\n" + |
2646 |
" SuperClass user = new SubClass();\n" + |
2647 |
" user.aMethod(new Object());\n" + |
2647 |
" user.aMethod(new Object());\n" + |
2648 |
" }\n" + |
2648 |
" }\n" + |
2649 |
"}\n" |
2649 |
"}\n" |
2650 |
); |
2650 |
); |
2651 |
IType type = workingCopies[0].getType("SubClass"); |
2651 |
IType type = workingCopies[0].getType("SubClass"); |
Lines 2657-2699
Link Here
|
2657 |
public void testBug88300c() throws CoreException { |
2657 |
public void testBug88300c() throws CoreException { |
2658 |
workingCopies = new ICompilationUnit[3]; |
2658 |
workingCopies = new ICompilationUnit[3]; |
2659 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b88300/not/fixed/ConditionalFlowInfo.java", |
2659 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b88300/not/fixed/ConditionalFlowInfo.java", |
2660 |
"package b88300.not.fixed;\n" + |
2660 |
"package b88300.not.fixed;\n" + |
2661 |
"public class ConditionalFlowInfo extends FlowInfo {\n" + |
2661 |
"public class ConditionalFlowInfo extends FlowInfo {\n" + |
2662 |
" public FlowInfo info;\n" + |
2662 |
" public FlowInfo info;\n" + |
2663 |
" ConditionalFlowInfo(FlowInfo info){\n" + |
2663 |
" ConditionalFlowInfo(FlowInfo info){\n" + |
2664 |
" this.info = info;\n" + |
2664 |
" this.info = info;\n" + |
2665 |
" }\n" + |
2665 |
" }\n" + |
2666 |
" public void markAsDefinitelyNull(FieldBinding field) {\n" + |
2666 |
" public void markAsDefinitelyNull(FieldBinding field) {\n" + |
2667 |
" info.markAsDefinitelyNull(field);\n" + |
2667 |
" info.markAsDefinitelyNull(field);\n" + |
2668 |
" }\n" + |
2668 |
" }\n" + |
2669 |
" public void markAsDefinitelyNull(LocalVariableBinding local) {\n" + |
2669 |
" public void markAsDefinitelyNull(LocalVariableBinding local) {\n" + |
2670 |
" info.markAsDefinitelyNull(local);\n" + |
2670 |
" info.markAsDefinitelyNull(local);\n" + |
2671 |
" }\n" + |
2671 |
" }\n" + |
2672 |
"}\n" |
2672 |
"}\n" |
2673 |
); |
2673 |
); |
2674 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b88300/not/fixed/FlowInfo.java", |
2674 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b88300/not/fixed/FlowInfo.java", |
2675 |
"package b88300.not.fixed;\n" + |
2675 |
"package b88300.not.fixed;\n" + |
2676 |
"\n" + |
2676 |
"\n" + |
2677 |
"class FieldBinding {\n" + |
2677 |
"class FieldBinding {\n" + |
2678 |
" int id;\n" + |
2678 |
" int id;\n" + |
2679 |
"}\n" + |
2679 |
"}\n" + |
2680 |
"class LocalVariableBinding extends FieldBinding {}\n" + |
2680 |
"class LocalVariableBinding extends FieldBinding {}\n" + |
2681 |
"\n" + |
2681 |
"\n" + |
2682 |
"public abstract class FlowInfo {\n" + |
2682 |
"public abstract class FlowInfo {\n" + |
2683 |
" abstract public void markAsDefinitelyNull(LocalVariableBinding local);\n" + |
2683 |
" abstract public void markAsDefinitelyNull(LocalVariableBinding local);\n" + |
2684 |
" abstract public void markAsDefinitelyNull(FieldBinding field);\n" + |
2684 |
" abstract public void markAsDefinitelyNull(FieldBinding field);\n" + |
2685 |
"}\n" |
2685 |
"}\n" |
2686 |
); |
2686 |
); |
2687 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b88300/not/fixed/UnconditionalFlowInfo.java", |
2687 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b88300/not/fixed/UnconditionalFlowInfo.java", |
2688 |
"package b88300.not.fixed;\n" + |
2688 |
"package b88300.not.fixed;\n" + |
2689 |
"public class UnconditionalFlowInfo extends FlowInfo {\n" + |
2689 |
"public class UnconditionalFlowInfo extends FlowInfo {\n" + |
2690 |
" final private void markAsDefinitelyNull(int position) {}\n" + |
2690 |
" final private void markAsDefinitelyNull(int position) {}\n" + |
2691 |
" public void markAsDefinitelyNull(FieldBinding field) {\n" + |
2691 |
" public void markAsDefinitelyNull(FieldBinding field) {\n" + |
2692 |
" markAsDefinitelyNull(field.id);\n" + |
2692 |
" markAsDefinitelyNull(field.id);\n" + |
2693 |
" }\n" + |
2693 |
" }\n" + |
2694 |
" public void markAsDefinitelyNull(LocalVariableBinding local) {\n" + |
2694 |
" public void markAsDefinitelyNull(LocalVariableBinding local) {\n" + |
2695 |
" markAsDefinitelyNull(local.id + 1);\n" + |
2695 |
" markAsDefinitelyNull(local.id + 1);\n" + |
2696 |
" }\n" + |
2696 |
" }\n" + |
2697 |
"}\n" |
2697 |
"}\n" |
2698 |
); |
2698 |
); |
2699 |
IType type = workingCopies[2].getType("UnconditionalFlowInfo"); |
2699 |
IType type = workingCopies[2].getType("UnconditionalFlowInfo"); |
Lines 2710-2745
Link Here
|
2710 |
public void testBug89686() throws CoreException { |
2710 |
public void testBug89686() throws CoreException { |
2711 |
workingCopies = new ICompilationUnit[1]; |
2711 |
workingCopies = new ICompilationUnit[1]; |
2712 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b89686/A.java", |
2712 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b89686/A.java", |
2713 |
"package b89686;\n" + |
2713 |
"package b89686;\n" + |
2714 |
"public enum Color {\n" + |
2714 |
"public enum Color {\n" + |
2715 |
" RED, GREEN(), BLUE(17), PINK((1+(1+1))) {/*anon*/};\n" + |
2715 |
" RED, GREEN(), BLUE(17), PINK((1+(1+1))) {/*anon*/};\n" + |
2716 |
" Color() {}\n" + |
2716 |
" Color() {}\n" + |
2717 |
" Color(int i) {}\n" + |
2717 |
" Color(int i) {}\n" + |
2718 |
"}" |
2718 |
"}" |
2719 |
); |
2719 |
); |
2720 |
IType type = workingCopies[0].getType("Color"); |
2720 |
IType type = workingCopies[0].getType("Color"); |
2721 |
IMethod method = type.getMethod("Color", new String[0]); |
2721 |
IMethod method = type.getMethod("Color", new String[0]); |
2722 |
search(method, REFERENCES); |
2722 |
search(method, REFERENCES); |
2723 |
assertSearchResults( |
2723 |
assertSearchResults( |
2724 |
"src/b89686/A.java b89686.Color.RED [RED] EXACT_MATCH\n" + |
2724 |
"src/b89686/A.java b89686.Color.RED [RED] EXACT_MATCH\n" + |
2725 |
"src/b89686/A.java b89686.Color.GREEN [GREEN()] EXACT_MATCH" |
2725 |
"src/b89686/A.java b89686.Color.GREEN [GREEN()] EXACT_MATCH" |
2726 |
); |
2726 |
); |
2727 |
} |
2727 |
} |
2728 |
public void testBug89686b() throws CoreException { |
2728 |
public void testBug89686b() throws CoreException { |
2729 |
workingCopies = new ICompilationUnit[1]; |
2729 |
workingCopies = new ICompilationUnit[1]; |
2730 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b89686/A.java", |
2730 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b89686/A.java", |
2731 |
"package b89686;\n" + |
2731 |
"package b89686;\n" + |
2732 |
"public enum Color {\n" + |
2732 |
"public enum Color {\n" + |
2733 |
" RED, GREEN(), BLUE(17), PINK((1+(1+1))) {/*anon*/};\n" + |
2733 |
" RED, GREEN(), BLUE(17), PINK((1+(1+1))) {/*anon*/};\n" + |
2734 |
" Color() {}\n" + |
2734 |
" Color() {}\n" + |
2735 |
" Color(int i) {}\n" + |
2735 |
" Color(int i) {}\n" + |
2736 |
"}" |
2736 |
"}" |
2737 |
); |
2737 |
); |
2738 |
IType type = workingCopies[0].getType("Color"); |
2738 |
IType type = workingCopies[0].getType("Color"); |
2739 |
IMethod method = type.getMethod("Color", new String[] { "I"} ); |
2739 |
IMethod method = type.getMethod("Color", new String[] { "I"} ); |
2740 |
search(method, REFERENCES); |
2740 |
search(method, REFERENCES); |
2741 |
assertSearchResults( |
2741 |
assertSearchResults( |
2742 |
"src/b89686/A.java b89686.Color.BLUE [BLUE(17)] EXACT_MATCH\n" + |
2742 |
"src/b89686/A.java b89686.Color.BLUE [BLUE(17)] EXACT_MATCH\n" + |
2743 |
"src/b89686/A.java b89686.Color.PINK [PINK((1+(1+1)))] EXACT_MATCH" |
2743 |
"src/b89686/A.java b89686.Color.PINK [PINK((1+(1+1)))] EXACT_MATCH" |
2744 |
); |
2744 |
); |
2745 |
} |
2745 |
} |
Lines 2753-2759
Link Here
|
2753 |
IMethod method = classFile.getMethod("foo", new String[0]); |
2753 |
IMethod method = classFile.getMethod("foo", new String[0]); |
2754 |
search(method, ALL_OCCURRENCES); |
2754 |
search(method, ALL_OCCURRENCES); |
2755 |
assertSearchResults( |
2755 |
assertSearchResults( |
2756 |
"lib/b89848/Test.class void b89848.Test.foo() EXACT_MATCH\n" + |
2756 |
"lib/b89848/Test.class void b89848.Test.foo() EXACT_MATCH\n" + |
2757 |
"lib/b89848/X.class void b89848.X.foo() EXACT_MATCH" |
2757 |
"lib/b89848/X.class void b89848.X.foo() EXACT_MATCH" |
2758 |
); |
2758 |
); |
2759 |
} |
2759 |
} |
Lines 2766-2785
Link Here
|
2766 |
workingCopies = new ICompilationUnit[3]; |
2766 |
workingCopies = new ICompilationUnit[3]; |
2767 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b90779/A.java", |
2767 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b90779/A.java", |
2768 |
"package b90779;\n" + |
2768 |
"package b90779;\n" + |
2769 |
"public class A {\n" + |
2769 |
"public class A {\n" + |
2770 |
" public A() {}\n" + |
2770 |
" public A() {}\n" + |
2771 |
"}\n" |
2771 |
"}\n" |
2772 |
); |
2772 |
); |
2773 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b90779/B.java", |
2773 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b90779/B.java", |
2774 |
"package b90779;\n" + |
2774 |
"package b90779;\n" + |
2775 |
"public class B {\n" + |
2775 |
"public class B {\n" + |
2776 |
" public B() {}\n" + |
2776 |
" public B() {}\n" + |
2777 |
"}\n" |
2777 |
"}\n" |
2778 |
); |
2778 |
); |
2779 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b90779/C.java", |
2779 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b90779/C.java", |
2780 |
"package b90779;\n" + |
2780 |
"package b90779;\n" + |
2781 |
"public class C {\n" + |
2781 |
"public class C {\n" + |
2782 |
" public C() {}\n" + |
2782 |
" public C() {}\n" + |
2783 |
"}\n" |
2783 |
"}\n" |
2784 |
); |
2784 |
); |
2785 |
IType type = workingCopies[0].getType("A"); |
2785 |
IType type = workingCopies[0].getType("A"); |
Lines 2799-2813
Link Here
|
2799 |
workingCopies = new ICompilationUnit[1]; |
2799 |
workingCopies = new ICompilationUnit[1]; |
2800 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b90915/X.java", |
2800 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b90915/X.java", |
2801 |
"package b90915;\n" + |
2801 |
"package b90915;\n" + |
2802 |
"import g5.m.def.Single;\n" + |
2802 |
"import g5.m.def.Single;\n" + |
2803 |
"public class X<T> {\n" + |
2803 |
"public class X<T> {\n" + |
2804 |
" void foo() {\n" + |
2804 |
" void foo() {\n" + |
2805 |
" Single<String> single = new Single<String>() {\n" + |
2805 |
" Single<String> single = new Single<String>() {\n" + |
2806 |
" public <U> String generic(U u) { return \"\"; }\n" + |
2806 |
" public <U> String generic(U u) { return \"\"; }\n" + |
2807 |
" public void paramTypesArgs(Single<String> gs) {}\n" + |
2807 |
" public void paramTypesArgs(Single<String> gs) {}\n" + |
2808 |
" };\n" + |
2808 |
" };\n" + |
2809 |
" single.paramTypesArgs(null);\n" + |
2809 |
" single.paramTypesArgs(null);\n" + |
2810 |
" }\n" + |
2810 |
" }\n" + |
2811 |
"}\n" |
2811 |
"}\n" |
2812 |
); |
2812 |
); |
2813 |
IType type = workingCopies[0].getType("X"); |
2813 |
IType type = workingCopies[0].getType("X"); |
Lines 2830-2845
Link Here
|
2830 |
public void testBug91542() throws CoreException { |
2830 |
public void testBug91542() throws CoreException { |
2831 |
workingCopies = new ICompilationUnit[1]; |
2831 |
workingCopies = new ICompilationUnit[1]; |
2832 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b91542/A.java", |
2832 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b91542/A.java", |
2833 |
"package b91542;\n" + |
2833 |
"package b91542;\n" + |
2834 |
"\n" + |
2834 |
"\n" + |
2835 |
"class A<T> {\n" + |
2835 |
"class A<T> {\n" + |
2836 |
" void a(A<T> a){}\n" + |
2836 |
" void a(A<T> a){}\n" + |
2837 |
"}\n" + |
2837 |
"}\n" + |
2838 |
"\n" + |
2838 |
"\n" + |
2839 |
"class B<T> extends A<T> {\n" + |
2839 |
"class B<T> extends A<T> {\n" + |
2840 |
" protected void foo() { \n" + |
2840 |
" protected void foo() { \n" + |
2841 |
" a(this);\n" + |
2841 |
" a(this);\n" + |
2842 |
" }\n" + |
2842 |
" }\n" + |
2843 |
"}" |
2843 |
"}" |
2844 |
); |
2844 |
); |
2845 |
IType type = workingCopies[0].getType("B"); |
2845 |
IType type = workingCopies[0].getType("B"); |
Lines 2857-2896
Link Here
|
2857 |
public void testBug91078() throws CoreException { |
2857 |
public void testBug91078() throws CoreException { |
2858 |
workingCopies = new ICompilationUnit[3]; |
2858 |
workingCopies = new ICompilationUnit[3]; |
2859 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b91078/test/Example.java", |
2859 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b91078/test/Example.java", |
2860 |
"package b91078.test;\n" + |
2860 |
"package b91078.test;\n" + |
2861 |
"import b91078.util.HashMap;\n" + |
2861 |
"import b91078.util.HashMap;\n" + |
2862 |
"import b91078.util.Map;\n" + |
2862 |
"import b91078.util.Map;\n" + |
2863 |
"public class Example {\n" + |
2863 |
"public class Example {\n" + |
2864 |
" public Map.Entry logAll(Object obj) {\n" + |
2864 |
" public Map.Entry logAll(Object obj) {\n" + |
2865 |
" if (obj instanceof b91078.util.HashMap) {\n" + |
2865 |
" if (obj instanceof b91078.util.HashMap) {\n" + |
2866 |
" HashMap map = (HashMap) obj;\n" + |
2866 |
" HashMap map = (HashMap) obj;\n" + |
2867 |
" return map.entry;\n" + |
2867 |
" return map.entry;\n" + |
2868 |
" }\n" + |
2868 |
" }\n" + |
2869 |
" if (obj instanceof b91078.util.HashMap.Entry) {\n" + |
2869 |
" if (obj instanceof b91078.util.HashMap.Entry) {\n" + |
2870 |
" Map.Entry entry = (Map.Entry) obj;\n" + |
2870 |
" Map.Entry entry = (Map.Entry) obj;\n" + |
2871 |
" return entry;\n" + |
2871 |
" return entry;\n" + |
2872 |
" }\n" + |
2872 |
" }\n" + |
2873 |
" return null;\n" + |
2873 |
" return null;\n" + |
2874 |
" }\n" + |
2874 |
" }\n" + |
2875 |
"}\n" |
2875 |
"}\n" |
2876 |
); |
2876 |
); |
2877 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b91078/util/HashMap.java", |
2877 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b91078/util/HashMap.java", |
2878 |
"package b91078.util;\n" + |
2878 |
"package b91078.util;\n" + |
2879 |
"public class HashMap implements Map {\n" + |
2879 |
"public class HashMap implements Map {\n" + |
2880 |
" public Entry entry;\n" + |
2880 |
" public Entry entry;\n" + |
2881 |
"}\n" |
2881 |
"}\n" |
2882 |
); |
2882 |
); |
2883 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b91078/util/Map.java", |
2883 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b91078/util/Map.java", |
2884 |
"package b91078.util;\n" + |
2884 |
"package b91078.util;\n" + |
2885 |
"public interface Map {\n" + |
2885 |
"public interface Map {\n" + |
2886 |
" class Entry{}\n" + |
2886 |
" class Entry{}\n" + |
2887 |
"}\n" |
2887 |
"}\n" |
2888 |
); |
2888 |
); |
2889 |
search("*", PACKAGE, REFERENCES, getJavaSearchWorkingCopiesScope(workingCopies[0])); |
2889 |
search("*", PACKAGE, REFERENCES, getJavaSearchWorkingCopiesScope(workingCopies[0])); |
2890 |
assertSearchResults( |
2890 |
assertSearchResults( |
2891 |
"src/b91078/test/Example.java [b91078.util] EXACT_MATCH\n" + |
2891 |
"src/b91078/test/Example.java [b91078.util] EXACT_MATCH\n" + |
2892 |
"src/b91078/test/Example.java [b91078.util] EXACT_MATCH\n" + |
2892 |
"src/b91078/test/Example.java [b91078.util] EXACT_MATCH\n" + |
2893 |
"src/b91078/test/Example.java Map.Entry b91078.test.Example.logAll(Object) [b91078.util] EXACT_MATCH\n" + |
2893 |
"src/b91078/test/Example.java Map.Entry b91078.test.Example.logAll(Object) [b91078.util] EXACT_MATCH\n" + |
2894 |
"src/b91078/test/Example.java Map.Entry b91078.test.Example.logAll(Object) [b91078.util] EXACT_MATCH" |
2894 |
"src/b91078/test/Example.java Map.Entry b91078.test.Example.logAll(Object) [b91078.util] EXACT_MATCH" |
2895 |
); |
2895 |
); |
2896 |
} |
2896 |
} |
Lines 2914-2931
Link Here
|
2914 |
); |
2914 |
); |
2915 |
assertSearchResults( |
2915 |
assertSearchResults( |
2916 |
"Unexpected all type names", |
2916 |
"Unexpected all type names", |
2917 |
"java.lang.CharSequence\n" + |
2917 |
"java.lang.CharSequence\n" + |
2918 |
"java.lang.Class\n" + |
2918 |
"java.lang.Class\n" + |
2919 |
"java.lang.CloneNotSupportedException\n" + |
2919 |
"java.lang.CloneNotSupportedException\n" + |
2920 |
"java.lang.Comparable\n" + |
2920 |
"java.lang.Comparable\n" + |
2921 |
"java.lang.Enum\n" + |
2921 |
"java.lang.Enum\n" + |
2922 |
"java.lang.Error\n" + |
2922 |
"java.lang.Error\n" + |
2923 |
"java.lang.Exception\n" + |
2923 |
"java.lang.Exception\n" + |
2924 |
"java.lang.IllegalMonitorStateException\n" + |
2924 |
"java.lang.IllegalMonitorStateException\n" + |
2925 |
"java.lang.InterruptedException\n" + |
2925 |
"java.lang.InterruptedException\n" + |
2926 |
"java.lang.Object\n" + |
2926 |
"java.lang.Object\n" + |
2927 |
"java.lang.RuntimeException\n" + |
2927 |
"java.lang.RuntimeException\n" + |
2928 |
"java.lang.String\n" + |
2928 |
"java.lang.String\n" + |
2929 |
"java.lang.Throwable", |
2929 |
"java.lang.Throwable", |
2930 |
requestor); |
2930 |
requestor); |
2931 |
} |
2931 |
} |
Lines 2944-2955
Link Here
|
2944 |
); |
2944 |
); |
2945 |
assertSearchResults( |
2945 |
assertSearchResults( |
2946 |
"Unexpected all type names", |
2946 |
"Unexpected all type names", |
2947 |
"java.lang.CloneNotSupportedException\n" + |
2947 |
"java.lang.CloneNotSupportedException\n" + |
2948 |
"java.lang.Exception\n" + |
2948 |
"java.lang.Exception\n" + |
2949 |
"java.lang.IllegalMonitorStateException\n" + |
2949 |
"java.lang.IllegalMonitorStateException\n" + |
2950 |
"java.lang.InterruptedException\n" + |
2950 |
"java.lang.InterruptedException\n" + |
2951 |
"java.lang.RuntimeException\n" + |
2951 |
"java.lang.RuntimeException\n" + |
2952 |
"java.lang.annotation.Annotation\n" + |
2952 |
"java.lang.annotation.Annotation\n" + |
2953 |
"java.lang.annotation.Retention", |
2953 |
"java.lang.annotation.Retention", |
2954 |
requestor); |
2954 |
requestor); |
2955 |
} |
2955 |
} |
Lines 2968-2983
Link Here
|
2968 |
); |
2968 |
); |
2969 |
assertSearchResults( |
2969 |
assertSearchResults( |
2970 |
"Unexpected all type names", |
2970 |
"Unexpected all type names", |
2971 |
"Test$Inner\n" + |
2971 |
"Test$Inner\n" + |
2972 |
"b123679.test.Test\n" + |
2972 |
"b123679.test.Test\n" + |
2973 |
"b123679.test.Test$StaticClass\n" + |
2973 |
"b123679.test.Test$StaticClass\n" + |
2974 |
"b123679.test.Test$StaticClass$Member\n" + |
2974 |
"b123679.test.Test$StaticClass$Member\n" + |
2975 |
"b124645.test.A_124645\n" + |
2975 |
"b124645.test.A_124645\n" + |
2976 |
"b124645.test.X_124645\n" + |
2976 |
"b124645.test.X_124645\n" + |
2977 |
"b127628.Test127628$Member127628\n" + |
2977 |
"b127628.Test127628$Member127628\n" + |
2978 |
"b95794.Test$Color\n" + |
2978 |
"b95794.Test$Color\n" + |
2979 |
"pack.age.Test$Member\n" + |
2979 |
"pack.age.Test$Member\n" + |
2980 |
"test.Test$StaticClass\n" + |
2980 |
"test.Test$StaticClass\n" + |
2981 |
"test.Test$StaticClass$Member", |
2981 |
"test.Test$StaticClass$Member", |
2982 |
requestor); |
2982 |
requestor); |
2983 |
} |
2983 |
} |
Lines 2996-3002
Link Here
|
2996 |
); |
2996 |
); |
2997 |
assertSearchResults( |
2997 |
assertSearchResults( |
2998 |
"Unexpected all type names", |
2998 |
"Unexpected all type names", |
2999 |
"b124645.test.X_124645\n" + |
2999 |
"b124645.test.X_124645\n" + |
3000 |
"b124645.xy.X_124645", |
3000 |
"b124645.xy.X_124645", |
3001 |
requestor); |
3001 |
requestor); |
3002 |
} |
3002 |
} |
Lines 3009-3018
Link Here
|
3009 |
resultCollector.showRule = true; |
3009 |
resultCollector.showRule = true; |
3010 |
workingCopies = new ICompilationUnit[1]; |
3010 |
workingCopies = new ICompilationUnit[1]; |
3011 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b92944/Test.java", |
3011 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b92944/Test.java", |
3012 |
"package b92944;\n" + |
3012 |
"package b92944;\n" + |
3013 |
"interface B92944_I {}\n" + |
3013 |
"interface B92944_I {}\n" + |
3014 |
"enum B92944_E {}\n" + |
3014 |
"enum B92944_E {}\n" + |
3015 |
"@interface B92944_A {}\n" + |
3015 |
"@interface B92944_A {}\n" + |
3016 |
"public class B92944 {}\n" |
3016 |
"public class B92944 {}\n" |
3017 |
); |
3017 |
); |
3018 |
} |
3018 |
} |
Lines 3033-3041
Link Here
|
3033 |
); |
3033 |
); |
3034 |
assertSearchResults( |
3034 |
assertSearchResults( |
3035 |
"Unexpected all type names", |
3035 |
"Unexpected all type names", |
3036 |
"b92944.B92944\n" + |
3036 |
"b92944.B92944\n" + |
3037 |
"b92944.B92944_A\n" + |
3037 |
"b92944.B92944_A\n" + |
3038 |
"b92944.B92944_E\n" + |
3038 |
"b92944.B92944_E\n" + |
3039 |
"b92944.B92944_I", |
3039 |
"b92944.B92944_I", |
3040 |
requestor); |
3040 |
requestor); |
3041 |
} |
3041 |
} |
Lines 3078-3084
Link Here
|
3078 |
// Remove enum and annotation |
3078 |
// Remove enum and annotation |
3079 |
assertSearchResults( |
3079 |
assertSearchResults( |
3080 |
"Unexpected all type names", |
3080 |
"Unexpected all type names", |
3081 |
"b92944.B92944\n" + |
3081 |
"b92944.B92944\n" + |
3082 |
"b92944.B92944_I", // Annotation is an interface in java.lang |
3082 |
"b92944.B92944_I", // Annotation is an interface in java.lang |
3083 |
requestor); |
3083 |
requestor); |
3084 |
} |
3084 |
} |
Lines 3100-3106
Link Here
|
3100 |
// Remove interface and annotation |
3100 |
// Remove interface and annotation |
3101 |
assertSearchResults( |
3101 |
assertSearchResults( |
3102 |
"Unexpected all type names", |
3102 |
"Unexpected all type names", |
3103 |
"b92944.B92944\n" + |
3103 |
"b92944.B92944\n" + |
3104 |
"b92944.B92944_E", |
3104 |
"b92944.B92944_E", |
3105 |
requestor); |
3105 |
requestor); |
3106 |
} |
3106 |
} |
Lines 3168-3174
Link Here
|
3168 |
/** |
3168 |
/** |
3169 |
* Bug 93392: [1.5][search][annot] search for annotation elements does not seem to be implemented yet |
3169 |
* Bug 93392: [1.5][search][annot] search for annotation elements does not seem to be implemented yet |
3170 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=93392" |
3170 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=93392" |
3171 |
* |
3171 |
* |
3172 |
* Note that this test valid also: |
3172 |
* Note that this test valid also: |
3173 |
* Bug 94062: [1.5][search][annot] search for annotation elements incorrect match range |
3173 |
* Bug 94062: [1.5][search][annot] search for annotation elements incorrect match range |
3174 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=94062" |
3174 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=94062" |
Lines 3178-3201
Link Here
|
3178 |
collector.showAccuracy = true; |
3178 |
collector.showAccuracy = true; |
3179 |
workingCopies = new ICompilationUnit[1]; |
3179 |
workingCopies = new ICompilationUnit[1]; |
3180 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b93392/Test.java", |
3180 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b93392/Test.java", |
3181 |
"package b93392;\n" + |
3181 |
"package b93392;\n" + |
3182 |
"@interface Annot {\n" + |
3182 |
"@interface Annot {\n" + |
3183 |
" int value();\n" + |
3183 |
" int value();\n" + |
3184 |
"}\n" + |
3184 |
"}\n" + |
3185 |
"@Annot(41)\n" + |
3185 |
"@Annot(41)\n" + |
3186 |
"public class Test {\n" + |
3186 |
"public class Test {\n" + |
3187 |
" @Annot(21)\n" + |
3187 |
" @Annot(21)\n" + |
3188 |
" int bar;\n" + |
3188 |
" int bar;\n" + |
3189 |
" @Annot(10)\n" + |
3189 |
" @Annot(10)\n" + |
3190 |
" public void foo() {}\n" + |
3190 |
" public void foo() {}\n" + |
3191 |
"}\n" |
3191 |
"}\n" |
3192 |
); |
3192 |
); |
3193 |
IType type = selectType(workingCopies[0], "Annot"); |
3193 |
IType type = selectType(workingCopies[0], "Annot"); |
3194 |
IMethod method = type.getMethod("value", new String[0]); |
3194 |
IMethod method = type.getMethod("value", new String[0]); |
3195 |
search(method, REFERENCES, getJavaSearchScopeBugs(), collector); |
3195 |
search(method, REFERENCES, getJavaSearchScopeBugs(), collector); |
3196 |
assertSearchResults( |
3196 |
assertSearchResults( |
3197 |
"src/b93392/Test.java b93392.Test [41] EXACT_MATCH\n" + |
3197 |
"src/b93392/Test.java b93392.Test [41] EXACT_MATCH\n" + |
3198 |
"src/b93392/Test.java b93392.Test.bar [21] EXACT_MATCH\n" + |
3198 |
"src/b93392/Test.java b93392.Test.bar [21] EXACT_MATCH\n" + |
3199 |
"src/b93392/Test.java void b93392.Test.foo() [10] EXACT_MATCH", |
3199 |
"src/b93392/Test.java void b93392.Test.foo() [10] EXACT_MATCH", |
3200 |
collector |
3200 |
collector |
3201 |
); |
3201 |
); |
Lines 3224-3242
Link Here
|
3224 |
public void testBug94160() throws CoreException { |
3224 |
public void testBug94160() throws CoreException { |
3225 |
workingCopies = new ICompilationUnit[1]; |
3225 |
workingCopies = new ICompilationUnit[1]; |
3226 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b94160/Test.java", |
3226 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b94160/Test.java", |
3227 |
"package b94160;\n" + |
3227 |
"package b94160;\n" + |
3228 |
"public class Test {\n" + |
3228 |
"public class Test {\n" + |
3229 |
" <T> List<T> generateList(Class<T> clazz) {\n" + |
3229 |
" <T> List<T> generateList(Class<T> clazz) {\n" + |
3230 |
" return new ArrayList<T>();\n" + |
3230 |
" return new ArrayList<T>();\n" + |
3231 |
" }\n" + |
3231 |
" }\n" + |
3232 |
"}\n" + |
3232 |
"}\n" + |
3233 |
"class CTest extends Test {\n" + |
3233 |
"class CTest extends Test {\n" + |
3234 |
" private List<String> myList = generateList(String.class);\n" + |
3234 |
" private List<String> myList = generateList(String.class);\n" + |
3235 |
" CTest() {\n" + |
3235 |
" CTest() {\n" + |
3236 |
" myList = new ArrayList<String>();\n" + |
3236 |
" myList = new ArrayList<String>();\n" + |
3237 |
" }\n" + |
3237 |
" }\n" + |
3238 |
"}\n" + |
3238 |
"}\n" + |
3239 |
"interface List<E> {}\n" + |
3239 |
"interface List<E> {}\n" + |
3240 |
"class ArrayList<E> implements List<E> {}" |
3240 |
"class ArrayList<E> implements List<E> {}" |
3241 |
); |
3241 |
); |
3242 |
IType type = workingCopies[0].getType("CTest"); |
3242 |
IType type = workingCopies[0].getType("CTest"); |
Lines 3254-3265
Link Here
|
3254 |
public void testBug94389() throws CoreException { |
3254 |
public void testBug94389() throws CoreException { |
3255 |
workingCopies = new ICompilationUnit[1]; |
3255 |
workingCopies = new ICompilationUnit[1]; |
3256 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b94389/Test.java", |
3256 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b94389/Test.java", |
3257 |
"package b94389;\n" + |
3257 |
"package b94389;\n" + |
3258 |
"public class Test {\n" + |
3258 |
"public class Test {\n" + |
3259 |
" public void foo() {}\n" + |
3259 |
" public void foo() {}\n" + |
3260 |
" public void foo() {}\n" + |
3260 |
" public void foo() {}\n" + |
3261 |
" public void foo() {}\n" + |
3261 |
" public void foo() {}\n" + |
3262 |
" public void foo() {}\n" + |
3262 |
" public void foo() {}\n" + |
3263 |
"}\n" |
3263 |
"}\n" |
3264 |
); |
3264 |
); |
3265 |
IType type = workingCopies[0].getType("Test"); |
3265 |
IType type = workingCopies[0].getType("Test"); |
Lines 3269-3286
Link Here
|
3269 |
// Perform search on each duplicate method |
3269 |
// Perform search on each duplicate method |
3270 |
IJavaSearchScope scope = getJavaSearchScopeBugs(); |
3270 |
IJavaSearchScope scope = getJavaSearchScopeBugs(); |
3271 |
for (int m=0; m<methodsLength; m++) { |
3271 |
for (int m=0; m<methodsLength; m++) { |
3272 |
|
3272 |
|
3273 |
// Search method declaration |
3273 |
// Search method declaration |
3274 |
TestCollector collector = new TestCollector(); |
3274 |
TestCollector collector = new TestCollector(); |
3275 |
search(methods[m], DECLARATIONS, scope, collector); |
3275 |
search(methods[m], DECLARATIONS, scope, collector); |
3276 |
assertSearchResults( |
3276 |
assertSearchResults( |
3277 |
"src/b94389/Test.java void b94389.Test.foo() [foo]\n" + |
3277 |
"src/b94389/Test.java void b94389.Test.foo() [foo]\n" + |
3278 |
"src/b94389/Test.java void b94389.Test.foo() [foo]\n" + |
3278 |
"src/b94389/Test.java void b94389.Test.foo() [foo]\n" + |
3279 |
"src/b94389/Test.java void b94389.Test.foo() [foo]\n" + |
3279 |
"src/b94389/Test.java void b94389.Test.foo() [foo]\n" + |
3280 |
"src/b94389/Test.java void b94389.Test.foo() [foo]", |
3280 |
"src/b94389/Test.java void b94389.Test.foo() [foo]", |
3281 |
collector |
3281 |
collector |
3282 |
); |
3282 |
); |
3283 |
|
3283 |
|
3284 |
// Verify that all matches have correct occurence count |
3284 |
// Verify that all matches have correct occurence count |
3285 |
int size = collector.matches.size(); |
3285 |
int size = collector.matches.size(); |
3286 |
for (int i=0; i<size; i++) { |
3286 |
for (int i=0; i<size; i++) { |
Lines 3296-3310
Link Here
|
3296 |
public void testBug94718() throws CoreException { |
3296 |
public void testBug94718() throws CoreException { |
3297 |
workingCopies = new ICompilationUnit[2]; |
3297 |
workingCopies = new ICompilationUnit[2]; |
3298 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b94718/SetUp.java", |
3298 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b94718/SetUp.java", |
3299 |
"package b94718;\n" + |
3299 |
"package b94718;\n" + |
3300 |
"public @interface SetUp {\n" + |
3300 |
"public @interface SetUp {\n" + |
3301 |
" String value() {}\n" + |
3301 |
" String value() {}\n" + |
3302 |
"}\n" |
3302 |
"}\n" |
3303 |
); |
3303 |
); |
3304 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b94718/Test.java", |
3304 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b94718/Test.java", |
3305 |
"package b94718;\n" + |
3305 |
"package b94718;\n" + |
3306 |
"@SetUp(\"howdy\")\n" + |
3306 |
"@SetUp(\"howdy\")\n" + |
3307 |
"public class Test {\n" + |
3307 |
"public class Test {\n" + |
3308 |
"}\n" |
3308 |
"}\n" |
3309 |
); |
3309 |
); |
3310 |
IType type = workingCopies[1].getType("SetUp"); |
3310 |
IType type = workingCopies[1].getType("SetUp"); |
Lines 3326-3332
Link Here
|
3326 |
// search constructor second level member |
3326 |
// search constructor second level member |
3327 |
search(type.getMethods()[0], REFERENCES); |
3327 |
search(type.getMethods()[0], REFERENCES); |
3328 |
assertSearchResults( |
3328 |
assertSearchResults( |
3329 |
"lib/b95152.jar b95152.T1() EXACT_MATCH\n" + |
3329 |
"lib/b95152.jar b95152.T1() EXACT_MATCH\n" + |
3330 |
"lib/b95152.jar b95152.T1() EXACT_MATCH" |
3330 |
"lib/b95152.jar b95152.T1() EXACT_MATCH" |
3331 |
); |
3331 |
); |
3332 |
} |
3332 |
} |
Lines 3338-3344
Link Here
|
3338 |
// search constructor second level member |
3338 |
// search constructor second level member |
3339 |
search(type.getMethods()[0], REFERENCES); |
3339 |
search(type.getMethods()[0], REFERENCES); |
3340 |
assertSearchResults( |
3340 |
assertSearchResults( |
3341 |
"lib/b95152.jar b95152.T2(int) EXACT_MATCH\n" + |
3341 |
"lib/b95152.jar b95152.T2(int) EXACT_MATCH\n" + |
3342 |
"lib/b95152.jar b95152.T2(int) EXACT_MATCH" |
3342 |
"lib/b95152.jar b95152.T2(int) EXACT_MATCH" |
3343 |
); |
3343 |
); |
3344 |
} |
3344 |
} |
Lines 3350-3356
Link Here
|
3350 |
// search constructor second level member |
3350 |
// search constructor second level member |
3351 |
search(type.getMethods()[0], REFERENCES); |
3351 |
search(type.getMethods()[0], REFERENCES); |
3352 |
assertSearchResults( |
3352 |
assertSearchResults( |
3353 |
"lib/b95152.jar b95152.T3(b95152.T3) EXACT_MATCH\n" + |
3353 |
"lib/b95152.jar b95152.T3(b95152.T3) EXACT_MATCH\n" + |
3354 |
"lib/b95152.jar b95152.T3(b95152.T3) EXACT_MATCH" |
3354 |
"lib/b95152.jar b95152.T3(b95152.T3) EXACT_MATCH" |
3355 |
); |
3355 |
); |
3356 |
} |
3356 |
} |
Lines 3362-3388
Link Here
|
3362 |
// search constructor second level member |
3362 |
// search constructor second level member |
3363 |
search(type.getMethods()[0], REFERENCES); |
3363 |
search(type.getMethods()[0], REFERENCES); |
3364 |
assertSearchResults( |
3364 |
assertSearchResults( |
3365 |
"lib/b95152.jar b95152.T4(b95152.T4, java.lang.String) EXACT_MATCH\n" + |
3365 |
"lib/b95152.jar b95152.T4(b95152.T4, java.lang.String) EXACT_MATCH\n" + |
3366 |
"lib/b95152.jar b95152.T4(b95152.T4, java.lang.String) EXACT_MATCH" |
3366 |
"lib/b95152.jar b95152.T4(b95152.T4, java.lang.String) EXACT_MATCH" |
3367 |
); |
3367 |
); |
3368 |
} |
3368 |
} |
3369 |
public void testBug95152_wc01() throws CoreException { |
3369 |
public void testBug95152_wc01() throws CoreException { |
3370 |
workingCopies = new ICompilationUnit[1]; |
3370 |
workingCopies = new ICompilationUnit[1]; |
3371 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b95152/T.java", |
3371 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b95152/T.java", |
3372 |
"package b95152;\n" + |
3372 |
"package b95152;\n" + |
3373 |
"public class T {\n" + |
3373 |
"public class T {\n" + |
3374 |
" T2 c2;\n" + |
3374 |
" T2 c2;\n" + |
3375 |
" T2.T3 c3;\n" + |
3375 |
" T2.T3 c3;\n" + |
3376 |
" T() {\n" + |
3376 |
" T() {\n" + |
3377 |
" c2 = new T2();\n" + |
3377 |
" c2 = new T2();\n" + |
3378 |
" c3 = c2.new T3();\n" + |
3378 |
" c3 = c2.new T3();\n" + |
3379 |
" }\n" + |
3379 |
" }\n" + |
3380 |
" class T2 {\n" + |
3380 |
" class T2 {\n" + |
3381 |
" T2() {}\n" + |
3381 |
" T2() {}\n" + |
3382 |
" class T3 {\n" + |
3382 |
" class T3 {\n" + |
3383 |
" T3() {}\n" + |
3383 |
" T3() {}\n" + |
3384 |
" }\n" + |
3384 |
" }\n" + |
3385 |
" }\n" + |
3385 |
" }\n" + |
3386 |
"}\n" |
3386 |
"}\n" |
3387 |
); |
3387 |
); |
3388 |
// search constructor first level member |
3388 |
// search constructor first level member |
Lines 3400-3419
Link Here
|
3400 |
public void testBug95152_wc02() throws CoreException { |
3400 |
public void testBug95152_wc02() throws CoreException { |
3401 |
workingCopies = new ICompilationUnit[1]; |
3401 |
workingCopies = new ICompilationUnit[1]; |
3402 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b95152/T.java", |
3402 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b95152/T.java", |
3403 |
"package b95152;\n" + |
3403 |
"package b95152;\n" + |
3404 |
"public class T {\n" + |
3404 |
"public class T {\n" + |
3405 |
" T2 c2;\n" + |
3405 |
" T2 c2;\n" + |
3406 |
" T2.T3 c3;\n" + |
3406 |
" T2.T3 c3;\n" + |
3407 |
" T(int c) {\n" + |
3407 |
" T(int c) {\n" + |
3408 |
" c2 = new T2(c);\n" + |
3408 |
" c2 = new T2(c);\n" + |
3409 |
" c3 = c2.new T3(c);\n" + |
3409 |
" c3 = c2.new T3(c);\n" + |
3410 |
" }\n" + |
3410 |
" }\n" + |
3411 |
" class T2 {\n" + |
3411 |
" class T2 {\n" + |
3412 |
" T2(int x) {}\n" + |
3412 |
" T2(int x) {}\n" + |
3413 |
" class T3 {\n" + |
3413 |
" class T3 {\n" + |
3414 |
" T3(int x) {}\n" + |
3414 |
" T3(int x) {}\n" + |
3415 |
" }\n" + |
3415 |
" }\n" + |
3416 |
" }\n" + |
3416 |
" }\n" + |
3417 |
"}\n" |
3417 |
"}\n" |
3418 |
); |
3418 |
); |
3419 |
// search constructor first level member |
3419 |
// search constructor first level member |
Lines 3431-3450
Link Here
|
3431 |
public void testBug95152_wc03() throws CoreException { |
3431 |
public void testBug95152_wc03() throws CoreException { |
3432 |
workingCopies = new ICompilationUnit[1]; |
3432 |
workingCopies = new ICompilationUnit[1]; |
3433 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b95152/T.java", |
3433 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b95152/T.java", |
3434 |
"package b95152;\n" + |
3434 |
"package b95152;\n" + |
3435 |
"public class T {\n" + |
3435 |
"public class T {\n" + |
3436 |
" T2 c2;\n" + |
3436 |
" T2 c2;\n" + |
3437 |
" T2.T3 c3;\n" + |
3437 |
" T2.T3 c3;\n" + |
3438 |
" T(T c) {\n" + |
3438 |
" T(T c) {\n" + |
3439 |
" c2 = new T2(c);\n" + |
3439 |
" c2 = new T2(c);\n" + |
3440 |
" c3 = c2.new T3(c2);\n" + |
3440 |
" c3 = c2.new T3(c2);\n" + |
3441 |
" }\n" + |
3441 |
" }\n" + |
3442 |
" class T2 {\n" + |
3442 |
" class T2 {\n" + |
3443 |
" T2(T c) {}\n" + |
3443 |
" T2(T c) {}\n" + |
3444 |
" class T3 {\n" + |
3444 |
" class T3 {\n" + |
3445 |
" T3(T2 c) {}\n" + |
3445 |
" T3(T2 c) {}\n" + |
3446 |
" }\n" + |
3446 |
" }\n" + |
3447 |
" }\n" + |
3447 |
" }\n" + |
3448 |
"}\n" |
3448 |
"}\n" |
3449 |
); |
3449 |
); |
3450 |
// search constructor first level member |
3450 |
// search constructor first level member |
Lines 3462-3481
Link Here
|
3462 |
public void testBug95152_wc04() throws CoreException { |
3462 |
public void testBug95152_wc04() throws CoreException { |
3463 |
workingCopies = new ICompilationUnit[1]; |
3463 |
workingCopies = new ICompilationUnit[1]; |
3464 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b95152/T.java", |
3464 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b95152/T.java", |
3465 |
"package b95152;\n" + |
3465 |
"package b95152;\n" + |
3466 |
"public class T {\n" + |
3466 |
"public class T {\n" + |
3467 |
" T2 c2;\n" + |
3467 |
" T2 c2;\n" + |
3468 |
" T2.T3 c3;\n" + |
3468 |
" T2.T3 c3;\n" + |
3469 |
" T(T c, String str) {\n" + |
3469 |
" T(T c, String str) {\n" + |
3470 |
" c2 = new T2(c, str);\n" + |
3470 |
" c2 = new T2(c, str);\n" + |
3471 |
" c3 = c2.new T3(c2, str);\n" + |
3471 |
" c3 = c2.new T3(c2, str);\n" + |
3472 |
" }\n" + |
3472 |
" }\n" + |
3473 |
" class T2 {\n" + |
3473 |
" class T2 {\n" + |
3474 |
" T2(T c, String str) {}\n" + |
3474 |
" T2(T c, String str) {}\n" + |
3475 |
" class T3 {\n" + |
3475 |
" class T3 {\n" + |
3476 |
" T3(T2 c, String str) {}\n" + |
3476 |
" T3(T2 c, String str) {}\n" + |
3477 |
" }\n" + |
3477 |
" }\n" + |
3478 |
" }\n" + |
3478 |
" }\n" + |
3479 |
"}\n" |
3479 |
"}\n" |
3480 |
); |
3480 |
); |
3481 |
// search constructor first level member |
3481 |
// search constructor first level member |
Lines 3486-3492
Link Here
|
3486 |
search(type.getMethods()[0], REFERENCES); |
3486 |
search(type.getMethods()[0], REFERENCES); |
3487 |
// verify searches results |
3487 |
// verify searches results |
3488 |
assertSearchResults( |
3488 |
assertSearchResults( |
3489 |
"src/b95152/T.java b95152.T(T, String) [new T2(c, str)] EXACT_MATCH\n" + |
3489 |
"src/b95152/T.java b95152.T(T, String) [new T2(c, str)] EXACT_MATCH\n" + |
3490 |
"src/b95152/T.java b95152.T(T, String) [c2.new T3(c2, str)] EXACT_MATCH" |
3490 |
"src/b95152/T.java b95152.T(T, String) [c2.new T3(c2, str)] EXACT_MATCH" |
3491 |
); |
3491 |
); |
3492 |
} |
3492 |
} |
Lines 3498-3516
Link Here
|
3498 |
public void testBug95794() throws CoreException { |
3498 |
public void testBug95794() throws CoreException { |
3499 |
ICompilationUnit unit = getCompilationUnit("JavaSearchBugs", "src", "b95794", "Test.java"); |
3499 |
ICompilationUnit unit = getCompilationUnit("JavaSearchBugs", "src", "b95794", "Test.java"); |
3500 |
IType type = unit.getType("Test"); |
3500 |
IType type = unit.getType("Test"); |
3501 |
|
3501 |
|
3502 |
// Verify matches |
3502 |
// Verify matches |
3503 |
TestCollector occurencesCollector = new TestCollector(); |
3503 |
TestCollector occurencesCollector = new TestCollector(); |
3504 |
occurencesCollector.showAccuracy = true; |
3504 |
occurencesCollector.showAccuracy = true; |
3505 |
search(type, ALL_OCCURRENCES, getJavaSearchScopeBugs(), occurencesCollector); |
3505 |
search(type, ALL_OCCURRENCES, getJavaSearchScopeBugs(), occurencesCollector); |
3506 |
assertSearchResults( |
3506 |
assertSearchResults( |
3507 |
"src/b95794/Test.java [b95794.Test] EXACT_MATCH\n" + |
3507 |
"src/b95794/Test.java [b95794.Test] EXACT_MATCH\n" + |
3508 |
"src/b95794/Test.java [b95794.Test] EXACT_MATCH\n" + |
3508 |
"src/b95794/Test.java [b95794.Test] EXACT_MATCH\n" + |
3509 |
"src/b95794/Test.java b95794.Test [Test] EXACT_MATCH\n" + |
3509 |
"src/b95794/Test.java b95794.Test [Test] EXACT_MATCH\n" + |
3510 |
"src/b95794/Test.java b95794.Test.there [Test] EXACT_MATCH", |
3510 |
"src/b95794/Test.java b95794.Test.there [Test] EXACT_MATCH", |
3511 |
occurencesCollector |
3511 |
occurencesCollector |
3512 |
); |
3512 |
); |
3513 |
|
3513 |
|
3514 |
// Verify with references matches |
3514 |
// Verify with references matches |
3515 |
TestCollector referencesCollector = new TestCollector(); |
3515 |
TestCollector referencesCollector = new TestCollector(); |
3516 |
search(type, REFERENCES, getJavaSearchScopeBugs(), referencesCollector); |
3516 |
search(type, REFERENCES, getJavaSearchScopeBugs(), referencesCollector); |
Lines 3520-3538
Link Here
|
3520 |
resultCollector.showRule = true; |
3520 |
resultCollector.showRule = true; |
3521 |
ICompilationUnit unit = getCompilationUnit("JavaSearchBugs", "src", "b95794", "Test.java"); |
3521 |
ICompilationUnit unit = getCompilationUnit("JavaSearchBugs", "src", "b95794", "Test.java"); |
3522 |
IType type = unit.getType("Test").getType("Color"); |
3522 |
IType type = unit.getType("Test").getType("Color"); |
3523 |
|
3523 |
|
3524 |
// Verify matches |
3524 |
// Verify matches |
3525 |
TestCollector occurencesCollector = new TestCollector(); |
3525 |
TestCollector occurencesCollector = new TestCollector(); |
3526 |
occurencesCollector.showAccuracy = true; |
3526 |
occurencesCollector.showAccuracy = true; |
3527 |
search(type, ALL_OCCURRENCES, getJavaSearchScopeBugs(), occurencesCollector); |
3527 |
search(type, ALL_OCCURRENCES, getJavaSearchScopeBugs(), occurencesCollector); |
3528 |
assertSearchResults( |
3528 |
assertSearchResults( |
3529 |
"src/b95794/Test.java [b95794.Test.Color] EXACT_MATCH\n" + |
3529 |
"src/b95794/Test.java [b95794.Test.Color] EXACT_MATCH\n" + |
3530 |
"src/b95794/Test.java [b95794.Test.Color] EXACT_MATCH\n" + |
3530 |
"src/b95794/Test.java [b95794.Test.Color] EXACT_MATCH\n" + |
3531 |
"src/b95794/Test.java void b95794.Test.main(String[]) [Color] EXACT_MATCH\n" + |
3531 |
"src/b95794/Test.java void b95794.Test.main(String[]) [Color] EXACT_MATCH\n" + |
3532 |
"src/b95794/Test.java b95794.Test$Color [Color] EXACT_MATCH", |
3532 |
"src/b95794/Test.java b95794.Test$Color [Color] EXACT_MATCH", |
3533 |
occurencesCollector |
3533 |
occurencesCollector |
3534 |
); |
3534 |
); |
3535 |
|
3535 |
|
3536 |
// Verify with references matches |
3536 |
// Verify with references matches |
3537 |
TestCollector referencesCollector = new TestCollector(); |
3537 |
TestCollector referencesCollector = new TestCollector(); |
3538 |
search(type, REFERENCES, getJavaSearchScopeBugs(), referencesCollector); |
3538 |
search(type, REFERENCES, getJavaSearchScopeBugs(), referencesCollector); |
Lines 3542-3559
Link Here
|
3542 |
resultCollector.showRule = true; |
3542 |
resultCollector.showRule = true; |
3543 |
ICompilationUnit unit = getCompilationUnit("JavaSearchBugs", "src", "b95794", "Test.java"); |
3543 |
ICompilationUnit unit = getCompilationUnit("JavaSearchBugs", "src", "b95794", "Test.java"); |
3544 |
IField field = unit.getType("Test").getType("Color").getField("WHITE"); |
3544 |
IField field = unit.getType("Test").getType("Color").getField("WHITE"); |
3545 |
|
3545 |
|
3546 |
// Verify matches |
3546 |
// Verify matches |
3547 |
TestCollector occurencesCollector = new TestCollector(); |
3547 |
TestCollector occurencesCollector = new TestCollector(); |
3548 |
occurencesCollector.showAccuracy = true; |
3548 |
occurencesCollector.showAccuracy = true; |
3549 |
search(field, ALL_OCCURRENCES, getJavaSearchScopeBugs(), occurencesCollector); |
3549 |
search(field, ALL_OCCURRENCES, getJavaSearchScopeBugs(), occurencesCollector); |
3550 |
assertSearchResults( |
3550 |
assertSearchResults( |
3551 |
"src/b95794/Test.java [WHITE] EXACT_MATCH\n" + |
3551 |
"src/b95794/Test.java [WHITE] EXACT_MATCH\n" + |
3552 |
"src/b95794/Test.java void b95794.Test.main(String[]) [WHITE] EXACT_MATCH\n" + |
3552 |
"src/b95794/Test.java void b95794.Test.main(String[]) [WHITE] EXACT_MATCH\n" + |
3553 |
"src/b95794/Test.java b95794.Test$Color.WHITE [WHITE] EXACT_MATCH", |
3553 |
"src/b95794/Test.java b95794.Test$Color.WHITE [WHITE] EXACT_MATCH", |
3554 |
occurencesCollector |
3554 |
occurencesCollector |
3555 |
); |
3555 |
); |
3556 |
|
3556 |
|
3557 |
// Verify with references matches |
3557 |
// Verify with references matches |
3558 |
TestCollector referencesCollector = new TestCollector(); |
3558 |
TestCollector referencesCollector = new TestCollector(); |
3559 |
search(field, REFERENCES, getJavaSearchScopeBugs(), referencesCollector); |
3559 |
search(field, REFERENCES, getJavaSearchScopeBugs(), referencesCollector); |
Lines 3567-3582
Link Here
|
3567 |
public void testBug96761() throws CoreException { |
3567 |
public void testBug96761() throws CoreException { |
3568 |
workingCopies = new ICompilationUnit[1]; |
3568 |
workingCopies = new ICompilationUnit[1]; |
3569 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b96761/Generic.java", |
3569 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b96761/Generic.java", |
3570 |
"package b96761;\n" + |
3570 |
"package b96761;\n" + |
3571 |
"public class Generic<G> {\n" + |
3571 |
"public class Generic<G> {\n" + |
3572 |
" void take(G g) {\n" + |
3572 |
" void take(G g) {\n" + |
3573 |
" }\n" + |
3573 |
" }\n" + |
3574 |
"}\n" + |
3574 |
"}\n" + |
3575 |
"class Impl extends Generic<RuntimeException> {\n" + |
3575 |
"class Impl extends Generic<RuntimeException> {\n" + |
3576 |
" void take(InterruptedException g) {\n" + |
3576 |
" void take(InterruptedException g) {\n" + |
3577 |
" }\n" + |
3577 |
" }\n" + |
3578 |
" void take(RuntimeException g) {\n" + |
3578 |
" void take(RuntimeException g) {\n" + |
3579 |
" }\n" + |
3579 |
" }\n" + |
3580 |
"}" |
3580 |
"}" |
3581 |
); |
3581 |
); |
3582 |
IType type = workingCopies[0].getType("Generic"); |
3582 |
IType type = workingCopies[0].getType("Generic"); |
Lines 3592-3649
Link Here
|
3592 |
public void testBug96763() throws CoreException { |
3592 |
public void testBug96763() throws CoreException { |
3593 |
workingCopies = new ICompilationUnit[1]; |
3593 |
workingCopies = new ICompilationUnit[1]; |
3594 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b96763/Test.java", |
3594 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b96763/Test.java", |
3595 |
"package b96763;\n" + |
3595 |
"package b96763;\n" + |
3596 |
"class Test<T> {\n" + |
3596 |
"class Test<T> {\n" + |
3597 |
" public void first(Exception num) {}\n" + |
3597 |
" public void first(Exception num) {}\n" + |
3598 |
" public void second(T t) {}\n" + |
3598 |
" public void second(T t) {}\n" + |
3599 |
"}\n" + |
3599 |
"}\n" + |
3600 |
"class Sub extends Test<Exception> {\n" + |
3600 |
"class Sub extends Test<Exception> {\n" + |
3601 |
" public void first(Exception num) {}\n" + |
3601 |
" public void first(Exception num) {}\n" + |
3602 |
" public void second(Exception t) {}\n" + |
3602 |
" public void second(Exception t) {}\n" + |
3603 |
"}\n" |
3603 |
"}\n" |
3604 |
); |
3604 |
); |
3605 |
IMethod method = workingCopies[0].getType("Sub").getMethods()[0]; |
3605 |
IMethod method = workingCopies[0].getType("Sub").getMethods()[0]; |
3606 |
search(method, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
3606 |
search(method, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
3607 |
assertSearchResults( |
3607 |
assertSearchResults( |
3608 |
"src/b96763/Test.java void b96763.Test.first(Exception) [first] EXACT_MATCH\n" + |
3608 |
"src/b96763/Test.java void b96763.Test.first(Exception) [first] EXACT_MATCH\n" + |
3609 |
"src/b96763/Test.java void b96763.Sub.first(Exception) [first] EXACT_MATCH" |
3609 |
"src/b96763/Test.java void b96763.Sub.first(Exception) [first] EXACT_MATCH" |
3610 |
); |
3610 |
); |
3611 |
} |
3611 |
} |
3612 |
public void testBug96763b() throws CoreException { |
3612 |
public void testBug96763b() throws CoreException { |
3613 |
workingCopies = new ICompilationUnit[1]; |
3613 |
workingCopies = new ICompilationUnit[1]; |
3614 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b96763/Test.java", |
3614 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b96763/Test.java", |
3615 |
"package b96763;\n" + |
3615 |
"package b96763;\n" + |
3616 |
"class Test<T> {\n" + |
3616 |
"class Test<T> {\n" + |
3617 |
" public void first(Exception num) {}\n" + |
3617 |
" public void first(Exception num) {}\n" + |
3618 |
" public void second(T t) {}\n" + |
3618 |
" public void second(T t) {}\n" + |
3619 |
"}\n" + |
3619 |
"}\n" + |
3620 |
"class Sub extends Test<Exception> {\n" + |
3620 |
"class Sub extends Test<Exception> {\n" + |
3621 |
" public void first(Exception num) {}\n" + |
3621 |
" public void first(Exception num) {}\n" + |
3622 |
" public void second(Exception t) {}\n" + |
3622 |
" public void second(Exception t) {}\n" + |
3623 |
"}\n" |
3623 |
"}\n" |
3624 |
); |
3624 |
); |
3625 |
IMethod method = workingCopies[0].getType("Sub").getMethods()[1]; |
3625 |
IMethod method = workingCopies[0].getType("Sub").getMethods()[1]; |
3626 |
search(method, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
3626 |
search(method, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
3627 |
assertSearchResults( |
3627 |
assertSearchResults( |
3628 |
"src/b96763/Test.java void b96763.Test.second(T) [second] EXACT_MATCH\n" + |
3628 |
"src/b96763/Test.java void b96763.Test.second(T) [second] EXACT_MATCH\n" + |
3629 |
"src/b96763/Test.java void b96763.Sub.second(Exception) [second] EXACT_MATCH" |
3629 |
"src/b96763/Test.java void b96763.Sub.second(Exception) [second] EXACT_MATCH" |
3630 |
); |
3630 |
); |
3631 |
} |
3631 |
} |
3632 |
public void testBug96763c() throws CoreException { |
3632 |
public void testBug96763c() throws CoreException { |
3633 |
workingCopies = new ICompilationUnit[1]; |
3633 |
workingCopies = new ICompilationUnit[1]; |
3634 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b96763/Test.java", |
3634 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b96763/Test.java", |
3635 |
"package b96763;\n" + |
3635 |
"package b96763;\n" + |
3636 |
"public class Test<T> {\n" + |
3636 |
"public class Test<T> {\n" + |
3637 |
" void methodT(T t) {}\n" + |
3637 |
" void methodT(T t) {}\n" + |
3638 |
"}\n" + |
3638 |
"}\n" + |
3639 |
"class Sub<X> extends Test<X> {\n" + |
3639 |
"class Sub<X> extends Test<X> {\n" + |
3640 |
" void methodT(X x) {} // overrides Super#methodT(T)\n" + |
3640 |
" void methodT(X x) {} // overrides Super#methodT(T)\n" + |
3641 |
"}\n" |
3641 |
"}\n" |
3642 |
); |
3642 |
); |
3643 |
IMethod method = workingCopies[0].getType("Sub").getMethods()[0]; |
3643 |
IMethod method = workingCopies[0].getType("Sub").getMethods()[0]; |
3644 |
search(method, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
3644 |
search(method, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE); |
3645 |
assertSearchResults( |
3645 |
assertSearchResults( |
3646 |
"src/b96763/Test.java void b96763.Test.methodT(T) [methodT] EXACT_MATCH\n" + |
3646 |
"src/b96763/Test.java void b96763.Test.methodT(T) [methodT] EXACT_MATCH\n" + |
3647 |
"src/b96763/Test.java void b96763.Sub.methodT(X) [methodT] EXACT_MATCH" |
3647 |
"src/b96763/Test.java void b96763.Sub.methodT(X) [methodT] EXACT_MATCH" |
3648 |
); |
3648 |
); |
3649 |
} |
3649 |
} |
Lines 3656-3683
Link Here
|
3656 |
workingCopies = new ICompilationUnit[1]; |
3656 |
workingCopies = new ICompilationUnit[1]; |
3657 |
this.resultCollector.showRule = true; |
3657 |
this.resultCollector.showRule = true; |
3658 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97087/Bug.java", |
3658 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97087/Bug.java", |
3659 |
"package b97087;\n" + |
3659 |
"package b97087;\n" + |
3660 |
"public class Bug<Type> {\n" + |
3660 |
"public class Bug<Type> {\n" + |
3661 |
" Bug(){}\n" + |
3661 |
" Bug(){}\n" + |
3662 |
"}\n" + |
3662 |
"}\n" + |
3663 |
"class Foo extends Bug<String>{\n" + |
3663 |
"class Foo extends Bug<String>{\n" + |
3664 |
" Foo(){}\n" + |
3664 |
" Foo(){}\n" + |
3665 |
"}\n" + |
3665 |
"}\n" + |
3666 |
"class Bar extends Bug<Exception>{\n" + |
3666 |
"class Bar extends Bug<Exception>{\n" + |
3667 |
" Bar(){super();}\n" + |
3667 |
" Bar(){super();}\n" + |
3668 |
"}" |
3668 |
"}" |
3669 |
); |
3669 |
); |
3670 |
IType type = workingCopies[0].getType("Bug"); |
3670 |
IType type = workingCopies[0].getType("Bug"); |
3671 |
IMethod method= type.getMethods()[0]; |
3671 |
IMethod method= type.getMethods()[0]; |
3672 |
search(method, REFERENCES, SearchPattern.R_ERASURE_MATCH); |
3672 |
search(method, REFERENCES, SearchPattern.R_ERASURE_MATCH); |
3673 |
assertSearchResults( |
3673 |
assertSearchResults( |
3674 |
"src/b97087/Bug.java b97087.Foo() [Foo] EXACT_MATCH\n" + |
3674 |
"src/b97087/Bug.java b97087.Foo() [Foo] EXACT_MATCH\n" + |
3675 |
"src/b97087/Bug.java b97087.Bar() [super();] ERASURE_MATCH" |
3675 |
"src/b97087/Bug.java b97087.Bar() [super();] ERASURE_MATCH" |
3676 |
); |
3676 |
); |
3677 |
} |
3677 |
} |
3678 |
|
3678 |
|
3679 |
/** |
3679 |
/** |
3680 |
* Bug 97120: |
3680 |
* Bug 97120: |
3681 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=97120" |
3681 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=97120" |
3682 |
*/ |
3682 |
*/ |
3683 |
public void testBug97120() throws CoreException { |
3683 |
public void testBug97120() throws CoreException { |
Lines 3697-3703
Link Here
|
3697 |
); |
3697 |
); |
3698 |
assertSearchResults( |
3698 |
assertSearchResults( |
3699 |
"Unexpected all type names", |
3699 |
"Unexpected all type names", |
3700 |
"java.lang.Error\n" + |
3700 |
"java.lang.Error\n" + |
3701 |
"java.lang.Exception", |
3701 |
"java.lang.Exception", |
3702 |
requestor |
3702 |
requestor |
3703 |
); |
3703 |
); |
Lines 3710-3721
Link Here
|
3710 |
public void testBug97322() throws CoreException { |
3710 |
public void testBug97322() throws CoreException { |
3711 |
workingCopies = new ICompilationUnit[1]; |
3711 |
workingCopies = new ICompilationUnit[1]; |
3712 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97322/Test.java", |
3712 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97322/Test.java", |
3713 |
"package b97322;\n" + |
3713 |
"package b97322;\n" + |
3714 |
"class Test {\n" + |
3714 |
"class Test {\n" + |
3715 |
" static void myMethod(int a, String b) {}\n" + |
3715 |
" static void myMethod(int a, String b) {}\n" + |
3716 |
" void call() {\n" + |
3716 |
" void call() {\n" + |
3717 |
" myMethod(12);\n" + |
3717 |
" myMethod(12);\n" + |
3718 |
" }\n" + |
3718 |
" }\n" + |
3719 |
"}" |
3719 |
"}" |
3720 |
); |
3720 |
); |
3721 |
IType type = workingCopies[0].getType("Test"); |
3721 |
IType type = workingCopies[0].getType("Test"); |
Lines 3731-3746
Link Here
|
3731 |
public void testBug97547() throws CoreException { |
3731 |
public void testBug97547() throws CoreException { |
3732 |
workingCopies = new ICompilationUnit[2]; |
3732 |
workingCopies = new ICompilationUnit[2]; |
3733 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97547/IX.java", |
3733 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97547/IX.java", |
3734 |
"package b97547;\n" + |
3734 |
"package b97547;\n" + |
3735 |
"public interface IX {\n" + |
3735 |
"public interface IX {\n" + |
3736 |
" public interface IX1 {}\n" + |
3736 |
" public interface IX1 {}\n" + |
3737 |
"}" |
3737 |
"}" |
3738 |
); |
3738 |
); |
3739 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b97547/X.java", |
3739 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b97547/X.java", |
3740 |
"package b97547;\n" + |
3740 |
"package b97547;\n" + |
3741 |
"import b97547.IX.*;\n" + |
3741 |
"import b97547.IX.*;\n" + |
3742 |
"class X {\n" + |
3742 |
"class X {\n" + |
3743 |
" IX x;\n" + |
3743 |
" IX x;\n" + |
3744 |
"}" |
3744 |
"}" |
3745 |
); |
3745 |
); |
3746 |
IPackageDeclaration[] packages = workingCopies[0].getPackageDeclarations(); |
3746 |
IPackageDeclaration[] packages = workingCopies[0].getPackageDeclarations(); |
Lines 3758-3787
Link Here
|
3758 |
public void testBug97606() throws CoreException { |
3758 |
public void testBug97606() throws CoreException { |
3759 |
workingCopies = new ICompilationUnit[4]; |
3759 |
workingCopies = new ICompilationUnit[4]; |
3760 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/def/L.java", |
3760 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/def/L.java", |
3761 |
"package b97606.pack.def;\n" + |
3761 |
"package b97606.pack.def;\n" + |
3762 |
"public interface L<E> {}\n" |
3762 |
"public interface L<E> {}\n" |
3763 |
); |
3763 |
); |
3764 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/def/LL.java", |
3764 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/def/LL.java", |
3765 |
"package b97606.pack.def;\n" + |
3765 |
"package b97606.pack.def;\n" + |
3766 |
"public class LL<E> implements L<E> {\n" + |
3766 |
"public class LL<E> implements L<E> {\n" + |
3767 |
" public Object clone() {\n" + |
3767 |
" public Object clone() {\n" + |
3768 |
" return null;\n" + |
3768 |
" return null;\n" + |
3769 |
" }\n" + |
3769 |
" }\n" + |
3770 |
"}\n" |
3770 |
"}\n" |
3771 |
); |
3771 |
); |
3772 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/ref/K.java", |
3772 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/ref/K.java", |
3773 |
"package b97606.pack.ref;\n" + |
3773 |
"package b97606.pack.ref;\n" + |
3774 |
"public interface K {}\n" |
3774 |
"public interface K {}\n" |
3775 |
); |
3775 |
); |
3776 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/ref/X.java", |
3776 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/ref/X.java", |
3777 |
"package b97606.pack.ref;\n" + |
3777 |
"package b97606.pack.ref;\n" + |
3778 |
"public class X implements K {\n" + |
3778 |
"public class X implements K {\n" + |
3779 |
" private b97606.pack.def.LL sg;\n" + |
3779 |
" private b97606.pack.def.LL sg;\n" + |
3780 |
" protected synchronized b97606.pack.def.L<K> getSG() {\n" + |
3780 |
" protected synchronized b97606.pack.def.L<K> getSG() {\n" + |
3781 |
" return (sg != null) \n" + |
3781 |
" return (sg != null) \n" + |
3782 |
" ? (b97606.pack.def.L) sg.clone()\n" + |
3782 |
" ? (b97606.pack.def.L) sg.clone()\n" + |
3783 |
" : null;\n" + |
3783 |
" : null;\n" + |
3784 |
" }\n" + |
3784 |
" }\n" + |
3785 |
"}\n" |
3785 |
"}\n" |
3786 |
); |
3786 |
); |
3787 |
IPath rootPath = new Path("/JavaSearchBugs/src/b97606"); |
3787 |
IPath rootPath = new Path("/JavaSearchBugs/src/b97606"); |
Lines 3798-3805
Link Here
|
3798 |
IType type = workingCopies[0].getType("L"); |
3798 |
IType type = workingCopies[0].getType("L"); |
3799 |
search(type, REFERENCES, SearchPattern.R_ERASURE_MATCH); |
3799 |
search(type, REFERENCES, SearchPattern.R_ERASURE_MATCH); |
3800 |
assertSearchResults( |
3800 |
assertSearchResults( |
3801 |
"src/b97606/pack/def/LL.java b97606.pack.def.LL [L] ERASURE_MATCH\n" + |
3801 |
"src/b97606/pack/def/LL.java b97606.pack.def.LL [L] ERASURE_MATCH\n" + |
3802 |
"src/b97606/pack/ref/X.java b97606.pack.def.L<K> b97606.pack.ref.X.getSG() [b97606.pack.def.L] ERASURE_MATCH\n" + |
3802 |
"src/b97606/pack/ref/X.java b97606.pack.def.L<K> b97606.pack.ref.X.getSG() [b97606.pack.def.L] ERASURE_MATCH\n" + |
3803 |
"src/b97606/pack/ref/X.java b97606.pack.def.L<K> b97606.pack.ref.X.getSG() [b97606.pack.def.L] ERASURE_RAW_MATCH" |
3803 |
"src/b97606/pack/ref/X.java b97606.pack.def.L<K> b97606.pack.ref.X.getSG() [b97606.pack.def.L] ERASURE_RAW_MATCH" |
3804 |
); |
3804 |
); |
3805 |
} |
3805 |
} |
Lines 3810-3840
Link Here
|
3810 |
public void testBug97606b() throws CoreException { |
3810 |
public void testBug97606b() throws CoreException { |
3811 |
workingCopies = new ICompilationUnit[4]; |
3811 |
workingCopies = new ICompilationUnit[4]; |
3812 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/def/L.java", |
3812 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/def/L.java", |
3813 |
"package b97606.pack.def;\n" + |
3813 |
"package b97606.pack.def;\n" + |
3814 |
"public interface L<E> {}\n" |
3814 |
"public interface L<E> {}\n" |
3815 |
); |
3815 |
); |
3816 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/def/LL.java", |
3816 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/def/LL.java", |
3817 |
"package b97606.pack.def;\n" + |
3817 |
"package b97606.pack.def;\n" + |
3818 |
"public class LL<E> implements L<E> {\n" + |
3818 |
"public class LL<E> implements L<E> {\n" + |
3819 |
" public Object clone() {\n" + |
3819 |
" public Object clone() {\n" + |
3820 |
" return null;\n" + |
3820 |
" return null;\n" + |
3821 |
" }\n" + |
3821 |
" }\n" + |
3822 |
"}\n" |
3822 |
"}\n" |
3823 |
); |
3823 |
); |
3824 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/ref/K.java", |
3824 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/ref/K.java", |
3825 |
"package b97606.pack.ref;\n" + |
3825 |
"package b97606.pack.ref;\n" + |
3826 |
"public interface K {}\n" |
3826 |
"public interface K {}\n" |
3827 |
); |
3827 |
); |
3828 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/ref/X.java", |
3828 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b97606/pack/ref/X.java", |
3829 |
"package b97606.pack.ref;\n" + |
3829 |
"package b97606.pack.ref;\n" + |
3830 |
"import b97606.pack.def.*;\n" + |
3830 |
"import b97606.pack.def.*;\n" + |
3831 |
"public class X implements K {\n" + |
3831 |
"public class X implements K {\n" + |
3832 |
" private LL sg;\n" + |
3832 |
" private LL sg;\n" + |
3833 |
" protected synchronized L<K> getSG() {\n" + |
3833 |
" protected synchronized L<K> getSG() {\n" + |
3834 |
" return (sg != null) \n" + |
3834 |
" return (sg != null) \n" + |
3835 |
" ? (L) sg.clone()\n" + |
3835 |
" ? (L) sg.clone()\n" + |
3836 |
" : null;\n" + |
3836 |
" : null;\n" + |
3837 |
" }\n" + |
3837 |
" }\n" + |
3838 |
"}\n" |
3838 |
"}\n" |
3839 |
); |
3839 |
); |
3840 |
IPath rootPath = new Path("/JavaSearchBugs/src/b97606"); |
3840 |
IPath rootPath = new Path("/JavaSearchBugs/src/b97606"); |
Lines 3851-3858
Link Here
|
3851 |
IType type = workingCopies[0].getType("L"); |
3851 |
IType type = workingCopies[0].getType("L"); |
3852 |
search(type, REFERENCES, SearchPattern.R_ERASURE_MATCH); |
3852 |
search(type, REFERENCES, SearchPattern.R_ERASURE_MATCH); |
3853 |
assertSearchResults( |
3853 |
assertSearchResults( |
3854 |
"src/b97606/pack/def/LL.java b97606.pack.def.LL [L] ERASURE_MATCH\n" + |
3854 |
"src/b97606/pack/def/LL.java b97606.pack.def.LL [L] ERASURE_MATCH\n" + |
3855 |
"src/b97606/pack/ref/X.java L<K> b97606.pack.ref.X.getSG() [L] ERASURE_MATCH\n" + |
3855 |
"src/b97606/pack/ref/X.java L<K> b97606.pack.ref.X.getSG() [L] ERASURE_MATCH\n" + |
3856 |
"src/b97606/pack/ref/X.java L<K> b97606.pack.ref.X.getSG() [L] ERASURE_RAW_MATCH" |
3856 |
"src/b97606/pack/ref/X.java L<K> b97606.pack.ref.X.getSG() [L] ERASURE_RAW_MATCH" |
3857 |
); |
3857 |
); |
3858 |
} |
3858 |
} |
Lines 3868-3901
Link Here
|
3868 |
public void testBug97614() throws CoreException { |
3868 |
public void testBug97614() throws CoreException { |
3869 |
workingCopies = new ICompilationUnit[3]; |
3869 |
workingCopies = new ICompilationUnit[3]; |
3870 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97614/W.java", |
3870 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b97614/W.java", |
3871 |
"package b97614;\n" + |
3871 |
"package b97614;\n" + |
3872 |
"public class W {\n" + |
3872 |
"public class W {\n" + |
3873 |
" private final Map<String, Y<?, ? extends b97614.X.XX<?, ?>, ? >> m1 = null; // (a)\n" + |
3873 |
" private final Map<String, Y<?, ? extends b97614.X.XX<?, ?>, ? >> m1 = null; // (a)\n" + |
3874 |
" public void getStore(final Object o) {\n" + |
3874 |
" public void getStore(final Object o) {\n" + |
3875 |
" m1.get(o); // (b)\n" + |
3875 |
" m1.get(o); // (b)\n" + |
3876 |
" }\n" + |
3876 |
" }\n" + |
3877 |
"}\n" + |
3877 |
"}\n" + |
3878 |
"interface Map<K, V> {\n" + |
3878 |
"interface Map<K, V> {\n" + |
3879 |
" V get(Object k);\n" + |
3879 |
" V get(Object k);\n" + |
3880 |
"}" |
3880 |
"}" |
3881 |
); |
3881 |
); |
3882 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b97614/X.java", |
3882 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b97614/X.java", |
3883 |
"package b97614;\n" + |
3883 |
"package b97614;\n" + |
3884 |
"import java.io.Serializable;\n" + |
3884 |
"import java.io.Serializable;\n" + |
3885 |
"public interface X<T extends X<T, U, V>, \n" + |
3885 |
"public interface X<T extends X<T, U, V>, \n" + |
3886 |
" U extends X.XX<T, V>, \n" + |
3886 |
" U extends X.XX<T, V>, \n" + |
3887 |
" V extends X.XY> {\n" + |
3887 |
" V extends X.XY> {\n" + |
3888 |
" public interface XX<TT extends X<TT, ?, UU>, \n" + |
3888 |
" public interface XX<TT extends X<TT, ?, UU>, \n" + |
3889 |
" UU extends X.XY> \n" + |
3889 |
" UU extends X.XY> \n" + |
3890 |
" extends Serializable {\n" + |
3890 |
" extends Serializable {\n" + |
3891 |
" }\n" + |
3891 |
" }\n" + |
3892 |
" public interface XY extends Serializable {\n" + |
3892 |
" public interface XY extends Serializable {\n" + |
3893 |
" }\n" + |
3893 |
" }\n" + |
3894 |
"}" |
3894 |
"}" |
3895 |
); |
3895 |
); |
3896 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b97614/Y.java", |
3896 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b97614/Y.java", |
3897 |
"package b97614;\n" + |
3897 |
"package b97614;\n" + |
3898 |
"public class Y<T extends X<T, U, V>, U extends X.XX<T, V>, V extends X.XY> {\n" + |
3898 |
"public class Y<T extends X<T, U, V>, U extends X.XX<T, V>, V extends X.XY> {\n" + |
3899 |
"}\n" |
3899 |
"}\n" |
3900 |
); |
3900 |
); |
3901 |
IField field = workingCopies[0].getType("W").getField("m1"); |
3901 |
IField field = workingCopies[0].getType("W").getField("m1"); |
Lines 3912-3930
Link Here
|
3912 |
public void testBug98378() throws CoreException { |
3912 |
public void testBug98378() throws CoreException { |
3913 |
workingCopies = new ICompilationUnit[2]; |
3913 |
workingCopies = new ICompilationUnit[2]; |
3914 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b98378/X.java", |
3914 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b98378/X.java", |
3915 |
"package b98378;\n" + |
3915 |
"package b98378;\n" + |
3916 |
"public class X implements java.lang.CharSequence {\n" + |
3916 |
"public class X implements java.lang.CharSequence {\n" + |
3917 |
" public int length() {\n" + |
3917 |
" public int length() {\n" + |
3918 |
" return 1;\n" + |
3918 |
" return 1;\n" + |
3919 |
" }\n" + |
3919 |
" }\n" + |
3920 |
"}" |
3920 |
"}" |
3921 |
); |
3921 |
); |
3922 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b98378/Y.java", |
3922 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b98378/Y.java", |
3923 |
"package b98378;\n" + |
3923 |
"package b98378;\n" + |
3924 |
"public class Y {\n" + |
3924 |
"public class Y {\n" + |
3925 |
" public int length() {\n" + |
3925 |
" public int length() {\n" + |
3926 |
" return -1;\n" + |
3926 |
" return -1;\n" + |
3927 |
" }\n" + |
3927 |
" }\n" + |
3928 |
"}\n" |
3928 |
"}\n" |
3929 |
); |
3929 |
); |
3930 |
String jclPath = getExternalJCLPathString("1.5"); |
3930 |
String jclPath = getExternalJCLPathString("1.5"); |
Lines 3932-3957
Link Here
|
3932 |
IMethod method = type.getMethod("length", new String[] {}); |
3932 |
IMethod method = type.getMethod("length", new String[] {}); |
3933 |
search(method, DECLARATIONS, SearchEngine.createHierarchyScope(type, this.wcOwner)); |
3933 |
search(method, DECLARATIONS, SearchEngine.createHierarchyScope(type, this.wcOwner)); |
3934 |
assertSearchResults( |
3934 |
assertSearchResults( |
3935 |
jclPath + " int java.lang.CharSequence.length() EXACT_MATCH\n" + |
3935 |
jclPath + " int java.lang.CharSequence.length() EXACT_MATCH\n" + |
3936 |
jclPath + " int java.lang.String.length() EXACT_MATCH" |
3936 |
jclPath + " int java.lang.String.length() EXACT_MATCH" |
3937 |
); |
3937 |
); |
3938 |
} |
3938 |
} |
3939 |
public void testBug98378b() throws CoreException { |
3939 |
public void testBug98378b() throws CoreException { |
3940 |
workingCopies = new ICompilationUnit[2]; |
3940 |
workingCopies = new ICompilationUnit[2]; |
3941 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b98378/X.java", |
3941 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b98378/X.java", |
3942 |
"package b98378;\n" + |
3942 |
"package b98378;\n" + |
3943 |
"public class X implements java.lang.CharSequence {\n" + |
3943 |
"public class X implements java.lang.CharSequence {\n" + |
3944 |
" public int length() {\n" + |
3944 |
" public int length() {\n" + |
3945 |
" return 1;\n" + |
3945 |
" return 1;\n" + |
3946 |
" }\n" + |
3946 |
" }\n" + |
3947 |
"}" |
3947 |
"}" |
3948 |
); |
3948 |
); |
3949 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b98378/Y.java", |
3949 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b98378/Y.java", |
3950 |
"package b98378;\n" + |
3950 |
"package b98378;\n" + |
3951 |
"public class Y {\n" + |
3951 |
"public class Y {\n" + |
3952 |
" public int length() {\n" + |
3952 |
" public int length() {\n" + |
3953 |
" return -1;\n" + |
3953 |
" return -1;\n" + |
3954 |
" }\n" + |
3954 |
" }\n" + |
3955 |
"}\n" |
3955 |
"}\n" |
3956 |
); |
3956 |
); |
3957 |
String jclPath = getExternalJCLPathString("1.5"); |
3957 |
String jclPath = getExternalJCLPathString("1.5"); |
Lines 3959-3966
Link Here
|
3959 |
IMethod method = type.getMethod("length", new String[] {}); |
3959 |
IMethod method = type.getMethod("length", new String[] {}); |
3960 |
search(method, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE, SearchEngine.createHierarchyScope(type, this.wcOwner)); |
3960 |
search(method, DECLARATIONS|IGNORE_DECLARING_TYPE|IGNORE_RETURN_TYPE, SearchEngine.createHierarchyScope(type, this.wcOwner)); |
3961 |
assertSearchResults( |
3961 |
assertSearchResults( |
3962 |
"src/b98378/X.java int b98378.X.length() [length] EXACT_MATCH\n" + |
3962 |
"src/b98378/X.java int b98378.X.length() [length] EXACT_MATCH\n" + |
3963 |
jclPath + " int java.lang.CharSequence.length() EXACT_MATCH\n" + |
3963 |
jclPath + " int java.lang.CharSequence.length() EXACT_MATCH\n" + |
3964 |
jclPath + " int java.lang.String.length() EXACT_MATCH" |
3964 |
jclPath + " int java.lang.String.length() EXACT_MATCH" |
3965 |
); |
3965 |
); |
3966 |
} |
3966 |
} |
Lines 3972-3988
Link Here
|
3972 |
public void testBug99600() throws CoreException { |
3972 |
public void testBug99600() throws CoreException { |
3973 |
workingCopies = new ICompilationUnit[1]; |
3973 |
workingCopies = new ICompilationUnit[1]; |
3974 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b99600/Test.java", |
3974 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b99600/Test.java", |
3975 |
"package b99600;\n" + |
3975 |
"package b99600;\n" + |
3976 |
"public class Test {\n" + |
3976 |
"public class Test {\n" + |
3977 |
" public class C1 {}\n" + |
3977 |
" public class C1 {}\n" + |
3978 |
" public class C2 {\n" + |
3978 |
" public class C2 {\n" + |
3979 |
" class C3 {\n" + |
3979 |
" class C3 {\n" + |
3980 |
" int foo(C1 c) { return 0; }\n" + |
3980 |
" int foo(C1 c) { return 0; }\n" + |
3981 |
" }\n" + |
3981 |
" }\n" + |
3982 |
" public void foo(C1 c, int i) {\n" + |
3982 |
" public void foo(C1 c, int i) {\n" + |
3983 |
" new C3().foo(c);\n" + |
3983 |
" new C3().foo(c);\n" + |
3984 |
" }\n" + |
3984 |
" }\n" + |
3985 |
" }\n" + |
3985 |
" }\n" + |
3986 |
"}\n" |
3986 |
"}\n" |
3987 |
); |
3987 |
); |
3988 |
IType type = workingCopies[0].getType("Test").getType("C2"); |
3988 |
IType type = workingCopies[0].getType("Test").getType("C2"); |
Lines 3999-4018
Link Here
|
3999 |
public void testBug99903_annotation() throws CoreException { |
3999 |
public void testBug99903_annotation() throws CoreException { |
4000 |
workingCopies = new ICompilationUnit[3]; |
4000 |
workingCopies = new ICompilationUnit[3]; |
4001 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b99903/package-info.java", |
4001 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b99903/package-info.java", |
4002 |
"/**\n" + |
4002 |
"/**\n" + |
4003 |
" * @see Test\n" + |
4003 |
" * @see Test\n" + |
4004 |
" */\n" + |
4004 |
" */\n" + |
4005 |
"@Annot\n" + |
4005 |
"@Annot\n" + |
4006 |
"package b99903;\n" |
4006 |
"package b99903;\n" |
4007 |
); |
4007 |
); |
4008 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b99903/Test.java", |
4008 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b99903/Test.java", |
4009 |
"package b99903;\n" + |
4009 |
"package b99903;\n" + |
4010 |
"public class Test {\n" + |
4010 |
"public class Test {\n" + |
4011 |
"}\n" |
4011 |
"}\n" |
4012 |
); |
4012 |
); |
4013 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b99903/Annot.java", |
4013 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b99903/Annot.java", |
4014 |
"package b99903;\n" + |
4014 |
"package b99903;\n" + |
4015 |
"public @interface Annot {\n" + |
4015 |
"public @interface Annot {\n" + |
4016 |
"}\n" |
4016 |
"}\n" |
4017 |
); |
4017 |
); |
4018 |
IType type = workingCopies[2].getType("Annot"); |
4018 |
IType type = workingCopies[2].getType("Annot"); |
Lines 4024-4043
Link Here
|
4024 |
public void testBug99903_javadoc() throws CoreException { |
4024 |
public void testBug99903_javadoc() throws CoreException { |
4025 |
workingCopies = new ICompilationUnit[3]; |
4025 |
workingCopies = new ICompilationUnit[3]; |
4026 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b99903/package-info.java", |
4026 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b99903/package-info.java", |
4027 |
"/**\n" + |
4027 |
"/**\n" + |
4028 |
" * @see Test\n" + |
4028 |
" * @see Test\n" + |
4029 |
" */\n" + |
4029 |
" */\n" + |
4030 |
"@Annot\n" + |
4030 |
"@Annot\n" + |
4031 |
"package b99903;\n" |
4031 |
"package b99903;\n" |
4032 |
); |
4032 |
); |
4033 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b99903/Test.java", |
4033 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b99903/Test.java", |
4034 |
"package b99903;\n" + |
4034 |
"package b99903;\n" + |
4035 |
"public class Test {\n" + |
4035 |
"public class Test {\n" + |
4036 |
"}\n" |
4036 |
"}\n" |
4037 |
); |
4037 |
); |
4038 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b99903/Annot.java", |
4038 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b99903/Annot.java", |
4039 |
"package b99903;\n" + |
4039 |
"package b99903;\n" + |
4040 |
"public @interface Annot {\n" + |
4040 |
"public @interface Annot {\n" + |
4041 |
"}\n" |
4041 |
"}\n" |
4042 |
); |
4042 |
); |
4043 |
resultCollector.showInsideDoc = true; |
4043 |
resultCollector.showInsideDoc = true; |
Lines 4055-4193
Link Here
|
4055 |
public void testBug100695() throws CoreException { |
4055 |
public void testBug100695() throws CoreException { |
4056 |
workingCopies = new ICompilationUnit[1]; |
4056 |
workingCopies = new ICompilationUnit[1]; |
4057 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4057 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4058 |
"package b100695;\n" + |
4058 |
"package b100695;\n" + |
4059 |
"public class Test {\n" + |
4059 |
"public class Test {\n" + |
4060 |
" Class<Class>[] foo;\n" + |
4060 |
" Class<Class>[] foo;\n" + |
4061 |
" Class<Class>[] bar = foo;\n" + |
4061 |
" Class<Class>[] bar = foo;\n" + |
4062 |
" Test() {\n" + |
4062 |
" Test() {\n" + |
4063 |
" foo = null;\n" + |
4063 |
" foo = null;\n" + |
4064 |
" }\n" + |
4064 |
" }\n" + |
4065 |
"}\n" |
4065 |
"}\n" |
4066 |
); |
4066 |
); |
4067 |
IField field = workingCopies[0].getType("Test").getField("foo"); |
4067 |
IField field = workingCopies[0].getType("Test").getField("foo"); |
4068 |
search(field, REFERENCES); |
4068 |
search(field, REFERENCES); |
4069 |
assertSearchResults( |
4069 |
assertSearchResults( |
4070 |
"src/b100695/Test.java b100695.Test.bar [foo] EXACT_MATCH\n" + |
4070 |
"src/b100695/Test.java b100695.Test.bar [foo] EXACT_MATCH\n" + |
4071 |
"src/b100695/Test.java b100695.Test() [foo] EXACT_MATCH" |
4071 |
"src/b100695/Test.java b100695.Test() [foo] EXACT_MATCH" |
4072 |
); |
4072 |
); |
4073 |
} |
4073 |
} |
4074 |
public void testBug100695a() throws CoreException { |
4074 |
public void testBug100695a() throws CoreException { |
4075 |
workingCopies = new ICompilationUnit[1]; |
4075 |
workingCopies = new ICompilationUnit[1]; |
4076 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4076 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4077 |
"package b100695;\n" + |
4077 |
"package b100695;\n" + |
4078 |
"public class Test {\n" + |
4078 |
"public class Test {\n" + |
4079 |
" Class<Class>[] foo;\n" + |
4079 |
" Class<Class>[] foo;\n" + |
4080 |
" Class<Class>[] bar = foo;\n" + |
4080 |
" Class<Class>[] bar = foo;\n" + |
4081 |
" Test() {\n" + |
4081 |
" Test() {\n" + |
4082 |
" foo = null;\n" + |
4082 |
" foo = null;\n" + |
4083 |
" }\n" + |
4083 |
" }\n" + |
4084 |
"}\n" |
4084 |
"}\n" |
4085 |
); |
4085 |
); |
4086 |
IField field = workingCopies[0].getType("Test").getField("foo"); |
4086 |
IField field = workingCopies[0].getType("Test").getField("foo"); |
4087 |
search(field, ALL_OCCURRENCES); |
4087 |
search(field, ALL_OCCURRENCES); |
4088 |
assertSearchResults( |
4088 |
assertSearchResults( |
4089 |
"src/b100695/Test.java b100695.Test.foo [foo] EXACT_MATCH\n" + |
4089 |
"src/b100695/Test.java b100695.Test.foo [foo] EXACT_MATCH\n" + |
4090 |
"src/b100695/Test.java b100695.Test.bar [foo] EXACT_MATCH\n" + |
4090 |
"src/b100695/Test.java b100695.Test.bar [foo] EXACT_MATCH\n" + |
4091 |
"src/b100695/Test.java b100695.Test() [foo] EXACT_MATCH" |
4091 |
"src/b100695/Test.java b100695.Test() [foo] EXACT_MATCH" |
4092 |
); |
4092 |
); |
4093 |
} |
4093 |
} |
4094 |
public void testBug100695b() throws CoreException { |
4094 |
public void testBug100695b() throws CoreException { |
4095 |
workingCopies = new ICompilationUnit[1]; |
4095 |
workingCopies = new ICompilationUnit[1]; |
4096 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4096 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4097 |
"package b100695;\n" + |
4097 |
"package b100695;\n" + |
4098 |
"public class Test {\n" + |
4098 |
"public class Test {\n" + |
4099 |
" Class<Class> foo;\n" + |
4099 |
" Class<Class> foo;\n" + |
4100 |
" Class<Class> bar = foo;\n" + |
4100 |
" Class<Class> bar = foo;\n" + |
4101 |
" Test() {\n" + |
4101 |
" Test() {\n" + |
4102 |
" foo = null;\n" + |
4102 |
" foo = null;\n" + |
4103 |
" }\n" + |
4103 |
" }\n" + |
4104 |
"}\n" |
4104 |
"}\n" |
4105 |
); |
4105 |
); |
4106 |
IField field = workingCopies[0].getType("Test").getField("foo"); |
4106 |
IField field = workingCopies[0].getType("Test").getField("foo"); |
4107 |
search(field, ALL_OCCURRENCES); |
4107 |
search(field, ALL_OCCURRENCES); |
4108 |
assertSearchResults( |
4108 |
assertSearchResults( |
4109 |
"src/b100695/Test.java b100695.Test.foo [foo] EXACT_MATCH\n" + |
4109 |
"src/b100695/Test.java b100695.Test.foo [foo] EXACT_MATCH\n" + |
4110 |
"src/b100695/Test.java b100695.Test.bar [foo] EXACT_MATCH\n" + |
4110 |
"src/b100695/Test.java b100695.Test.bar [foo] EXACT_MATCH\n" + |
4111 |
"src/b100695/Test.java b100695.Test() [foo] EXACT_MATCH" |
4111 |
"src/b100695/Test.java b100695.Test() [foo] EXACT_MATCH" |
4112 |
); |
4112 |
); |
4113 |
} |
4113 |
} |
4114 |
public void testBug100695c() throws CoreException { |
4114 |
public void testBug100695c() throws CoreException { |
4115 |
workingCopies = new ICompilationUnit[1]; |
4115 |
workingCopies = new ICompilationUnit[1]; |
4116 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4116 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4117 |
"package b100695;\n" + |
4117 |
"package b100695;\n" + |
4118 |
"public class Test {\n" + |
4118 |
"public class Test {\n" + |
4119 |
" Class[] foo;\n" + |
4119 |
" Class[] foo;\n" + |
4120 |
" Class[] bar = foo;\n" + |
4120 |
" Class[] bar = foo;\n" + |
4121 |
" Test() {\n" + |
4121 |
" Test() {\n" + |
4122 |
" foo = null;\n" + |
4122 |
" foo = null;\n" + |
4123 |
" }\n" + |
4123 |
" }\n" + |
4124 |
"}\n" |
4124 |
"}\n" |
4125 |
); |
4125 |
); |
4126 |
IField field = workingCopies[0].getType("Test").getField("foo"); |
4126 |
IField field = workingCopies[0].getType("Test").getField("foo"); |
4127 |
search(field, ALL_OCCURRENCES); |
4127 |
search(field, ALL_OCCURRENCES); |
4128 |
assertSearchResults( |
4128 |
assertSearchResults( |
4129 |
"src/b100695/Test.java b100695.Test.foo [foo] EXACT_MATCH\n" + |
4129 |
"src/b100695/Test.java b100695.Test.foo [foo] EXACT_MATCH\n" + |
4130 |
"src/b100695/Test.java b100695.Test.bar [foo] EXACT_MATCH\n" + |
4130 |
"src/b100695/Test.java b100695.Test.bar [foo] EXACT_MATCH\n" + |
4131 |
"src/b100695/Test.java b100695.Test() [foo] EXACT_MATCH" |
4131 |
"src/b100695/Test.java b100695.Test() [foo] EXACT_MATCH" |
4132 |
); |
4132 |
); |
4133 |
} |
4133 |
} |
4134 |
public void testBug100695d() throws CoreException { |
4134 |
public void testBug100695d() throws CoreException { |
4135 |
workingCopies = new ICompilationUnit[1]; |
4135 |
workingCopies = new ICompilationUnit[1]; |
4136 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4136 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4137 |
"package b100695;\n" + |
4137 |
"package b100695;\n" + |
4138 |
"public class Test {\n" + |
4138 |
"public class Test {\n" + |
4139 |
" public Class<Class>[] foo(Class<Class>[] a) {\n" + |
4139 |
" public Class<Class>[] foo(Class<Class>[] a) {\n" + |
4140 |
" return a;\n" + |
4140 |
" return a;\n" + |
4141 |
" }\n" + |
4141 |
" }\n" + |
4142 |
" void bar() {\n" + |
4142 |
" void bar() {\n" + |
4143 |
" foo(new Class[0]);\n" + |
4143 |
" foo(new Class[0]);\n" + |
4144 |
" }\n" + |
4144 |
" }\n" + |
4145 |
"}\n" |
4145 |
"}\n" |
4146 |
); |
4146 |
); |
4147 |
IMethod method = workingCopies[0].getType("Test").getMethods()[0]; |
4147 |
IMethod method = workingCopies[0].getType("Test").getMethods()[0]; |
4148 |
search(method, ALL_OCCURRENCES); |
4148 |
search(method, ALL_OCCURRENCES); |
4149 |
assertSearchResults( |
4149 |
assertSearchResults( |
4150 |
"src/b100695/Test.java Class<Class>[] b100695.Test.foo(Class<Class>[]) [foo] EXACT_MATCH\n" + |
4150 |
"src/b100695/Test.java Class<Class>[] b100695.Test.foo(Class<Class>[]) [foo] EXACT_MATCH\n" + |
4151 |
"src/b100695/Test.java void b100695.Test.bar() [foo(new Class[0])] EXACT_MATCH" |
4151 |
"src/b100695/Test.java void b100695.Test.bar() [foo(new Class[0])] EXACT_MATCH" |
4152 |
); |
4152 |
); |
4153 |
} |
4153 |
} |
4154 |
public void testBug100695e() throws CoreException { |
4154 |
public void testBug100695e() throws CoreException { |
4155 |
workingCopies = new ICompilationUnit[1]; |
4155 |
workingCopies = new ICompilationUnit[1]; |
4156 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4156 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4157 |
"package b100695;\n" + |
4157 |
"package b100695;\n" + |
4158 |
"public class Test {\n" + |
4158 |
"public class Test {\n" + |
4159 |
" public Class<Class> foo(Class<Class> a) {\n" + |
4159 |
" public Class<Class> foo(Class<Class> a) {\n" + |
4160 |
" return a;\n" + |
4160 |
" return a;\n" + |
4161 |
" }\n" + |
4161 |
" }\n" + |
4162 |
" void bar() {\n" + |
4162 |
" void bar() {\n" + |
4163 |
" foo(null);\n" + |
4163 |
" foo(null);\n" + |
4164 |
" }\n" + |
4164 |
" }\n" + |
4165 |
"}\n" |
4165 |
"}\n" |
4166 |
); |
4166 |
); |
4167 |
IMethod method = workingCopies[0].getType("Test").getMethods()[0]; |
4167 |
IMethod method = workingCopies[0].getType("Test").getMethods()[0]; |
4168 |
search(method, ALL_OCCURRENCES); |
4168 |
search(method, ALL_OCCURRENCES); |
4169 |
assertSearchResults( |
4169 |
assertSearchResults( |
4170 |
"src/b100695/Test.java Class<Class> b100695.Test.foo(Class<Class>) [foo] EXACT_MATCH\n" + |
4170 |
"src/b100695/Test.java Class<Class> b100695.Test.foo(Class<Class>) [foo] EXACT_MATCH\n" + |
4171 |
"src/b100695/Test.java void b100695.Test.bar() [foo(null)] EXACT_MATCH" |
4171 |
"src/b100695/Test.java void b100695.Test.bar() [foo(null)] EXACT_MATCH" |
4172 |
); |
4172 |
); |
4173 |
} |
4173 |
} |
4174 |
public void testBug100695f() throws CoreException { |
4174 |
public void testBug100695f() throws CoreException { |
4175 |
workingCopies = new ICompilationUnit[1]; |
4175 |
workingCopies = new ICompilationUnit[1]; |
4176 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4176 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100695/Test.java", |
4177 |
"package b100695;\n" + |
4177 |
"package b100695;\n" + |
4178 |
"public class Test {\n" + |
4178 |
"public class Test {\n" + |
4179 |
" public Class[] foo(Class[] a) {\n" + |
4179 |
" public Class[] foo(Class[] a) {\n" + |
4180 |
" return a;\n" + |
4180 |
" return a;\n" + |
4181 |
" }\n" + |
4181 |
" }\n" + |
4182 |
" void bar() {\n" + |
4182 |
" void bar() {\n" + |
4183 |
" foo(new Class[0]);\n" + |
4183 |
" foo(new Class[0]);\n" + |
4184 |
" }\n" + |
4184 |
" }\n" + |
4185 |
"}\n" |
4185 |
"}\n" |
4186 |
); |
4186 |
); |
4187 |
IMethod method = workingCopies[0].getType("Test").getMethods()[0]; |
4187 |
IMethod method = workingCopies[0].getType("Test").getMethods()[0]; |
4188 |
search(method, ALL_OCCURRENCES); |
4188 |
search(method, ALL_OCCURRENCES); |
4189 |
assertSearchResults( |
4189 |
assertSearchResults( |
4190 |
"src/b100695/Test.java Class[] b100695.Test.foo(Class[]) [foo] EXACT_MATCH\n" + |
4190 |
"src/b100695/Test.java Class[] b100695.Test.foo(Class[]) [foo] EXACT_MATCH\n" + |
4191 |
"src/b100695/Test.java void b100695.Test.bar() [foo(new Class[0])] EXACT_MATCH" |
4191 |
"src/b100695/Test.java void b100695.Test.bar() [foo(new Class[0])] EXACT_MATCH" |
4192 |
); |
4192 |
); |
4193 |
} |
4193 |
} |
Lines 4199-4212
Link Here
|
4199 |
private void setUpBug100772_HierarchyScope_ClassAndSubclass() throws CoreException { |
4199 |
private void setUpBug100772_HierarchyScope_ClassAndSubclass() throws CoreException { |
4200 |
workingCopies = new ICompilationUnit[1]; |
4200 |
workingCopies = new ICompilationUnit[1]; |
4201 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/Test.java", |
4201 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/Test.java", |
4202 |
"package b100772;\n" + |
4202 |
"package b100772;\n" + |
4203 |
"class Test<T> {\n" + |
4203 |
"class Test<T> {\n" + |
4204 |
" public void foo(T t) {}\n" + |
4204 |
" public void foo(T t) {}\n" + |
4205 |
" public void foo(Class c) {}\n" + |
4205 |
" public void foo(Class c) {}\n" + |
4206 |
"}\n" + |
4206 |
"}\n" + |
4207 |
"class Sub extends Test<String> {\n" + |
4207 |
"class Sub extends Test<String> {\n" + |
4208 |
" public void foo(String str) {}\n" + |
4208 |
" public void foo(String str) {}\n" + |
4209 |
" public void foo(Exception e) {}\n" + |
4209 |
" public void foo(Exception e) {}\n" + |
4210 |
"}\n" |
4210 |
"}\n" |
4211 |
); |
4211 |
); |
4212 |
} |
4212 |
} |
Lines 4216-4222
Link Here
|
4216 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4216 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4217 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4217 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4218 |
assertSearchResults( |
4218 |
assertSearchResults( |
4219 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4219 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4220 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH" |
4220 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH" |
4221 |
); |
4221 |
); |
4222 |
} |
4222 |
} |
Lines 4226-4232
Link Here
|
4226 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4226 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4227 |
search(method, DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4227 |
search(method, DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4228 |
assertSearchResults( |
4228 |
assertSearchResults( |
4229 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4229 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4230 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH" |
4230 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH" |
4231 |
); |
4231 |
); |
4232 |
} |
4232 |
} |
Lines 4245-4251
Link Here
|
4245 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4245 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4246 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4246 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4247 |
assertSearchResults( |
4247 |
assertSearchResults( |
4248 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4248 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4249 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH" |
4249 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH" |
4250 |
); |
4250 |
); |
4251 |
} |
4251 |
} |
Lines 4261-4279
Link Here
|
4261 |
private void setUpBug100772_HierarchyScope_InterfacesAndClass() throws CoreException { |
4261 |
private void setUpBug100772_HierarchyScope_InterfacesAndClass() throws CoreException { |
4262 |
workingCopies = new ICompilationUnit[1]; |
4262 |
workingCopies = new ICompilationUnit[1]; |
4263 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/Test.java", |
4263 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/Test.java", |
4264 |
"package b100772;\n" + |
4264 |
"package b100772;\n" + |
4265 |
"interface Test<T> {\n" + |
4265 |
"interface Test<T> {\n" + |
4266 |
" public void foo(T t);\n" + |
4266 |
" public void foo(T t);\n" + |
4267 |
" public void foo(Class c);\n" + |
4267 |
" public void foo(Class c);\n" + |
4268 |
"}\n" + |
4268 |
"}\n" + |
4269 |
"interface Sub extends Test<String> {\n" + |
4269 |
"interface Sub extends Test<String> {\n" + |
4270 |
" public void foo(String str);\n" + |
4270 |
" public void foo(String str);\n" + |
4271 |
" public void foo(Exception e);\n" + |
4271 |
" public void foo(Exception e);\n" + |
4272 |
"}\n" + |
4272 |
"}\n" + |
4273 |
"class X implements Test<String> {\n" + |
4273 |
"class X implements Test<String> {\n" + |
4274 |
" public void foo(String str) {}\n" + |
4274 |
" public void foo(String str) {}\n" + |
4275 |
" public void foo(Class c) {}\n" + |
4275 |
" public void foo(Class c) {}\n" + |
4276 |
" public void foo(Exception e) {}\n" + |
4276 |
" public void foo(Exception e) {}\n" + |
4277 |
"}\n" |
4277 |
"}\n" |
4278 |
); |
4278 |
); |
4279 |
} |
4279 |
} |
Lines 4283-4290
Link Here
|
4283 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4283 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4284 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4284 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4285 |
assertSearchResults( |
4285 |
assertSearchResults( |
4286 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4286 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4287 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4287 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4288 |
"src/b100772/Test.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4288 |
"src/b100772/Test.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4289 |
); |
4289 |
); |
4290 |
} |
4290 |
} |
Lines 4294-4301
Link Here
|
4294 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4294 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4295 |
search(method, DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4295 |
search(method, DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4296 |
assertSearchResults( |
4296 |
assertSearchResults( |
4297 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4297 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4298 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4298 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4299 |
"src/b100772/Test.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4299 |
"src/b100772/Test.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4300 |
); |
4300 |
); |
4301 |
} |
4301 |
} |
Lines 4305-4311
Link Here
|
4305 |
IMethod method = type.getMethod("foo", new String[] { "QClass;" }); |
4305 |
IMethod method = type.getMethod("foo", new String[] { "QClass;" }); |
4306 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4306 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4307 |
assertSearchResults( |
4307 |
assertSearchResults( |
4308 |
"src/b100772/Test.java void b100772.Test.foo(Class) [foo] EXACT_MATCH\n" + |
4308 |
"src/b100772/Test.java void b100772.Test.foo(Class) [foo] EXACT_MATCH\n" + |
4309 |
"src/b100772/Test.java void b100772.X.foo(Class) [foo] EXACT_MATCH" |
4309 |
"src/b100772/Test.java void b100772.X.foo(Class) [foo] EXACT_MATCH" |
4310 |
); |
4310 |
); |
4311 |
} |
4311 |
} |
Lines 4315-4321
Link Here
|
4315 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4315 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4316 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4316 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4317 |
assertSearchResults( |
4317 |
assertSearchResults( |
4318 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4318 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4319 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH" |
4319 |
"src/b100772/Test.java void b100772.Sub.foo(String) [foo] EXACT_MATCH" |
4320 |
); |
4320 |
); |
4321 |
} |
4321 |
} |
Lines 4334-4340
Link Here
|
4334 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4334 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4335 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4335 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4336 |
assertSearchResults( |
4336 |
assertSearchResults( |
4337 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4337 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4338 |
"src/b100772/Test.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4338 |
"src/b100772/Test.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4339 |
); |
4339 |
); |
4340 |
} |
4340 |
} |
Lines 4344-4350
Link Here
|
4344 |
IMethod method = type.getMethod("foo", new String[] { "QClass;" }); |
4344 |
IMethod method = type.getMethod("foo", new String[] { "QClass;" }); |
4345 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4345 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4346 |
assertSearchResults( |
4346 |
assertSearchResults( |
4347 |
"src/b100772/Test.java void b100772.Test.foo(Class) [foo] EXACT_MATCH\n" + |
4347 |
"src/b100772/Test.java void b100772.Test.foo(Class) [foo] EXACT_MATCH\n" + |
4348 |
"src/b100772/Test.java void b100772.X.foo(Class) [foo] EXACT_MATCH" |
4348 |
"src/b100772/Test.java void b100772.X.foo(Class) [foo] EXACT_MATCH" |
4349 |
); |
4349 |
); |
4350 |
} |
4350 |
} |
Lines 4360-4386
Link Here
|
4360 |
private void setUpBug100772_HierarchyScope_Complex() throws CoreException { |
4360 |
private void setUpBug100772_HierarchyScope_Complex() throws CoreException { |
4361 |
workingCopies = new ICompilationUnit[1]; |
4361 |
workingCopies = new ICompilationUnit[1]; |
4362 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/Test.java", |
4362 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/Test.java", |
4363 |
"package b100772;\n" + |
4363 |
"package b100772;\n" + |
4364 |
"public class X<T> implements IX<T> {\n" + |
4364 |
"public class X<T> implements IX<T> {\n" + |
4365 |
" public void foo(T t) {}\n" + |
4365 |
" public void foo(T t) {}\n" + |
4366 |
"}\n" + |
4366 |
"}\n" + |
4367 |
"class XX extends X<String> {\n" + |
4367 |
"class XX extends X<String> {\n" + |
4368 |
" public void foo(String s) {}\n" + |
4368 |
" public void foo(String s) {}\n" + |
4369 |
" public void foo(Exception e) {}\n" + |
4369 |
" public void foo(Exception e) {}\n" + |
4370 |
"}\n" + |
4370 |
"}\n" + |
4371 |
"interface IX<U> {\n" + |
4371 |
"interface IX<U> {\n" + |
4372 |
" public void foo(U u);\n" + |
4372 |
" public void foo(U u);\n" + |
4373 |
"}\n" + |
4373 |
"}\n" + |
4374 |
"class Y implements IX<String> {\n" + |
4374 |
"class Y implements IX<String> {\n" + |
4375 |
" public void foo(String s) {}\n" + |
4375 |
" public void foo(String s) {}\n" + |
4376 |
" public void foo(Exception e) {}\n" + |
4376 |
" public void foo(Exception e) {}\n" + |
4377 |
"}\n" + |
4377 |
"}\n" + |
4378 |
"interface IXX<V extends Exception> {\n" + |
4378 |
"interface IXX<V extends Exception> {\n" + |
4379 |
" public void foo(V v);\n" + |
4379 |
" public void foo(V v);\n" + |
4380 |
"}\n" + |
4380 |
"}\n" + |
4381 |
"class Z extends Y implements IXX<Exception> {\n" + |
4381 |
"class Z extends Y implements IXX<Exception> {\n" + |
4382 |
" public void foo(String s) {}\n" + |
4382 |
" public void foo(String s) {}\n" + |
4383 |
" public void foo(Exception e) {}\n" + |
4383 |
" public void foo(Exception e) {}\n" + |
4384 |
"}\n" |
4384 |
"}\n" |
4385 |
); |
4385 |
); |
4386 |
} |
4386 |
} |
Lines 4390-4399
Link Here
|
4390 |
IMethod method = type.getMethod("foo", new String[] { "QU;" }); |
4390 |
IMethod method = type.getMethod("foo", new String[] { "QU;" }); |
4391 |
search(method, DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4391 |
search(method, DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4392 |
assertSearchResults( |
4392 |
assertSearchResults( |
4393 |
"src/b100772/Test.java void b100772.X.foo(T) [foo] EXACT_MATCH\n" + |
4393 |
"src/b100772/Test.java void b100772.X.foo(T) [foo] EXACT_MATCH\n" + |
4394 |
"src/b100772/Test.java void b100772.XX.foo(String) [foo] EXACT_MATCH\n" + |
4394 |
"src/b100772/Test.java void b100772.XX.foo(String) [foo] EXACT_MATCH\n" + |
4395 |
"src/b100772/Test.java void b100772.IX.foo(U) [foo] EXACT_MATCH\n" + |
4395 |
"src/b100772/Test.java void b100772.IX.foo(U) [foo] EXACT_MATCH\n" + |
4396 |
"src/b100772/Test.java void b100772.Y.foo(String) [foo] EXACT_MATCH\n" + |
4396 |
"src/b100772/Test.java void b100772.Y.foo(String) [foo] EXACT_MATCH\n" + |
4397 |
"src/b100772/Test.java void b100772.Z.foo(String) [foo] EXACT_MATCH" |
4397 |
"src/b100772/Test.java void b100772.Z.foo(String) [foo] EXACT_MATCH" |
4398 |
); |
4398 |
); |
4399 |
} |
4399 |
} |
Lines 4403-4410
Link Here
|
4403 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4403 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4404 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4404 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4405 |
assertSearchResults( |
4405 |
assertSearchResults( |
4406 |
"src/b100772/Test.java void b100772.IX.foo(U) [foo] EXACT_MATCH\n" + |
4406 |
"src/b100772/Test.java void b100772.IX.foo(U) [foo] EXACT_MATCH\n" + |
4407 |
"src/b100772/Test.java void b100772.Y.foo(String) [foo] EXACT_MATCH\n" + |
4407 |
"src/b100772/Test.java void b100772.Y.foo(String) [foo] EXACT_MATCH\n" + |
4408 |
"src/b100772/Test.java void b100772.Z.foo(String) [foo] EXACT_MATCH" |
4408 |
"src/b100772/Test.java void b100772.Z.foo(String) [foo] EXACT_MATCH" |
4409 |
); |
4409 |
); |
4410 |
} |
4410 |
} |
Lines 4414-4421
Link Here
|
4414 |
IMethod method = type.getMethod("foo", new String[] { "QException;" }); |
4414 |
IMethod method = type.getMethod("foo", new String[] { "QException;" }); |
4415 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4415 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4416 |
assertSearchResults( |
4416 |
assertSearchResults( |
4417 |
"src/b100772/Test.java void b100772.Y.foo(Exception) [foo] EXACT_MATCH\n" + |
4417 |
"src/b100772/Test.java void b100772.Y.foo(Exception) [foo] EXACT_MATCH\n" + |
4418 |
"src/b100772/Test.java void b100772.IXX.foo(V) [foo] EXACT_MATCH\n" + |
4418 |
"src/b100772/Test.java void b100772.IXX.foo(V) [foo] EXACT_MATCH\n" + |
4419 |
"src/b100772/Test.java void b100772.Z.foo(Exception) [foo] EXACT_MATCH" |
4419 |
"src/b100772/Test.java void b100772.Z.foo(Exception) [foo] EXACT_MATCH" |
4420 |
); |
4420 |
); |
4421 |
} |
4421 |
} |
Lines 4425-4449
Link Here
|
4425 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4425 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4426 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4426 |
search(method, UI_DECLARATIONS, SearchEngine.createHierarchyScope(type)); |
4427 |
assertSearchResults( |
4427 |
assertSearchResults( |
4428 |
"src/b100772/Test.java void b100772.X.foo(T) [foo] EXACT_MATCH\n" + |
4428 |
"src/b100772/Test.java void b100772.X.foo(T) [foo] EXACT_MATCH\n" + |
4429 |
"src/b100772/Test.java void b100772.XX.foo(String) [foo] EXACT_MATCH\n" + |
4429 |
"src/b100772/Test.java void b100772.XX.foo(String) [foo] EXACT_MATCH\n" + |
4430 |
"src/b100772/Test.java void b100772.IX.foo(U) [foo] EXACT_MATCH" |
4430 |
"src/b100772/Test.java void b100772.IX.foo(U) [foo] EXACT_MATCH" |
4431 |
); |
4431 |
); |
4432 |
} |
4432 |
} |
4433 |
private void setUpBug100772_ProjectScope_ClassAndSubclass() throws CoreException { |
4433 |
private void setUpBug100772_ProjectScope_ClassAndSubclass() throws CoreException { |
4434 |
workingCopies = new ICompilationUnit[2]; |
4434 |
workingCopies = new ICompilationUnit[2]; |
4435 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/Test.java", |
4435 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/Test.java", |
4436 |
"package b100772;\n" + |
4436 |
"package b100772;\n" + |
4437 |
"class Test<T> {\n" + |
4437 |
"class Test<T> {\n" + |
4438 |
" public void foo(T t) {}\n" + |
4438 |
" public void foo(T t) {}\n" + |
4439 |
" public void foo(Class c) {}\n" + |
4439 |
" public void foo(Class c) {}\n" + |
4440 |
"}\n" |
4440 |
"}\n" |
4441 |
); |
4441 |
); |
4442 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b100772/Sub.java", |
4442 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b100772/Sub.java", |
4443 |
"package b100772;\n" + |
4443 |
"package b100772;\n" + |
4444 |
"class Sub extends Test<String> {\n" + |
4444 |
"class Sub extends Test<String> {\n" + |
4445 |
" public void foo(String str) {}\n" + |
4445 |
" public void foo(String str) {}\n" + |
4446 |
" public void foo(Exception e) {}\n" + |
4446 |
" public void foo(Exception e) {}\n" + |
4447 |
"}\n" |
4447 |
"}\n" |
4448 |
); |
4448 |
); |
4449 |
} |
4449 |
} |
Lines 4453-4459
Link Here
|
4453 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4453 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4454 |
search(method, UI_DECLARATIONS); |
4454 |
search(method, UI_DECLARATIONS); |
4455 |
assertSearchResults( |
4455 |
assertSearchResults( |
4456 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4456 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4457 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH" |
4457 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH" |
4458 |
); |
4458 |
); |
4459 |
} |
4459 |
} |
Lines 4463-4469
Link Here
|
4463 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4463 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4464 |
search(method, DECLARATIONS); |
4464 |
search(method, DECLARATIONS); |
4465 |
assertSearchResults( |
4465 |
assertSearchResults( |
4466 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4466 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4467 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH" |
4467 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH" |
4468 |
); |
4468 |
); |
4469 |
} |
4469 |
} |
Lines 4482-4488
Link Here
|
4482 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4482 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4483 |
search(method, UI_DECLARATIONS); |
4483 |
search(method, UI_DECLARATIONS); |
4484 |
assertSearchResults( |
4484 |
assertSearchResults( |
4485 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4485 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4486 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH" |
4486 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH" |
4487 |
); |
4487 |
); |
4488 |
} |
4488 |
} |
Lines 4498-4522
Link Here
|
4498 |
private void setUpBug100772_ProjectScope_InterfacesAndClass() throws CoreException { |
4498 |
private void setUpBug100772_ProjectScope_InterfacesAndClass() throws CoreException { |
4499 |
workingCopies = new ICompilationUnit[3]; |
4499 |
workingCopies = new ICompilationUnit[3]; |
4500 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/Test.java", |
4500 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/Test.java", |
4501 |
"package b100772;\n" + |
4501 |
"package b100772;\n" + |
4502 |
"interface Test<T> {\n" + |
4502 |
"interface Test<T> {\n" + |
4503 |
" public void foo(T t);\n" + |
4503 |
" public void foo(T t);\n" + |
4504 |
" public void foo(Class c);\n" + |
4504 |
" public void foo(Class c);\n" + |
4505 |
"}\n" |
4505 |
"}\n" |
4506 |
); |
4506 |
); |
4507 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b100772/Sub.java", |
4507 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b100772/Sub.java", |
4508 |
"package b100772;\n" + |
4508 |
"package b100772;\n" + |
4509 |
"interface Sub extends Test<String> {\n" + |
4509 |
"interface Sub extends Test<String> {\n" + |
4510 |
" public void foo(String str);\n" + |
4510 |
" public void foo(String str);\n" + |
4511 |
" public void foo(Exception e);\n" + |
4511 |
" public void foo(Exception e);\n" + |
4512 |
"}\n" |
4512 |
"}\n" |
4513 |
); |
4513 |
); |
4514 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b100772/X.java", |
4514 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b100772/X.java", |
4515 |
"package b100772;\n" + |
4515 |
"package b100772;\n" + |
4516 |
"class X implements Test<String> {\n" + |
4516 |
"class X implements Test<String> {\n" + |
4517 |
" public void foo(String str) {}\n" + |
4517 |
" public void foo(String str) {}\n" + |
4518 |
" public void foo(Class c) {}\n" + |
4518 |
" public void foo(Class c) {}\n" + |
4519 |
" public void foo(Exception e) {}\n" + |
4519 |
" public void foo(Exception e) {}\n" + |
4520 |
"}\n" |
4520 |
"}\n" |
4521 |
); |
4521 |
); |
4522 |
} |
4522 |
} |
Lines 4526-4533
Link Here
|
4526 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4526 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4527 |
search(method, UI_DECLARATIONS); |
4527 |
search(method, UI_DECLARATIONS); |
4528 |
assertSearchResults( |
4528 |
assertSearchResults( |
4529 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4529 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4530 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4530 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4531 |
"src/b100772/X.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4531 |
"src/b100772/X.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4532 |
); |
4532 |
); |
4533 |
} |
4533 |
} |
Lines 4537-4544
Link Here
|
4537 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4537 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4538 |
search(method, DECLARATIONS); |
4538 |
search(method, DECLARATIONS); |
4539 |
assertSearchResults( |
4539 |
assertSearchResults( |
4540 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4540 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4541 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4541 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4542 |
"src/b100772/X.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4542 |
"src/b100772/X.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4543 |
); |
4543 |
); |
4544 |
} |
4544 |
} |
Lines 4548-4554
Link Here
|
4548 |
IMethod method = type.getMethod("foo", new String[] { "QClass;" }); |
4548 |
IMethod method = type.getMethod("foo", new String[] { "QClass;" }); |
4549 |
search(method, UI_DECLARATIONS); |
4549 |
search(method, UI_DECLARATIONS); |
4550 |
assertSearchResults( |
4550 |
assertSearchResults( |
4551 |
"src/b100772/Test.java void b100772.Test.foo(Class) [foo] EXACT_MATCH\n" + |
4551 |
"src/b100772/Test.java void b100772.Test.foo(Class) [foo] EXACT_MATCH\n" + |
4552 |
"src/b100772/X.java void b100772.X.foo(Class) [foo] EXACT_MATCH" |
4552 |
"src/b100772/X.java void b100772.X.foo(Class) [foo] EXACT_MATCH" |
4553 |
); |
4553 |
); |
4554 |
} |
4554 |
} |
Lines 4558-4565
Link Here
|
4558 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4558 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4559 |
search(method, UI_DECLARATIONS); |
4559 |
search(method, UI_DECLARATIONS); |
4560 |
assertSearchResults( |
4560 |
assertSearchResults( |
4561 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4561 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4562 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4562 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4563 |
"src/b100772/X.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4563 |
"src/b100772/X.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4564 |
); |
4564 |
); |
4565 |
} |
4565 |
} |
Lines 4569-4575
Link Here
|
4569 |
IMethod method = type.getMethod("foo", new String[] { "QException;" }); |
4569 |
IMethod method = type.getMethod("foo", new String[] { "QException;" }); |
4570 |
search(method, UI_DECLARATIONS); |
4570 |
search(method, UI_DECLARATIONS); |
4571 |
assertSearchResults( |
4571 |
assertSearchResults( |
4572 |
"src/b100772/Sub.java void b100772.Sub.foo(Exception) [foo] EXACT_MATCH\n" + |
4572 |
"src/b100772/Sub.java void b100772.Sub.foo(Exception) [foo] EXACT_MATCH\n" + |
4573 |
"src/b100772/X.java void b100772.X.foo(Exception) [foo] EXACT_MATCH" |
4573 |
"src/b100772/X.java void b100772.X.foo(Exception) [foo] EXACT_MATCH" |
4574 |
); |
4574 |
); |
4575 |
} |
4575 |
} |
Lines 4579-4586
Link Here
|
4579 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4579 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4580 |
search(method, UI_DECLARATIONS); |
4580 |
search(method, UI_DECLARATIONS); |
4581 |
assertSearchResults( |
4581 |
assertSearchResults( |
4582 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4582 |
"src/b100772/Sub.java void b100772.Sub.foo(String) [foo] EXACT_MATCH\n" + |
4583 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4583 |
"src/b100772/Test.java void b100772.Test.foo(T) [foo] EXACT_MATCH\n" + |
4584 |
"src/b100772/X.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4584 |
"src/b100772/X.java void b100772.X.foo(String) [foo] EXACT_MATCH" |
4585 |
); |
4585 |
); |
4586 |
} |
4586 |
} |
Lines 4590-4596
Link Here
|
4590 |
IMethod method = type.getMethod("foo", new String[] { "QClass;" }); |
4590 |
IMethod method = type.getMethod("foo", new String[] { "QClass;" }); |
4591 |
search(method, UI_DECLARATIONS); |
4591 |
search(method, UI_DECLARATIONS); |
4592 |
assertSearchResults( |
4592 |
assertSearchResults( |
4593 |
"src/b100772/Test.java void b100772.Test.foo(Class) [foo] EXACT_MATCH\n" + |
4593 |
"src/b100772/Test.java void b100772.Test.foo(Class) [foo] EXACT_MATCH\n" + |
4594 |
"src/b100772/X.java void b100772.X.foo(Class) [foo] EXACT_MATCH" |
4594 |
"src/b100772/X.java void b100772.X.foo(Class) [foo] EXACT_MATCH" |
4595 |
); |
4595 |
); |
4596 |
} |
4596 |
} |
Lines 4600-4648
Link Here
|
4600 |
IMethod method = type.getMethod("foo", new String[] { "QException;" }); |
4600 |
IMethod method = type.getMethod("foo", new String[] { "QException;" }); |
4601 |
search(method, UI_DECLARATIONS); |
4601 |
search(method, UI_DECLARATIONS); |
4602 |
assertSearchResults( |
4602 |
assertSearchResults( |
4603 |
"src/b100772/Sub.java void b100772.Sub.foo(Exception) [foo] EXACT_MATCH\n" + |
4603 |
"src/b100772/Sub.java void b100772.Sub.foo(Exception) [foo] EXACT_MATCH\n" + |
4604 |
"src/b100772/X.java void b100772.X.foo(Exception) [foo] EXACT_MATCH" |
4604 |
"src/b100772/X.java void b100772.X.foo(Exception) [foo] EXACT_MATCH" |
4605 |
); |
4605 |
); |
4606 |
} |
4606 |
} |
4607 |
private void setUpBug100772_ProjectScope_Complex() throws CoreException { |
4607 |
private void setUpBug100772_ProjectScope_Complex() throws CoreException { |
4608 |
workingCopies = new ICompilationUnit[6]; |
4608 |
workingCopies = new ICompilationUnit[6]; |
4609 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/X.java", |
4609 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b100772/X.java", |
4610 |
"package b100772;\n" + |
4610 |
"package b100772;\n" + |
4611 |
"public class X<T> implements IX<T> {\n" + |
4611 |
"public class X<T> implements IX<T> {\n" + |
4612 |
" public void foo(T t) {}\n" + |
4612 |
" public void foo(T t) {}\n" + |
4613 |
"}\n" |
4613 |
"}\n" |
4614 |
); |
4614 |
); |
4615 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b100772/XX.java", |
4615 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b100772/XX.java", |
4616 |
"package b100772;\n" + |
4616 |
"package b100772;\n" + |
4617 |
"class XX extends X<String> {\n" + |
4617 |
"class XX extends X<String> {\n" + |
4618 |
" public void foo(String s) {}\n" + |
4618 |
" public void foo(String s) {}\n" + |
4619 |
" public void foo(Exception e) {}\n" + |
4619 |
" public void foo(Exception e) {}\n" + |
4620 |
"}\n" |
4620 |
"}\n" |
4621 |
); |
4621 |
); |
4622 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b100772/IX.java", |
4622 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b100772/IX.java", |
4623 |
"package b100772;\n" + |
4623 |
"package b100772;\n" + |
4624 |
"interface IX<U> {\n" + |
4624 |
"interface IX<U> {\n" + |
4625 |
" public void foo(U u);\n" + |
4625 |
" public void foo(U u);\n" + |
4626 |
"}\n" |
4626 |
"}\n" |
4627 |
); |
4627 |
); |
4628 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b100772/Y.java", |
4628 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b100772/Y.java", |
4629 |
"package b100772;\n" + |
4629 |
"package b100772;\n" + |
4630 |
"class Y implements IX<String> {\n" + |
4630 |
"class Y implements IX<String> {\n" + |
4631 |
" public void foo(String s) {}\n" + |
4631 |
" public void foo(String s) {}\n" + |
4632 |
" public void foo(Exception e) {}\n" + |
4632 |
" public void foo(Exception e) {}\n" + |
4633 |
"}\n" |
4633 |
"}\n" |
4634 |
); |
4634 |
); |
4635 |
workingCopies[4] = getWorkingCopy("/JavaSearchBugs/src/b100772/IXX.java", |
4635 |
workingCopies[4] = getWorkingCopy("/JavaSearchBugs/src/b100772/IXX.java", |
4636 |
"package b100772;\n" + |
4636 |
"package b100772;\n" + |
4637 |
"interface IXX<V extends Exception> {\n" + |
4637 |
"interface IXX<V extends Exception> {\n" + |
4638 |
" public void foo(V v);\n" + |
4638 |
" public void foo(V v);\n" + |
4639 |
"}\n" |
4639 |
"}\n" |
4640 |
); |
4640 |
); |
4641 |
workingCopies[5] = getWorkingCopy("/JavaSearchBugs/src/b100772/Z.java", |
4641 |
workingCopies[5] = getWorkingCopy("/JavaSearchBugs/src/b100772/Z.java", |
4642 |
"package b100772;\n" + |
4642 |
"package b100772;\n" + |
4643 |
"class Z extends Y implements IXX<Exception> {\n" + |
4643 |
"class Z extends Y implements IXX<Exception> {\n" + |
4644 |
" public void foo(String s) {}\n" + |
4644 |
" public void foo(String s) {}\n" + |
4645 |
" public void foo(Exception e) {}\n" + |
4645 |
" public void foo(Exception e) {}\n" + |
4646 |
"}\n" |
4646 |
"}\n" |
4647 |
); |
4647 |
); |
4648 |
} |
4648 |
} |
Lines 4652-4661
Link Here
|
4652 |
IMethod method = type.getMethod("foo", new String[] { "QU;" }); |
4652 |
IMethod method = type.getMethod("foo", new String[] { "QU;" }); |
4653 |
search(method, DECLARATIONS); |
4653 |
search(method, DECLARATIONS); |
4654 |
assertSearchResults( |
4654 |
assertSearchResults( |
4655 |
"src/b100772/IX.java void b100772.IX.foo(U) [foo] EXACT_MATCH\n" + |
4655 |
"src/b100772/IX.java void b100772.IX.foo(U) [foo] EXACT_MATCH\n" + |
4656 |
"src/b100772/X.java void b100772.X.foo(T) [foo] EXACT_MATCH\n" + |
4656 |
"src/b100772/X.java void b100772.X.foo(T) [foo] EXACT_MATCH\n" + |
4657 |
"src/b100772/XX.java void b100772.XX.foo(String) [foo] EXACT_MATCH\n" + |
4657 |
"src/b100772/XX.java void b100772.XX.foo(String) [foo] EXACT_MATCH\n" + |
4658 |
"src/b100772/Y.java void b100772.Y.foo(String) [foo] EXACT_MATCH\n" + |
4658 |
"src/b100772/Y.java void b100772.Y.foo(String) [foo] EXACT_MATCH\n" + |
4659 |
"src/b100772/Z.java void b100772.Z.foo(String) [foo] EXACT_MATCH" |
4659 |
"src/b100772/Z.java void b100772.Z.foo(String) [foo] EXACT_MATCH" |
4660 |
); |
4660 |
); |
4661 |
} |
4661 |
} |
Lines 4665-4673
Link Here
|
4665 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4665 |
IMethod method = type.getMethod("foo", new String[] { "QString;" }); |
4666 |
search(method, UI_DECLARATIONS); |
4666 |
search(method, UI_DECLARATIONS); |
4667 |
assertSearchResults( |
4667 |
assertSearchResults( |
4668 |
"src/b100772/IX.java void b100772.IX.foo(U) [foo] EXACT_MATCH\n" + |
4668 |
"src/b100772/IX.java void b100772.IX.foo(U) [foo] EXACT_MATCH\n" + |
4669 |
"src/b100772/XX.java void b100772.XX.foo(String) [foo] EXACT_MATCH\n" + |
4669 |
"src/b100772/XX.java void b100772.XX.foo(String) [foo] EXACT_MATCH\n" + |
4670 |
"src/b100772/Y.java void b100772.Y.foo(String) [foo] EXACT_MATCH\n" + |
4670 |
"src/b100772/Y.java void b100772.Y.foo(String) [foo] EXACT_MATCH\n" + |
4671 |
"src/b100772/Z.java void b100772.Z.foo(String) [foo] EXACT_MATCH" |
4671 |
"src/b100772/Z.java void b100772.Z.foo(String) [foo] EXACT_MATCH" |
4672 |
); |
4672 |
); |
4673 |
} |
4673 |
} |
Lines 4677-4685
Link Here
|
4677 |
IMethod method = type.getMethod("foo", new String[] { "QException;" }); |
4677 |
IMethod method = type.getMethod("foo", new String[] { "QException;" }); |
4678 |
search(method, UI_DECLARATIONS); |
4678 |
search(method, UI_DECLARATIONS); |
4679 |
assertSearchResults( |
4679 |
assertSearchResults( |
4680 |
"src/b100772/IXX.java void b100772.IXX.foo(V) [foo] EXACT_MATCH\n" + |
4680 |
"src/b100772/IXX.java void b100772.IXX.foo(V) [foo] EXACT_MATCH\n" + |
4681 |
"src/b100772/XX.java void b100772.XX.foo(Exception) [foo] EXACT_MATCH\n" + |
4681 |
"src/b100772/XX.java void b100772.XX.foo(Exception) [foo] EXACT_MATCH\n" + |
4682 |
"src/b100772/Y.java void b100772.Y.foo(Exception) [foo] EXACT_MATCH\n" + |
4682 |
"src/b100772/Y.java void b100772.Y.foo(Exception) [foo] EXACT_MATCH\n" + |
4683 |
"src/b100772/Z.java void b100772.Z.foo(Exception) [foo] EXACT_MATCH" |
4683 |
"src/b100772/Z.java void b100772.Z.foo(Exception) [foo] EXACT_MATCH" |
4684 |
); |
4684 |
); |
4685 |
} |
4685 |
} |
Lines 4689-4696
Link Here
|
4689 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4689 |
IMethod method = type.getMethod("foo", new String[] { "QT;" }); |
4690 |
search(method, UI_DECLARATIONS); |
4690 |
search(method, UI_DECLARATIONS); |
4691 |
assertSearchResults( |
4691 |
assertSearchResults( |
4692 |
"src/b100772/X.java void b100772.X.foo(T) [foo] EXACT_MATCH\n" + |
4692 |
"src/b100772/X.java void b100772.X.foo(T) [foo] EXACT_MATCH\n" + |
4693 |
"src/b100772/IX.java void b100772.IX.foo(U) [foo] EXACT_MATCH\n" + |
4693 |
"src/b100772/IX.java void b100772.IX.foo(U) [foo] EXACT_MATCH\n" + |
4694 |
"src/b100772/XX.java void b100772.XX.foo(String) [foo] EXACT_MATCH" |
4694 |
"src/b100772/XX.java void b100772.XX.foo(String) [foo] EXACT_MATCH" |
4695 |
); |
4695 |
); |
4696 |
} |
4696 |
} |
Lines 4722-4753
Link Here
|
4722 |
private void setUpBug110060_TypePattern() throws CoreException { |
4722 |
private void setUpBug110060_TypePattern() throws CoreException { |
4723 |
workingCopies = new ICompilationUnit[5]; |
4723 |
workingCopies = new ICompilationUnit[5]; |
4724 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110060/AA.java", |
4724 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110060/AA.java", |
4725 |
"package b110060;\n" + |
4725 |
"package b110060;\n" + |
4726 |
"public class AA {\n" + |
4726 |
"public class AA {\n" + |
4727 |
"}\n" |
4727 |
"}\n" |
4728 |
); |
4728 |
); |
4729 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b110060/AAxx.java", |
4729 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b110060/AAxx.java", |
4730 |
"package b110060;\n" + |
4730 |
"package b110060;\n" + |
4731 |
"public class AAxx {\n" + |
4731 |
"public class AAxx {\n" + |
4732 |
"}\n" |
4732 |
"}\n" |
4733 |
); |
4733 |
); |
4734 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b110060/AxxAyy.java", |
4734 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b110060/AxxAyy.java", |
4735 |
"package b110060;\n" + |
4735 |
"package b110060;\n" + |
4736 |
"public class AxxAyy {\n" + |
4736 |
"public class AxxAyy {\n" + |
4737 |
"}\n" |
4737 |
"}\n" |
4738 |
); |
4738 |
); |
4739 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b110060/AxA.java", |
4739 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b110060/AxA.java", |
4740 |
"package b110060;\n" + |
4740 |
"package b110060;\n" + |
4741 |
"public class AxA {\n" + |
4741 |
"public class AxA {\n" + |
4742 |
"}\n" |
4742 |
"}\n" |
4743 |
); |
4743 |
); |
4744 |
workingCopies[4] = getWorkingCopy("/JavaSearchBugs/src/b110060/Test.java", |
4744 |
workingCopies[4] = getWorkingCopy("/JavaSearchBugs/src/b110060/Test.java", |
4745 |
"package b110060;\n" + |
4745 |
"package b110060;\n" + |
4746 |
"public class Test {\n" + |
4746 |
"public class Test {\n" + |
4747 |
" AA aa;\n" + |
4747 |
" AA aa;\n" + |
4748 |
" AAxx aaxx;\n" + |
4748 |
" AAxx aaxx;\n" + |
4749 |
" AxA axa;\n" + |
4749 |
" AxA axa;\n" + |
4750 |
" AxxAyy axxayy;\n" + |
4750 |
" AxxAyy axxayy;\n" + |
4751 |
"}\n" |
4751 |
"}\n" |
4752 |
); |
4752 |
); |
4753 |
} |
4753 |
} |
Lines 4755-4763
Link Here
|
4755 |
setUpBug110060_TypePattern(); |
4755 |
setUpBug110060_TypePattern(); |
4756 |
search("AA", TYPE, REFERENCES, SearchPattern.R_CAMELCASE_MATCH); |
4756 |
search("AA", TYPE, REFERENCES, SearchPattern.R_CAMELCASE_MATCH); |
4757 |
assertSearchResults( |
4757 |
assertSearchResults( |
4758 |
"src/b110060/Test.java b110060.Test.aa [AA] EXACT_MATCH\n" + |
4758 |
"src/b110060/Test.java b110060.Test.aa [AA] EXACT_MATCH\n" + |
4759 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH\n" + |
4759 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH\n" + |
4760 |
"src/b110060/Test.java b110060.Test.axa [AxA] EXACT_MATCH\n" + |
4760 |
"src/b110060/Test.java b110060.Test.axa [AxA] EXACT_MATCH\n" + |
4761 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4761 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4762 |
); |
4762 |
); |
4763 |
} |
4763 |
} |
Lines 4766-4778
Link Here
|
4766 |
setUpBug110060_TypePattern(); |
4766 |
setUpBug110060_TypePattern(); |
4767 |
search("AA", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4767 |
search("AA", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4768 |
assertSearchResults( |
4768 |
assertSearchResults( |
4769 |
"src/b110060/AA.java b110060.AA [AA] EXACT_MATCH\n" + |
4769 |
"src/b110060/AA.java b110060.AA [AA] EXACT_MATCH\n" + |
4770 |
"src/b110060/AAxx.java b110060.AAxx [AAxx] EXACT_MATCH\n" + |
4770 |
"src/b110060/AAxx.java b110060.AAxx [AAxx] EXACT_MATCH\n" + |
4771 |
"src/b110060/AxA.java b110060.AxA [AxA] EXACT_MATCH\n" + |
4771 |
"src/b110060/AxA.java b110060.AxA [AxA] EXACT_MATCH\n" + |
4772 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4772 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4773 |
"src/b110060/Test.java b110060.Test.aa [AA] EXACT_MATCH\n" + |
4773 |
"src/b110060/Test.java b110060.Test.aa [AA] EXACT_MATCH\n" + |
4774 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH\n" + |
4774 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH\n" + |
4775 |
"src/b110060/Test.java b110060.Test.axa [AxA] EXACT_MATCH\n" + |
4775 |
"src/b110060/Test.java b110060.Test.axa [AxA] EXACT_MATCH\n" + |
4776 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4776 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4777 |
); |
4777 |
); |
4778 |
} |
4778 |
} |
Lines 4781-4787
Link Here
|
4781 |
setUpBug110060_TypePattern(); |
4781 |
setUpBug110060_TypePattern(); |
4782 |
search("AAx", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4782 |
search("AAx", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4783 |
assertSearchResults( |
4783 |
assertSearchResults( |
4784 |
"src/b110060/AAxx.java b110060.AAxx [AAxx] EXACT_MATCH\n" + |
4784 |
"src/b110060/AAxx.java b110060.AAxx [AAxx] EXACT_MATCH\n" + |
4785 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH" |
4785 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH" |
4786 |
); |
4786 |
); |
4787 |
} |
4787 |
} |
Lines 4790-4796
Link Here
|
4790 |
setUpBug110060_TypePattern(); |
4790 |
setUpBug110060_TypePattern(); |
4791 |
search("Axx", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4791 |
search("Axx", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4792 |
assertSearchResults( |
4792 |
assertSearchResults( |
4793 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4793 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4794 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4794 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4795 |
); |
4795 |
); |
4796 |
} |
4796 |
} |
Lines 4799-4807
Link Here
|
4799 |
setUpBug110060_TypePattern(); |
4799 |
setUpBug110060_TypePattern(); |
4800 |
search("Ax", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4800 |
search("Ax", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4801 |
assertSearchResults( |
4801 |
assertSearchResults( |
4802 |
"src/b110060/AxA.java b110060.AxA [AxA] EXACT_MATCH\n" + |
4802 |
"src/b110060/AxA.java b110060.AxA [AxA] EXACT_MATCH\n" + |
4803 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4803 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4804 |
"src/b110060/Test.java b110060.Test.axa [AxA] EXACT_MATCH\n" + |
4804 |
"src/b110060/Test.java b110060.Test.axa [AxA] EXACT_MATCH\n" + |
4805 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4805 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4806 |
); |
4806 |
); |
4807 |
} |
4807 |
} |
Lines 4810-4823
Link Here
|
4810 |
setUpBug110060_TypePattern(); |
4810 |
setUpBug110060_TypePattern(); |
4811 |
search("A*A*", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4811 |
search("A*A*", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4812 |
assertSearchResults( |
4812 |
assertSearchResults( |
4813 |
"src/b110060/AA.java b110060.AA [AA] EXACT_MATCH\n" + |
4813 |
"src/b110060/AA.java b110060.AA [AA] EXACT_MATCH\n" + |
4814 |
"src/b110060/AAxx.java b110060.AAxx [AAxx] EXACT_MATCH\n" + |
4814 |
"src/b110060/AAxx.java b110060.AAxx [AAxx] EXACT_MATCH\n" + |
4815 |
"src/b110060/AxA.java b110060.AxA [AxA] EXACT_MATCH\n" + |
4815 |
"src/b110060/AxA.java b110060.AxA [AxA] EXACT_MATCH\n" + |
4816 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4816 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4817 |
"src/b110060/Test.java b110060.Test.aa [AA] EXACT_MATCH\n" + |
4817 |
"src/b110060/Test.java b110060.Test.aa [AA] EXACT_MATCH\n" + |
4818 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH\n" + |
4818 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH\n" + |
4819 |
"src/b110060/Test.java b110060.Test.axa [AxA] EXACT_MATCH\n" + |
4819 |
"src/b110060/Test.java b110060.Test.axa [AxA] EXACT_MATCH\n" + |
4820 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH\n" + |
4820 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH\n" + |
4821 |
""+ getExternalJCLPathString("1.5") + " java.lang.annotation.Annotation EXACT_MATCH" |
4821 |
""+ getExternalJCLPathString("1.5") + " java.lang.annotation.Annotation EXACT_MATCH" |
4822 |
); |
4822 |
); |
4823 |
} |
4823 |
} |
Lines 4832-4840
Link Here
|
4832 |
setUpBug110060_TypePattern(); |
4832 |
setUpBug110060_TypePattern(); |
4833 |
search("aa", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH | SearchPattern.R_PREFIX_MATCH); |
4833 |
search("aa", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH | SearchPattern.R_PREFIX_MATCH); |
4834 |
assertSearchResults( |
4834 |
assertSearchResults( |
4835 |
"src/b110060/AA.java b110060.AA [AA] EXACT_MATCH\n" + |
4835 |
"src/b110060/AA.java b110060.AA [AA] EXACT_MATCH\n" + |
4836 |
"src/b110060/AAxx.java b110060.AAxx [AAxx] EXACT_MATCH\n" + |
4836 |
"src/b110060/AAxx.java b110060.AAxx [AAxx] EXACT_MATCH\n" + |
4837 |
"src/b110060/Test.java b110060.Test.aa [AA] EXACT_MATCH\n" + |
4837 |
"src/b110060/Test.java b110060.Test.aa [AA] EXACT_MATCH\n" + |
4838 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH" |
4838 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH" |
4839 |
); |
4839 |
); |
4840 |
} |
4840 |
} |
Lines 4843-4855
Link Here
|
4843 |
setUpBug110060_TypePattern(); |
4843 |
setUpBug110060_TypePattern(); |
4844 |
search("AA", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH | SearchPattern.R_CASE_SENSITIVE); |
4844 |
search("AA", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH | SearchPattern.R_CASE_SENSITIVE); |
4845 |
assertSearchResults( |
4845 |
assertSearchResults( |
4846 |
"src/b110060/AA.java b110060.AA [AA] EXACT_MATCH\n" + |
4846 |
"src/b110060/AA.java b110060.AA [AA] EXACT_MATCH\n" + |
4847 |
"src/b110060/AAxx.java b110060.AAxx [AAxx] EXACT_MATCH\n" + |
4847 |
"src/b110060/AAxx.java b110060.AAxx [AAxx] EXACT_MATCH\n" + |
4848 |
"src/b110060/AxA.java b110060.AxA [AxA] EXACT_MATCH\n" + |
4848 |
"src/b110060/AxA.java b110060.AxA [AxA] EXACT_MATCH\n" + |
4849 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4849 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4850 |
"src/b110060/Test.java b110060.Test.aa [AA] EXACT_MATCH\n" + |
4850 |
"src/b110060/Test.java b110060.Test.aa [AA] EXACT_MATCH\n" + |
4851 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH\n" + |
4851 |
"src/b110060/Test.java b110060.Test.aaxx [AAxx] EXACT_MATCH\n" + |
4852 |
"src/b110060/Test.java b110060.Test.axa [AxA] EXACT_MATCH\n" + |
4852 |
"src/b110060/Test.java b110060.Test.axa [AxA] EXACT_MATCH\n" + |
4853 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4853 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4854 |
); |
4854 |
); |
4855 |
} |
4855 |
} |
Lines 4864-4870
Link Here
|
4864 |
setUpBug110060_TypePattern(); |
4864 |
setUpBug110060_TypePattern(); |
4865 |
search("AxxA", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4865 |
search("AxxA", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4866 |
assertSearchResults( |
4866 |
assertSearchResults( |
4867 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4867 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4868 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4868 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4869 |
); |
4869 |
); |
4870 |
} |
4870 |
} |
Lines 4873-4879
Link Here
|
4873 |
setUpBug110060_TypePattern(); |
4873 |
setUpBug110060_TypePattern(); |
4874 |
search("AxXA", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4874 |
search("AxXA", TYPE, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
4875 |
assertSearchResults( |
4875 |
assertSearchResults( |
4876 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4876 |
"src/b110060/AxxAyy.java b110060.AxxAyy [AxxAyy] EXACT_MATCH\n" + |
4877 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4877 |
"src/b110060/Test.java b110060.Test.axxayy [AxxAyy] EXACT_MATCH" |
4878 |
); |
4878 |
); |
4879 |
} |
4879 |
} |
Lines 4894-4902
Link Here
|
4894 |
); |
4894 |
); |
4895 |
assertSearchResults( |
4895 |
assertSearchResults( |
4896 |
"Unexpected all type names", |
4896 |
"Unexpected all type names", |
4897 |
"b110060.AA\n" + |
4897 |
"b110060.AA\n" + |
4898 |
"b110060.AAxx\n" + |
4898 |
"b110060.AAxx\n" + |
4899 |
"b110060.AxA\n" + |
4899 |
"b110060.AxA\n" + |
4900 |
"b110060.AxxAyy", |
4900 |
"b110060.AxxAyy", |
4901 |
requestor); |
4901 |
requestor); |
4902 |
} |
4902 |
} |
Lines 4917-4925
Link Here
|
4917 |
); |
4917 |
); |
4918 |
assertSearchResults( |
4918 |
assertSearchResults( |
4919 |
"Unexpected all type names", |
4919 |
"Unexpected all type names", |
4920 |
"b110060.AA\n" + |
4920 |
"b110060.AA\n" + |
4921 |
"b110060.AAxx\n" + |
4921 |
"b110060.AAxx\n" + |
4922 |
"b110060.AxA\n" + |
4922 |
"b110060.AxA\n" + |
4923 |
"b110060.AxxAyy", |
4923 |
"b110060.AxxAyy", |
4924 |
requestor); |
4924 |
requestor); |
4925 |
} |
4925 |
} |
Lines 4940-4948
Link Here
|
4940 |
); |
4940 |
); |
4941 |
assertSearchResults( |
4941 |
assertSearchResults( |
4942 |
"Unexpected all type names", |
4942 |
"Unexpected all type names", |
4943 |
"b110060.AA\n" + |
4943 |
"b110060.AA\n" + |
4944 |
"b110060.AAxx\n" + |
4944 |
"b110060.AAxx\n" + |
4945 |
"b110060.AxA\n" + |
4945 |
"b110060.AxA\n" + |
4946 |
"b110060.AxxAyy", |
4946 |
"b110060.AxxAyy", |
4947 |
requestor); |
4947 |
requestor); |
4948 |
} |
4948 |
} |
Lines 4963-4971
Link Here
|
4963 |
); |
4963 |
); |
4964 |
assertSearchResults( |
4964 |
assertSearchResults( |
4965 |
"Unexpected all type names", |
4965 |
"Unexpected all type names", |
4966 |
"b110060.AA\n" + |
4966 |
"b110060.AA\n" + |
4967 |
"b110060.AAxx\n" + |
4967 |
"b110060.AAxx\n" + |
4968 |
"b110060.AxA\n" + |
4968 |
"b110060.AxA\n" + |
4969 |
"b110060.AxxAyy", |
4969 |
"b110060.AxxAyy", |
4970 |
requestor); |
4970 |
requestor); |
4971 |
} |
4971 |
} |
Lines 4986-4992
Link Here
|
4986 |
); |
4986 |
); |
4987 |
assertSearchResults( |
4987 |
assertSearchResults( |
4988 |
"Unexpected all type names", |
4988 |
"Unexpected all type names", |
4989 |
"b110060.AA\n" + |
4989 |
"b110060.AA\n" + |
4990 |
"b110060.AAxx", |
4990 |
"b110060.AAxx", |
4991 |
requestor); |
4991 |
requestor); |
4992 |
} |
4992 |
} |
Lines 5027-5033
Link Here
|
5027 |
); |
5027 |
); |
5028 |
assertSearchResults( |
5028 |
assertSearchResults( |
5029 |
"Unexpected all type names", |
5029 |
"Unexpected all type names", |
5030 |
"b110060.AA\n" + |
5030 |
"b110060.AA\n" + |
5031 |
"b110060.AAxx", |
5031 |
"b110060.AAxx", |
5032 |
requestor); |
5032 |
requestor); |
5033 |
} |
5033 |
} |
Lines 5048-5054
Link Here
|
5048 |
); |
5048 |
); |
5049 |
assertSearchResults( |
5049 |
assertSearchResults( |
5050 |
"Unexpected all type names", |
5050 |
"Unexpected all type names", |
5051 |
"b110060.AA\n" + |
5051 |
"b110060.AA\n" + |
5052 |
"b110060.AAxx", |
5052 |
"b110060.AAxx", |
5053 |
requestor); |
5053 |
requestor); |
5054 |
} |
5054 |
} |
Lines 5069-5075
Link Here
|
5069 |
); |
5069 |
); |
5070 |
assertSearchResults( |
5070 |
assertSearchResults( |
5071 |
"Unexpected all type names", |
5071 |
"Unexpected all type names", |
5072 |
"b110060.AA\n" + |
5072 |
"b110060.AA\n" + |
5073 |
"b110060.AAxx", |
5073 |
"b110060.AAxx", |
5074 |
requestor); |
5074 |
requestor); |
5075 |
} |
5075 |
} |
Lines 5130-5136
Link Here
|
5130 |
); |
5130 |
); |
5131 |
assertSearchResults( |
5131 |
assertSearchResults( |
5132 |
"Unexpected all type names", |
5132 |
"Unexpected all type names", |
5133 |
"b110060.AA\n" + |
5133 |
"b110060.AA\n" + |
5134 |
"b110060.AAxx", |
5134 |
"b110060.AAxx", |
5135 |
requestor); |
5135 |
requestor); |
5136 |
} |
5136 |
} |
Lines 5179-5214
Link Here
|
5179 |
private void setUpBug110060_ConstructorPattern() throws CoreException { |
5179 |
private void setUpBug110060_ConstructorPattern() throws CoreException { |
5180 |
workingCopies = new ICompilationUnit[5]; |
5180 |
workingCopies = new ICompilationUnit[5]; |
5181 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110060/AA.java", |
5181 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110060/AA.java", |
5182 |
"package b110060;\n" + |
5182 |
"package b110060;\n" + |
5183 |
"public class AA {\n" + |
5183 |
"public class AA {\n" + |
5184 |
" AA() {}\n" + |
5184 |
" AA() {}\n" + |
5185 |
"}\n" |
5185 |
"}\n" |
5186 |
); |
5186 |
); |
5187 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b110060/AAxx.java", |
5187 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b110060/AAxx.java", |
5188 |
"package b110060;\n" + |
5188 |
"package b110060;\n" + |
5189 |
"public class AAxx {\n" + |
5189 |
"public class AAxx {\n" + |
5190 |
" AAxx() {}\n" + |
5190 |
" AAxx() {}\n" + |
5191 |
"}\n" |
5191 |
"}\n" |
5192 |
); |
5192 |
); |
5193 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b110060/AxxAyy.java", |
5193 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b110060/AxxAyy.java", |
5194 |
"package b110060;\n" + |
5194 |
"package b110060;\n" + |
5195 |
"public class AxxAyy {\n" + |
5195 |
"public class AxxAyy {\n" + |
5196 |
" AxxAyy() {}\n" + |
5196 |
" AxxAyy() {}\n" + |
5197 |
"}\n" |
5197 |
"}\n" |
5198 |
); |
5198 |
); |
5199 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b110060/AxA.java", |
5199 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b110060/AxA.java", |
5200 |
"package b110060;\n" + |
5200 |
"package b110060;\n" + |
5201 |
"public class AxA {\n" + |
5201 |
"public class AxA {\n" + |
5202 |
" AxA() {}\n" + |
5202 |
" AxA() {}\n" + |
5203 |
"}\n" |
5203 |
"}\n" |
5204 |
); |
5204 |
); |
5205 |
workingCopies[4] = getWorkingCopy("/JavaSearchBugs/src/b110060/Test.java", |
5205 |
workingCopies[4] = getWorkingCopy("/JavaSearchBugs/src/b110060/Test.java", |
5206 |
"package b110060;\n" + |
5206 |
"package b110060;\n" + |
5207 |
"public class Test {\n" + |
5207 |
"public class Test {\n" + |
5208 |
" AA aa = new AA();\n" + |
5208 |
" AA aa = new AA();\n" + |
5209 |
" AAxx aaxx = new AAxx();\n" + |
5209 |
" AAxx aaxx = new AAxx();\n" + |
5210 |
" AxA axa = new AxA();\n" + |
5210 |
" AxA axa = new AxA();\n" + |
5211 |
" AxxAyy axxayy = new AxxAyy();\n" + |
5211 |
" AxxAyy axxayy = new AxxAyy();\n" + |
5212 |
"}\n" |
5212 |
"}\n" |
5213 |
); |
5213 |
); |
5214 |
} |
5214 |
} |
Lines 5216-5224
Link Here
|
5216 |
setUpBug110060_ConstructorPattern(); |
5216 |
setUpBug110060_ConstructorPattern(); |
5217 |
search("AA", CONSTRUCTOR, REFERENCES, SearchPattern.R_CAMELCASE_MATCH); |
5217 |
search("AA", CONSTRUCTOR, REFERENCES, SearchPattern.R_CAMELCASE_MATCH); |
5218 |
assertSearchResults( |
5218 |
assertSearchResults( |
5219 |
"src/b110060/Test.java b110060.Test.aa [new AA()] EXACT_MATCH\n" + |
5219 |
"src/b110060/Test.java b110060.Test.aa [new AA()] EXACT_MATCH\n" + |
5220 |
"src/b110060/Test.java b110060.Test.aaxx [new AAxx()] EXACT_MATCH\n" + |
5220 |
"src/b110060/Test.java b110060.Test.aaxx [new AAxx()] EXACT_MATCH\n" + |
5221 |
"src/b110060/Test.java b110060.Test.axa [new AxA()] EXACT_MATCH\n" + |
5221 |
"src/b110060/Test.java b110060.Test.axa [new AxA()] EXACT_MATCH\n" + |
5222 |
"src/b110060/Test.java b110060.Test.axxayy [new AxxAyy()] EXACT_MATCH" |
5222 |
"src/b110060/Test.java b110060.Test.axxayy [new AxxAyy()] EXACT_MATCH" |
5223 |
); |
5223 |
); |
5224 |
} |
5224 |
} |
Lines 5227-5239
Link Here
|
5227 |
setUpBug110060_ConstructorPattern(); |
5227 |
setUpBug110060_ConstructorPattern(); |
5228 |
search("AA", CONSTRUCTOR, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5228 |
search("AA", CONSTRUCTOR, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5229 |
assertSearchResults( |
5229 |
assertSearchResults( |
5230 |
"src/b110060/AA.java b110060.AA() [AA] EXACT_MATCH\n" + |
5230 |
"src/b110060/AA.java b110060.AA() [AA] EXACT_MATCH\n" + |
5231 |
"src/b110060/AAxx.java b110060.AAxx() [AAxx] EXACT_MATCH\n" + |
5231 |
"src/b110060/AAxx.java b110060.AAxx() [AAxx] EXACT_MATCH\n" + |
5232 |
"src/b110060/AxA.java b110060.AxA() [AxA] EXACT_MATCH\n" + |
5232 |
"src/b110060/AxA.java b110060.AxA() [AxA] EXACT_MATCH\n" + |
5233 |
"src/b110060/AxxAyy.java b110060.AxxAyy() [AxxAyy] EXACT_MATCH\n" + |
5233 |
"src/b110060/AxxAyy.java b110060.AxxAyy() [AxxAyy] EXACT_MATCH\n" + |
5234 |
"src/b110060/Test.java b110060.Test.aa [new AA()] EXACT_MATCH\n" + |
5234 |
"src/b110060/Test.java b110060.Test.aa [new AA()] EXACT_MATCH\n" + |
5235 |
"src/b110060/Test.java b110060.Test.aaxx [new AAxx()] EXACT_MATCH\n" + |
5235 |
"src/b110060/Test.java b110060.Test.aaxx [new AAxx()] EXACT_MATCH\n" + |
5236 |
"src/b110060/Test.java b110060.Test.axa [new AxA()] EXACT_MATCH\n" + |
5236 |
"src/b110060/Test.java b110060.Test.axa [new AxA()] EXACT_MATCH\n" + |
5237 |
"src/b110060/Test.java b110060.Test.axxayy [new AxxAyy()] EXACT_MATCH" |
5237 |
"src/b110060/Test.java b110060.Test.axxayy [new AxxAyy()] EXACT_MATCH" |
5238 |
); |
5238 |
); |
5239 |
} |
5239 |
} |
Lines 5242-5248
Link Here
|
5242 |
setUpBug110060_ConstructorPattern(); |
5242 |
setUpBug110060_ConstructorPattern(); |
5243 |
search("AAx", CONSTRUCTOR, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5243 |
search("AAx", CONSTRUCTOR, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5244 |
assertSearchResults( |
5244 |
assertSearchResults( |
5245 |
"src/b110060/AAxx.java b110060.AAxx() [AAxx] EXACT_MATCH\n" + |
5245 |
"src/b110060/AAxx.java b110060.AAxx() [AAxx] EXACT_MATCH\n" + |
5246 |
"src/b110060/Test.java b110060.Test.aaxx [new AAxx()] EXACT_MATCH" |
5246 |
"src/b110060/Test.java b110060.Test.aaxx [new AAxx()] EXACT_MATCH" |
5247 |
); |
5247 |
); |
5248 |
} |
5248 |
} |
Lines 5251-5257
Link Here
|
5251 |
setUpBug110060_ConstructorPattern(); |
5251 |
setUpBug110060_ConstructorPattern(); |
5252 |
search("Axx", CONSTRUCTOR, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5252 |
search("Axx", CONSTRUCTOR, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5253 |
assertSearchResults( |
5253 |
assertSearchResults( |
5254 |
"src/b110060/AxxAyy.java b110060.AxxAyy() [AxxAyy] EXACT_MATCH\n" + |
5254 |
"src/b110060/AxxAyy.java b110060.AxxAyy() [AxxAyy] EXACT_MATCH\n" + |
5255 |
"src/b110060/Test.java b110060.Test.axxayy [new AxxAyy()] EXACT_MATCH" |
5255 |
"src/b110060/Test.java b110060.Test.axxayy [new AxxAyy()] EXACT_MATCH" |
5256 |
); |
5256 |
); |
5257 |
} |
5257 |
} |
Lines 5260-5268
Link Here
|
5260 |
setUpBug110060_ConstructorPattern(); |
5260 |
setUpBug110060_ConstructorPattern(); |
5261 |
search("Ax", CONSTRUCTOR, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5261 |
search("Ax", CONSTRUCTOR, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5262 |
assertSearchResults( |
5262 |
assertSearchResults( |
5263 |
"src/b110060/AxA.java b110060.AxA() [AxA] EXACT_MATCH\n" + |
5263 |
"src/b110060/AxA.java b110060.AxA() [AxA] EXACT_MATCH\n" + |
5264 |
"src/b110060/AxxAyy.java b110060.AxxAyy() [AxxAyy] EXACT_MATCH\n" + |
5264 |
"src/b110060/AxxAyy.java b110060.AxxAyy() [AxxAyy] EXACT_MATCH\n" + |
5265 |
"src/b110060/Test.java b110060.Test.axa [new AxA()] EXACT_MATCH\n" + |
5265 |
"src/b110060/Test.java b110060.Test.axa [new AxA()] EXACT_MATCH\n" + |
5266 |
"src/b110060/Test.java b110060.Test.axxayy [new AxxAyy()] EXACT_MATCH" |
5266 |
"src/b110060/Test.java b110060.Test.axxayy [new AxxAyy()] EXACT_MATCH" |
5267 |
); |
5267 |
); |
5268 |
} |
5268 |
} |
Lines 5271-5283
Link Here
|
5271 |
setUpBug110060_ConstructorPattern(); |
5271 |
setUpBug110060_ConstructorPattern(); |
5272 |
search("A*A*", CONSTRUCTOR, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5272 |
search("A*A*", CONSTRUCTOR, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5273 |
assertSearchResults( |
5273 |
assertSearchResults( |
5274 |
"src/b110060/AA.java b110060.AA() [AA] EXACT_MATCH\n" + |
5274 |
"src/b110060/AA.java b110060.AA() [AA] EXACT_MATCH\n" + |
5275 |
"src/b110060/AAxx.java b110060.AAxx() [AAxx] EXACT_MATCH\n" + |
5275 |
"src/b110060/AAxx.java b110060.AAxx() [AAxx] EXACT_MATCH\n" + |
5276 |
"src/b110060/AxA.java b110060.AxA() [AxA] EXACT_MATCH\n" + |
5276 |
"src/b110060/AxA.java b110060.AxA() [AxA] EXACT_MATCH\n" + |
5277 |
"src/b110060/AxxAyy.java b110060.AxxAyy() [AxxAyy] EXACT_MATCH\n" + |
5277 |
"src/b110060/AxxAyy.java b110060.AxxAyy() [AxxAyy] EXACT_MATCH\n" + |
5278 |
"src/b110060/Test.java b110060.Test.aa [new AA()] EXACT_MATCH\n" + |
5278 |
"src/b110060/Test.java b110060.Test.aa [new AA()] EXACT_MATCH\n" + |
5279 |
"src/b110060/Test.java b110060.Test.aaxx [new AAxx()] EXACT_MATCH\n" + |
5279 |
"src/b110060/Test.java b110060.Test.aaxx [new AAxx()] EXACT_MATCH\n" + |
5280 |
"src/b110060/Test.java b110060.Test.axa [new AxA()] EXACT_MATCH\n" + |
5280 |
"src/b110060/Test.java b110060.Test.axa [new AxA()] EXACT_MATCH\n" + |
5281 |
"src/b110060/Test.java b110060.Test.axxayy [new AxxAyy()] EXACT_MATCH" |
5281 |
"src/b110060/Test.java b110060.Test.axxayy [new AxxAyy()] EXACT_MATCH" |
5282 |
); |
5282 |
); |
5283 |
} |
5283 |
} |
Lines 5286-5305
Link Here
|
5286 |
private void setUpBug110060_MethodPattern() throws CoreException { |
5286 |
private void setUpBug110060_MethodPattern() throws CoreException { |
5287 |
workingCopies = new ICompilationUnit[1]; |
5287 |
workingCopies = new ICompilationUnit[1]; |
5288 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110060/Test.java", |
5288 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110060/Test.java", |
5289 |
"package b110060;\n" + |
5289 |
"package b110060;\n" + |
5290 |
"public class Test {\n" + |
5290 |
"public class Test {\n" + |
5291 |
" void aMethodWithNothingSpecial() {}\n" + |
5291 |
" void aMethodWithNothingSpecial() {}\n" + |
5292 |
" void aMethodWith1Digit() {}\n" + |
5292 |
" void aMethodWith1Digit() {}\n" + |
5293 |
" void aMethodWith1DigitAnd_AnUnderscore() {}\n" + |
5293 |
" void aMethodWith1DigitAnd_AnUnderscore() {}\n" + |
5294 |
" void aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() {}\n" + |
5294 |
" void aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() {}\n" + |
5295 |
" void otherMethodWhichStartsWithAnotherLetter() {}\n" + |
5295 |
" void otherMethodWhichStartsWithAnotherLetter() {}\n" + |
5296 |
" void testReferences() {\n" + |
5296 |
" void testReferences() {\n" + |
5297 |
" aMethodWith1Digit();\n" + |
5297 |
" aMethodWith1Digit();\n" + |
5298 |
" aMethodWith1DigitAnd_AnUnderscore();\n" + |
5298 |
" aMethodWith1DigitAnd_AnUnderscore();\n" + |
5299 |
" aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores();\n" + |
5299 |
" aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores();\n" + |
5300 |
" aMethodWithNothingSpecial();\n" + |
5300 |
" aMethodWithNothingSpecial();\n" + |
5301 |
" otherMethodWhichStartsWithAnotherLetter();\n" + |
5301 |
" otherMethodWhichStartsWithAnotherLetter();\n" + |
5302 |
" }\n" + |
5302 |
" }\n" + |
5303 |
"}\n" |
5303 |
"}\n" |
5304 |
); |
5304 |
); |
5305 |
} |
5305 |
} |
Lines 5319-5327
Link Here
|
5319 |
setUpBug110060_MethodPattern(); |
5319 |
setUpBug110060_MethodPattern(); |
5320 |
search("aMWD", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5320 |
search("aMWD", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5321 |
assertSearchResults( |
5321 |
assertSearchResults( |
5322 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Digit() [aMethodWith1Digit] EXACT_MATCH\n" + |
5322 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Digit() [aMethodWith1Digit] EXACT_MATCH\n" + |
5323 |
"src/b110060/Test.java void b110060.Test.aMethodWith1DigitAnd_AnUnderscore() [aMethodWith1DigitAnd_AnUnderscore] EXACT_MATCH\n" + |
5323 |
"src/b110060/Test.java void b110060.Test.aMethodWith1DigitAnd_AnUnderscore() [aMethodWith1DigitAnd_AnUnderscore] EXACT_MATCH\n" + |
5324 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Digit()] EXACT_MATCH\n" + |
5324 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Digit()] EXACT_MATCH\n" + |
5325 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1DigitAnd_AnUnderscore()] EXACT_MATCH" |
5325 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1DigitAnd_AnUnderscore()] EXACT_MATCH" |
5326 |
); |
5326 |
); |
5327 |
} |
5327 |
} |
Lines 5330-5342
Link Here
|
5330 |
setUpBug110060_MethodPattern(); |
5330 |
setUpBug110060_MethodPattern(); |
5331 |
search("aMW", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5331 |
search("aMW", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5332 |
assertSearchResults( |
5332 |
assertSearchResults( |
5333 |
"src/b110060/Test.java void b110060.Test.aMethodWithNothingSpecial() [aMethodWithNothingSpecial] EXACT_MATCH\n" + |
5333 |
"src/b110060/Test.java void b110060.Test.aMethodWithNothingSpecial() [aMethodWithNothingSpecial] EXACT_MATCH\n" + |
5334 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Digit() [aMethodWith1Digit] EXACT_MATCH\n" + |
5334 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Digit() [aMethodWith1Digit] EXACT_MATCH\n" + |
5335 |
"src/b110060/Test.java void b110060.Test.aMethodWith1DigitAnd_AnUnderscore() [aMethodWith1DigitAnd_AnUnderscore] EXACT_MATCH\n" + |
5335 |
"src/b110060/Test.java void b110060.Test.aMethodWith1DigitAnd_AnUnderscore() [aMethodWith1DigitAnd_AnUnderscore] EXACT_MATCH\n" + |
5336 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores] EXACT_MATCH\n" + |
5336 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores] EXACT_MATCH\n" + |
5337 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Digit()] EXACT_MATCH\n" + |
5337 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Digit()] EXACT_MATCH\n" + |
5338 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1DigitAnd_AnUnderscore()] EXACT_MATCH\n" + |
5338 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1DigitAnd_AnUnderscore()] EXACT_MATCH\n" + |
5339 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores()] EXACT_MATCH\n" + |
5339 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores()] EXACT_MATCH\n" + |
5340 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWithNothingSpecial()] EXACT_MATCH" |
5340 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWithNothingSpecial()] EXACT_MATCH" |
5341 |
); |
5341 |
); |
5342 |
} |
5342 |
} |
Lines 5345-5357
Link Here
|
5345 |
setUpBug110060_MethodPattern(); |
5345 |
setUpBug110060_MethodPattern(); |
5346 |
search("aMethod", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5346 |
search("aMethod", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5347 |
assertSearchResults( |
5347 |
assertSearchResults( |
5348 |
"src/b110060/Test.java void b110060.Test.aMethodWithNothingSpecial() [aMethodWithNothingSpecial] EXACT_MATCH\n" + |
5348 |
"src/b110060/Test.java void b110060.Test.aMethodWithNothingSpecial() [aMethodWithNothingSpecial] EXACT_MATCH\n" + |
5349 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Digit() [aMethodWith1Digit] EXACT_MATCH\n" + |
5349 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Digit() [aMethodWith1Digit] EXACT_MATCH\n" + |
5350 |
"src/b110060/Test.java void b110060.Test.aMethodWith1DigitAnd_AnUnderscore() [aMethodWith1DigitAnd_AnUnderscore] EXACT_MATCH\n" + |
5350 |
"src/b110060/Test.java void b110060.Test.aMethodWith1DigitAnd_AnUnderscore() [aMethodWith1DigitAnd_AnUnderscore] EXACT_MATCH\n" + |
5351 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores] EXACT_MATCH\n" + |
5351 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores] EXACT_MATCH\n" + |
5352 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Digit()] EXACT_MATCH\n" + |
5352 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Digit()] EXACT_MATCH\n" + |
5353 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1DigitAnd_AnUnderscore()] EXACT_MATCH\n" + |
5353 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1DigitAnd_AnUnderscore()] EXACT_MATCH\n" + |
5354 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores()] EXACT_MATCH\n" + |
5354 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores()] EXACT_MATCH\n" + |
5355 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWithNothingSpecial()] EXACT_MATCH" |
5355 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWithNothingSpecial()] EXACT_MATCH" |
5356 |
); |
5356 |
); |
5357 |
} |
5357 |
} |
Lines 5360-5370
Link Here
|
5360 |
setUpBug110060_MethodPattern(); |
5360 |
setUpBug110060_MethodPattern(); |
5361 |
search("aMethodWith1", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5361 |
search("aMethodWith1", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5362 |
assertSearchResults( |
5362 |
assertSearchResults( |
5363 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Digit() [aMethodWith1Digit] EXACT_MATCH\n" + |
5363 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Digit() [aMethodWith1Digit] EXACT_MATCH\n" + |
5364 |
"src/b110060/Test.java void b110060.Test.aMethodWith1DigitAnd_AnUnderscore() [aMethodWith1DigitAnd_AnUnderscore] EXACT_MATCH\n" + |
5364 |
"src/b110060/Test.java void b110060.Test.aMethodWith1DigitAnd_AnUnderscore() [aMethodWith1DigitAnd_AnUnderscore] EXACT_MATCH\n" + |
5365 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores] EXACT_MATCH\n" + |
5365 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores] EXACT_MATCH\n" + |
5366 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Digit()] EXACT_MATCH\n" + |
5366 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Digit()] EXACT_MATCH\n" + |
5367 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1DigitAnd_AnUnderscore()] EXACT_MATCH\n" + |
5367 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1DigitAnd_AnUnderscore()] EXACT_MATCH\n" + |
5368 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores()] EXACT_MATCH" |
5368 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores()] EXACT_MATCH" |
5369 |
); |
5369 |
); |
5370 |
} |
5370 |
} |
Lines 5373-5385
Link Here
|
5373 |
setUpBug110060_MethodPattern(); |
5373 |
setUpBug110060_MethodPattern(); |
5374 |
search("*Method*With*A*", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5374 |
search("*Method*With*A*", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5375 |
assertSearchResults( |
5375 |
assertSearchResults( |
5376 |
"src/b110060/Test.java void b110060.Test.aMethodWithNothingSpecial() [aMethodWithNothingSpecial] EXACT_MATCH\n" + |
5376 |
"src/b110060/Test.java void b110060.Test.aMethodWithNothingSpecial() [aMethodWithNothingSpecial] EXACT_MATCH\n" + |
5377 |
"src/b110060/Test.java void b110060.Test.aMethodWith1DigitAnd_AnUnderscore() [aMethodWith1DigitAnd_AnUnderscore] EXACT_MATCH\n" + |
5377 |
"src/b110060/Test.java void b110060.Test.aMethodWith1DigitAnd_AnUnderscore() [aMethodWith1DigitAnd_AnUnderscore] EXACT_MATCH\n" + |
5378 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores] EXACT_MATCH\n" + |
5378 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores] EXACT_MATCH\n" + |
5379 |
"src/b110060/Test.java void b110060.Test.otherMethodWhichStartsWithAnotherLetter() [otherMethodWhichStartsWithAnotherLetter] EXACT_MATCH\n" + |
5379 |
"src/b110060/Test.java void b110060.Test.otherMethodWhichStartsWithAnotherLetter() [otherMethodWhichStartsWithAnotherLetter] EXACT_MATCH\n" + |
5380 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1DigitAnd_AnUnderscore()] EXACT_MATCH\n" + |
5380 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1DigitAnd_AnUnderscore()] EXACT_MATCH\n" + |
5381 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores()] EXACT_MATCH\n" + |
5381 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores()] EXACT_MATCH\n" + |
5382 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWithNothingSpecial()] EXACT_MATCH\n" + |
5382 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWithNothingSpecial()] EXACT_MATCH\n" + |
5383 |
"src/b110060/Test.java void b110060.Test.testReferences() [otherMethodWhichStartsWithAnotherLetter()] EXACT_MATCH" |
5383 |
"src/b110060/Test.java void b110060.Test.testReferences() [otherMethodWhichStartsWithAnotherLetter()] EXACT_MATCH" |
5384 |
); |
5384 |
); |
5385 |
} |
5385 |
} |
Lines 5394-5400
Link Here
|
5394 |
setUpBug110060_MethodPattern(); |
5394 |
setUpBug110060_MethodPattern(); |
5395 |
search("aMWOOODASU", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5395 |
search("aMWOOODASU", METHOD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5396 |
assertSearchResults( |
5396 |
assertSearchResults( |
5397 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores] EXACT_MATCH\n" + |
5397 |
"src/b110060/Test.java void b110060.Test.aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores] EXACT_MATCH\n" + |
5398 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores()] EXACT_MATCH" |
5398 |
"src/b110060/Test.java void b110060.Test.testReferences() [aMethodWith1Or2_Or_3_Or__4__DigitsAnd_Several_Underscores()] EXACT_MATCH" |
5399 |
); |
5399 |
); |
5400 |
} |
5400 |
} |
Lines 5403-5422
Link Here
|
5403 |
private void setUpBug110060_FieldPattern() throws CoreException { |
5403 |
private void setUpBug110060_FieldPattern() throws CoreException { |
5404 |
workingCopies = new ICompilationUnit[1]; |
5404 |
workingCopies = new ICompilationUnit[1]; |
5405 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110060/Test.java", |
5405 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110060/Test.java", |
5406 |
"package b110060;\n" + |
5406 |
"package b110060;\n" + |
5407 |
"public class Test {\n" + |
5407 |
"public class Test {\n" + |
5408 |
" Object aFieldWithNothingSpecial;\n" + |
5408 |
" Object aFieldWithNothingSpecial;\n" + |
5409 |
" Object aFieldWithS$Dollar;\n" + |
5409 |
" Object aFieldWithS$Dollar;\n" + |
5410 |
" Object aFieldWith$Several$DollarslAnd1DigitAnd_1Underscore;\n" + |
5410 |
" Object aFieldWith$Several$DollarslAnd1DigitAnd_1Underscore;\n" + |
5411 |
" Object aStrangeFieldWith$$$$$$$$$$$$$$$SeveraContiguousDollars;\n" + |
5411 |
" Object aStrangeFieldWith$$$$$$$$$$$$$$$SeveraContiguousDollars;\n" + |
5412 |
" Object otherFieldWhichStartsWithAnotherLetter;\n" + |
5412 |
" Object otherFieldWhichStartsWithAnotherLetter;\n" + |
5413 |
" void testReferences() {\n" + |
5413 |
" void testReferences() {\n" + |
5414 |
" Object o0 = aFieldWithNothingSpecial;\n" + |
5414 |
" Object o0 = aFieldWithNothingSpecial;\n" + |
5415 |
" Object o1 = aFieldWithS$Dollar;\n" + |
5415 |
" Object o1 = aFieldWithS$Dollar;\n" + |
5416 |
" Object o2 = aFieldWith$Several$DollarslAnd1DigitAnd_1Underscore;\n" + |
5416 |
" Object o2 = aFieldWith$Several$DollarslAnd1DigitAnd_1Underscore;\n" + |
5417 |
" Object o3 = aStrangeFieldWith$$$$$$$$$$$$$$$SeveraContiguousDollars;\n" + |
5417 |
" Object o3 = aStrangeFieldWith$$$$$$$$$$$$$$$SeveraContiguousDollars;\n" + |
5418 |
" }\n" + |
5418 |
" }\n" + |
5419 |
" Object oF = otherFieldWhichStartsWithAnotherLetter;\n" + |
5419 |
" Object oF = otherFieldWhichStartsWithAnotherLetter;\n" + |
5420 |
"}\n" |
5420 |
"}\n" |
5421 |
); |
5421 |
); |
5422 |
} |
5422 |
} |
Lines 5424-5432
Link Here
|
5424 |
setUpBug110060_FieldPattern(); |
5424 |
setUpBug110060_FieldPattern(); |
5425 |
search("aFWSD", FIELD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5425 |
search("aFWSD", FIELD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5426 |
assertSearchResults( |
5426 |
assertSearchResults( |
5427 |
"src/b110060/Test.java b110060.Test.aFieldWithS$Dollar [aFieldWithS$Dollar] EXACT_MATCH\n" + |
5427 |
"src/b110060/Test.java b110060.Test.aFieldWithS$Dollar [aFieldWithS$Dollar] EXACT_MATCH\n" + |
5428 |
"src/b110060/Test.java b110060.Test.aFieldWith$Several$DollarslAnd1DigitAnd_1Underscore [aFieldWith$Several$DollarslAnd1DigitAnd_1Underscore] EXACT_MATCH\n" + |
5428 |
"src/b110060/Test.java b110060.Test.aFieldWith$Several$DollarslAnd1DigitAnd_1Underscore [aFieldWith$Several$DollarslAnd1DigitAnd_1Underscore] EXACT_MATCH\n" + |
5429 |
"src/b110060/Test.java void b110060.Test.testReferences() [aFieldWithS$Dollar] EXACT_MATCH\n" + |
5429 |
"src/b110060/Test.java void b110060.Test.testReferences() [aFieldWithS$Dollar] EXACT_MATCH\n" + |
5430 |
"src/b110060/Test.java void b110060.Test.testReferences() [aFieldWith$Several$DollarslAnd1DigitAnd_1Underscore] EXACT_MATCH" |
5430 |
"src/b110060/Test.java void b110060.Test.testReferences() [aFieldWith$Several$DollarslAnd1DigitAnd_1Underscore] EXACT_MATCH" |
5431 |
); |
5431 |
); |
5432 |
} |
5432 |
} |
Lines 5441-5447
Link Here
|
5441 |
setUpBug110060_FieldPattern(); |
5441 |
setUpBug110060_FieldPattern(); |
5442 |
search("aFWS$", FIELD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5442 |
search("aFWS$", FIELD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5443 |
assertSearchResults( |
5443 |
assertSearchResults( |
5444 |
"src/b110060/Test.java b110060.Test.aFieldWithS$Dollar [aFieldWithS$Dollar] EXACT_MATCH\n" + |
5444 |
"src/b110060/Test.java b110060.Test.aFieldWithS$Dollar [aFieldWithS$Dollar] EXACT_MATCH\n" + |
5445 |
"src/b110060/Test.java void b110060.Test.testReferences() [aFieldWithS$Dollar] EXACT_MATCH" |
5445 |
"src/b110060/Test.java void b110060.Test.testReferences() [aFieldWithS$Dollar] EXACT_MATCH" |
5446 |
); |
5446 |
); |
5447 |
} |
5447 |
} |
Lines 5450-5456
Link Here
|
5450 |
setUpBug110060_FieldPattern(); |
5450 |
setUpBug110060_FieldPattern(); |
5451 |
search("aSFWSCD", FIELD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5451 |
search("aSFWSCD", FIELD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5452 |
assertSearchResults( |
5452 |
assertSearchResults( |
5453 |
"src/b110060/Test.java b110060.Test.aStrangeFieldWith$$$$$$$$$$$$$$$SeveraContiguousDollars [aStrangeFieldWith$$$$$$$$$$$$$$$SeveraContiguousDollars] EXACT_MATCH\n" + |
5453 |
"src/b110060/Test.java b110060.Test.aStrangeFieldWith$$$$$$$$$$$$$$$SeveraContiguousDollars [aStrangeFieldWith$$$$$$$$$$$$$$$SeveraContiguousDollars] EXACT_MATCH\n" + |
5454 |
"src/b110060/Test.java void b110060.Test.testReferences() [aStrangeFieldWith$$$$$$$$$$$$$$$SeveraContiguousDollars] EXACT_MATCH" |
5454 |
"src/b110060/Test.java void b110060.Test.testReferences() [aStrangeFieldWith$$$$$$$$$$$$$$$SeveraContiguousDollars] EXACT_MATCH" |
5455 |
); |
5455 |
); |
5456 |
} |
5456 |
} |
Lines 5459-5466
Link Here
|
5459 |
setUpBug110060_FieldPattern(); |
5459 |
setUpBug110060_FieldPattern(); |
5460 |
search("oF", FIELD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5460 |
search("oF", FIELD, ALL_OCCURRENCES, SearchPattern.R_CAMELCASE_MATCH); |
5461 |
assertSearchResults( |
5461 |
assertSearchResults( |
5462 |
"src/b110060/Test.java b110060.Test.otherFieldWhichStartsWithAnotherLetter [otherFieldWhichStartsWithAnotherLetter] EXACT_MATCH\n" + |
5462 |
"src/b110060/Test.java b110060.Test.otherFieldWhichStartsWithAnotherLetter [otherFieldWhichStartsWithAnotherLetter] EXACT_MATCH\n" + |
5463 |
"src/b110060/Test.java b110060.Test.oF [oF] EXACT_MATCH\n" + |
5463 |
"src/b110060/Test.java b110060.Test.oF [oF] EXACT_MATCH\n" + |
5464 |
"src/b110060/Test.java b110060.Test.oF [otherFieldWhichStartsWithAnotherLetter] EXACT_MATCH" |
5464 |
"src/b110060/Test.java b110060.Test.oF [otherFieldWhichStartsWithAnotherLetter] EXACT_MATCH" |
5465 |
); |
5465 |
); |
5466 |
} |
5466 |
} |
Lines 5472-5479
Link Here
|
5472 |
public void testBug110291() throws CoreException { |
5472 |
public void testBug110291() throws CoreException { |
5473 |
workingCopies = new ICompilationUnit[1]; |
5473 |
workingCopies = new ICompilationUnit[1]; |
5474 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110291/Test110291XX.java", |
5474 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110291/Test110291XX.java", |
5475 |
"package b110291;\n" + |
5475 |
"package b110291;\n" + |
5476 |
"public class Test110291XX {\n" + |
5476 |
"public class Test110291XX {\n" + |
5477 |
" class Test110291YY {}" + |
5477 |
" class Test110291YY {}" + |
5478 |
"}\n" |
5478 |
"}\n" |
5479 |
); |
5479 |
); |
Lines 5490-5513
Link Here
|
5490 |
public void testBug110336a() throws CoreException { |
5490 |
public void testBug110336a() throws CoreException { |
5491 |
workingCopies = new ICompilationUnit[1]; |
5491 |
workingCopies = new ICompilationUnit[1]; |
5492 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5492 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5493 |
"package b110336;\n" + |
5493 |
"package b110336;\n" + |
5494 |
"public class Test {\n" + |
5494 |
"public class Test {\n" + |
5495 |
" <TP extends Test> void method(Class<Test> clazz) {\n" + |
5495 |
" <TP extends Test> void method(Class<Test> clazz) {\n" + |
5496 |
" Test localVar1 = new Test();\n" + |
5496 |
" Test localVar1 = new Test();\n" + |
5497 |
" Class<Test> localVar2 = new Class<Test>();\n" + |
5497 |
" Class<Test> localVar2 = new Class<Test>();\n" + |
5498 |
" localVar1.method(localVar2);\n" + |
5498 |
" localVar1.method(localVar2);\n" + |
5499 |
" }\n" + |
5499 |
" }\n" + |
5500 |
"}\n" |
5500 |
"}\n" |
5501 |
); |
5501 |
); |
5502 |
IType type = this.workingCopies[0].getType("Test"); |
5502 |
IType type = this.workingCopies[0].getType("Test"); |
5503 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5503 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5504 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5504 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5505 |
assertSearchResults( |
5505 |
assertSearchResults( |
5506 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).TP [Test]\n" + |
5506 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).TP [Test]\n" + |
5507 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).clazz [Test]\n" + |
5507 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).clazz [Test]\n" + |
5508 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).localVar1 [Test]\n" + |
5508 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).localVar1 [Test]\n" + |
5509 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).localVar1 [Test]\n" + |
5509 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).localVar1 [Test]\n" + |
5510 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).localVar2 [Test]\n" + |
5510 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).localVar2 [Test]\n" + |
5511 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).localVar2 [Test]", |
5511 |
"src/b110336/Test.java void b110336.Test.method(Class<Test>).localVar2 [Test]", |
5512 |
collector |
5512 |
collector |
5513 |
); |
5513 |
); |
Lines 5515-5542
Link Here
|
5515 |
public void testBug110336b() throws CoreException { |
5515 |
public void testBug110336b() throws CoreException { |
5516 |
workingCopies = new ICompilationUnit[1]; |
5516 |
workingCopies = new ICompilationUnit[1]; |
5517 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5517 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5518 |
"package b110336;\n" + |
5518 |
"package b110336;\n" + |
5519 |
"public class Test {\n" + |
5519 |
"public class Test {\n" + |
5520 |
" void method1(Test methodParam) {\n" + |
5520 |
" void method1(Test methodParam) {\n" + |
5521 |
" Test localVar1 = new Test(){\n" + |
5521 |
" Test localVar1 = new Test(){\n" + |
5522 |
" Class c = Test.class;\n" + |
5522 |
" Class c = Test.class;\n" + |
5523 |
" <TP extends Test> void foo(){\n" + |
5523 |
" <TP extends Test> void foo(){\n" + |
5524 |
" Test o = (Test) null;\n" + |
5524 |
" Test o = (Test) null;\n" + |
5525 |
" }\n" + |
5525 |
" }\n" + |
5526 |
" };\n" + |
5526 |
" };\n" + |
5527 |
" } \n" + |
5527 |
" } \n" + |
5528 |
"}\n" |
5528 |
"}\n" |
5529 |
); |
5529 |
); |
5530 |
IType type = this.workingCopies[0].getType("Test"); |
5530 |
IType type = this.workingCopies[0].getType("Test"); |
5531 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5531 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5532 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5532 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5533 |
assertSearchResults( |
5533 |
assertSearchResults( |
5534 |
"src/b110336/Test.java void b110336.Test.method1(Test):<anonymous>#1 [Test]\n" + |
5534 |
"src/b110336/Test.java void b110336.Test.method1(Test):<anonymous>#1 [Test]\n" + |
5535 |
"src/b110336/Test.java void b110336.Test.method1(Test):<anonymous>#1.c [Test]\n" + |
5535 |
"src/b110336/Test.java void b110336.Test.method1(Test):<anonymous>#1.c [Test]\n" + |
5536 |
"src/b110336/Test.java void void b110336.Test.method1(Test):<anonymous>#1.foo().TP [Test]\n" + |
5536 |
"src/b110336/Test.java void void b110336.Test.method1(Test):<anonymous>#1.foo().TP [Test]\n" + |
5537 |
"src/b110336/Test.java void void b110336.Test.method1(Test):<anonymous>#1.foo().o [Test]\n" + |
5537 |
"src/b110336/Test.java void void b110336.Test.method1(Test):<anonymous>#1.foo().o [Test]\n" + |
5538 |
"src/b110336/Test.java void void b110336.Test.method1(Test):<anonymous>#1.foo().o [Test]\n" + |
5538 |
"src/b110336/Test.java void void b110336.Test.method1(Test):<anonymous>#1.foo().o [Test]\n" + |
5539 |
"src/b110336/Test.java void b110336.Test.method1(Test).methodParam [Test]\n" + |
5539 |
"src/b110336/Test.java void b110336.Test.method1(Test).methodParam [Test]\n" + |
5540 |
"src/b110336/Test.java void b110336.Test.method1(Test).localVar1 [Test]", |
5540 |
"src/b110336/Test.java void b110336.Test.method1(Test).localVar1 [Test]", |
5541 |
collector |
5541 |
collector |
5542 |
); |
5542 |
); |
Lines 5544-5561
Link Here
|
5544 |
public void testBug110336c() throws CoreException { |
5544 |
public void testBug110336c() throws CoreException { |
5545 |
workingCopies = new ICompilationUnit[1]; |
5545 |
workingCopies = new ICompilationUnit[1]; |
5546 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5546 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5547 |
"package b110336;\n" + |
5547 |
"package b110336;\n" + |
5548 |
"public class Test<TP extends X> {\n" + |
5548 |
"public class Test<TP extends X> {\n" + |
5549 |
" X x;\n" + |
5549 |
" X x;\n" + |
5550 |
"\n" + |
5550 |
"\n" + |
5551 |
"}\n" + |
5551 |
"}\n" + |
5552 |
"class X {}\n" |
5552 |
"class X {}\n" |
5553 |
); |
5553 |
); |
5554 |
IType type = this.workingCopies[0].getType("X"); |
5554 |
IType type = this.workingCopies[0].getType("X"); |
5555 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5555 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5556 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5556 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5557 |
assertSearchResults( |
5557 |
assertSearchResults( |
5558 |
"src/b110336/Test.java b110336.Test.TP [X]\n" + |
5558 |
"src/b110336/Test.java b110336.Test.TP [X]\n" + |
5559 |
"src/b110336/Test.java b110336.Test.x [X]", |
5559 |
"src/b110336/Test.java b110336.Test.x [X]", |
5560 |
collector |
5560 |
collector |
5561 |
); |
5561 |
); |
Lines 5563-5584
Link Here
|
5563 |
public void testBug110336d() throws CoreException { |
5563 |
public void testBug110336d() throws CoreException { |
5564 |
workingCopies = new ICompilationUnit[1]; |
5564 |
workingCopies = new ICompilationUnit[1]; |
5565 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5565 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5566 |
"package b110336;\n" + |
5566 |
"package b110336;\n" + |
5567 |
"public class Test {\n" + |
5567 |
"public class Test {\n" + |
5568 |
" Test a1Test = null, b1Test = new Test(), c1Test;\n" + |
5568 |
" Test a1Test = null, b1Test = new Test(), c1Test;\n" + |
5569 |
" Test a2Test = new Test(), b2Test, c2Test = null;\n" + |
5569 |
" Test a2Test = new Test(), b2Test, c2Test = null;\n" + |
5570 |
" Test a3Test, b3Test = null, c3Test = new Test();\n" + |
5570 |
" Test a3Test, b3Test = null, c3Test = new Test();\n" + |
5571 |
"}\n" |
5571 |
"}\n" |
5572 |
); |
5572 |
); |
5573 |
IType type = this.workingCopies[0].getType("Test"); |
5573 |
IType type = this.workingCopies[0].getType("Test"); |
5574 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5574 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5575 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5575 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5576 |
assertSearchResults( |
5576 |
assertSearchResults( |
5577 |
"src/b110336/Test.java b110336.Test.a1Test [Test]+[b1Test,c1Test]\n" + |
5577 |
"src/b110336/Test.java b110336.Test.a1Test [Test]+[b1Test,c1Test]\n" + |
5578 |
"src/b110336/Test.java b110336.Test.b1Test [Test]\n" + |
5578 |
"src/b110336/Test.java b110336.Test.b1Test [Test]\n" + |
5579 |
"src/b110336/Test.java b110336.Test.a2Test [Test]+[b2Test,c2Test]\n" + |
5579 |
"src/b110336/Test.java b110336.Test.a2Test [Test]+[b2Test,c2Test]\n" + |
5580 |
"src/b110336/Test.java b110336.Test.a2Test [Test]\n" + |
5580 |
"src/b110336/Test.java b110336.Test.a2Test [Test]\n" + |
5581 |
"src/b110336/Test.java b110336.Test.a3Test [Test]+[b3Test,c3Test]\n" + |
5581 |
"src/b110336/Test.java b110336.Test.a3Test [Test]+[b3Test,c3Test]\n" + |
5582 |
"src/b110336/Test.java b110336.Test.c3Test [Test]", |
5582 |
"src/b110336/Test.java b110336.Test.c3Test [Test]", |
5583 |
collector |
5583 |
collector |
5584 |
); |
5584 |
); |
Lines 5586-5609
Link Here
|
5586 |
public void testBug110336e() throws CoreException { |
5586 |
public void testBug110336e() throws CoreException { |
5587 |
workingCopies = new ICompilationUnit[1]; |
5587 |
workingCopies = new ICompilationUnit[1]; |
5588 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5588 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5589 |
"package b110336;\n" + |
5589 |
"package b110336;\n" + |
5590 |
"public class Test {\n" + |
5590 |
"public class Test {\n" + |
5591 |
" void foo() {\n" + |
5591 |
" void foo() {\n" + |
5592 |
" Test lv1 = null, lv2 = new Test(), lv3;\n" + |
5592 |
" Test lv1 = null, lv2 = new Test(), lv3;\n" + |
5593 |
" Test lv4 = new Test(), lv5, lv6 = null;\n" + |
5593 |
" Test lv4 = new Test(), lv5, lv6 = null;\n" + |
5594 |
" Test lv7, lv8 = null, lv9 = new Test();\n" + |
5594 |
" Test lv7, lv8 = null, lv9 = new Test();\n" + |
5595 |
" }\n" + |
5595 |
" }\n" + |
5596 |
"}\n" |
5596 |
"}\n" |
5597 |
); |
5597 |
); |
5598 |
IType type = this.workingCopies[0].getType("Test"); |
5598 |
IType type = this.workingCopies[0].getType("Test"); |
5599 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5599 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5600 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5600 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5601 |
assertSearchResults( |
5601 |
assertSearchResults( |
5602 |
"src/b110336/Test.java void b110336.Test.foo().lv1 [Test]+[lv2,lv3]\n" + |
5602 |
"src/b110336/Test.java void b110336.Test.foo().lv1 [Test]+[lv2,lv3]\n" + |
5603 |
"src/b110336/Test.java void b110336.Test.foo().lv2 [Test]\n" + |
5603 |
"src/b110336/Test.java void b110336.Test.foo().lv2 [Test]\n" + |
5604 |
"src/b110336/Test.java void b110336.Test.foo().lv4 [Test]+[lv5,lv6]\n" + |
5604 |
"src/b110336/Test.java void b110336.Test.foo().lv4 [Test]+[lv5,lv6]\n" + |
5605 |
"src/b110336/Test.java void b110336.Test.foo().lv4 [Test]\n" + |
5605 |
"src/b110336/Test.java void b110336.Test.foo().lv4 [Test]\n" + |
5606 |
"src/b110336/Test.java void b110336.Test.foo().lv7 [Test]+[lv8,lv9]\n" + |
5606 |
"src/b110336/Test.java void b110336.Test.foo().lv7 [Test]+[lv8,lv9]\n" + |
5607 |
"src/b110336/Test.java void b110336.Test.foo().lv9 [Test]", |
5607 |
"src/b110336/Test.java void b110336.Test.foo().lv9 [Test]", |
5608 |
collector |
5608 |
collector |
5609 |
); |
5609 |
); |
Lines 5611-5638
Link Here
|
5611 |
public void testBug110336f() throws CoreException { |
5611 |
public void testBug110336f() throws CoreException { |
5612 |
workingCopies = new ICompilationUnit[1]; |
5612 |
workingCopies = new ICompilationUnit[1]; |
5613 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5613 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5614 |
"package b110336;\n" + |
5614 |
"package b110336;\n" + |
5615 |
"public class Test extends Exception {\n" + |
5615 |
"public class Test extends Exception {\n" + |
5616 |
" void foo(Test test1) { // <- no local element\n" + |
5616 |
" void foo(Test test1) { // <- no local element\n" + |
5617 |
" Test test2; // <- local element\n" + |
5617 |
" Test test2; // <- local element\n" + |
5618 |
" try {\n" + |
5618 |
" try {\n" + |
5619 |
" throw new Test();\n" + |
5619 |
" throw new Test();\n" + |
5620 |
" }\n" + |
5620 |
" }\n" + |
5621 |
" catch (Test test4) { // <- no local element\n" + |
5621 |
" catch (Test test4) { // <- no local element\n" + |
5622 |
" }\n" + |
5622 |
" }\n" + |
5623 |
" for(Test test3;;) {} // <- local element\n" + |
5623 |
" for(Test test3;;) {} // <- local element\n" + |
5624 |
" }\n" + |
5624 |
" }\n" + |
5625 |
"\n" + |
5625 |
"\n" + |
5626 |
"}\n" |
5626 |
"}\n" |
5627 |
); |
5627 |
); |
5628 |
IType type = this.workingCopies[0].getType("Test"); |
5628 |
IType type = this.workingCopies[0].getType("Test"); |
5629 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5629 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5630 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5630 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5631 |
assertSearchResults( |
5631 |
assertSearchResults( |
5632 |
"src/b110336/Test.java void b110336.Test.foo(Test).test1 [Test]\n" + |
5632 |
"src/b110336/Test.java void b110336.Test.foo(Test).test1 [Test]\n" + |
5633 |
"src/b110336/Test.java void b110336.Test.foo(Test).test2 [Test]\n" + |
5633 |
"src/b110336/Test.java void b110336.Test.foo(Test).test2 [Test]\n" + |
5634 |
"src/b110336/Test.java void b110336.Test.foo(Test) [Test]\n" + |
5634 |
"src/b110336/Test.java void b110336.Test.foo(Test) [Test]\n" + |
5635 |
"src/b110336/Test.java void b110336.Test.foo(Test).test4 [Test]\n" + |
5635 |
"src/b110336/Test.java void b110336.Test.foo(Test).test4 [Test]\n" + |
5636 |
"src/b110336/Test.java void b110336.Test.foo(Test).test3 [Test]", |
5636 |
"src/b110336/Test.java void b110336.Test.foo(Test).test3 [Test]", |
5637 |
collector |
5637 |
collector |
5638 |
); |
5638 |
); |
Lines 5640-5663
Link Here
|
5640 |
public void testBug110336g() throws CoreException { |
5640 |
public void testBug110336g() throws CoreException { |
5641 |
workingCopies = new ICompilationUnit[1]; |
5641 |
workingCopies = new ICompilationUnit[1]; |
5642 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5642 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5643 |
"package b110336;\n" + |
5643 |
"package b110336;\n" + |
5644 |
"public class Test {\n" + |
5644 |
"public class Test {\n" + |
5645 |
" {\n" + |
5645 |
" {\n" + |
5646 |
" Test lv1 = null, lv2 = new Test(), lv3;\n" + |
5646 |
" Test lv1 = null, lv2 = new Test(), lv3;\n" + |
5647 |
" Test lv4 = new Test(), lv5, lv6 = null;\n" + |
5647 |
" Test lv4 = new Test(), lv5, lv6 = null;\n" + |
5648 |
" Test lv7, lv8 = null, lv9 = new Test();\n" + |
5648 |
" Test lv7, lv8 = null, lv9 = new Test();\n" + |
5649 |
" }\n" + |
5649 |
" }\n" + |
5650 |
"}\n" |
5650 |
"}\n" |
5651 |
); |
5651 |
); |
5652 |
IType type = this.workingCopies[0].getType("Test"); |
5652 |
IType type = this.workingCopies[0].getType("Test"); |
5653 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5653 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5654 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5654 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5655 |
assertSearchResults( |
5655 |
assertSearchResults( |
5656 |
"src/b110336/Test.java b110336.Test.{}.lv1 [Test]+[lv2,lv3]\n" + |
5656 |
"src/b110336/Test.java b110336.Test.{}.lv1 [Test]+[lv2,lv3]\n" + |
5657 |
"src/b110336/Test.java b110336.Test.{}.lv2 [Test]\n" + |
5657 |
"src/b110336/Test.java b110336.Test.{}.lv2 [Test]\n" + |
5658 |
"src/b110336/Test.java b110336.Test.{}.lv4 [Test]+[lv5,lv6]\n" + |
5658 |
"src/b110336/Test.java b110336.Test.{}.lv4 [Test]+[lv5,lv6]\n" + |
5659 |
"src/b110336/Test.java b110336.Test.{}.lv4 [Test]\n" + |
5659 |
"src/b110336/Test.java b110336.Test.{}.lv4 [Test]\n" + |
5660 |
"src/b110336/Test.java b110336.Test.{}.lv7 [Test]+[lv8,lv9]\n" + |
5660 |
"src/b110336/Test.java b110336.Test.{}.lv7 [Test]+[lv8,lv9]\n" + |
5661 |
"src/b110336/Test.java b110336.Test.{}.lv9 [Test]", |
5661 |
"src/b110336/Test.java b110336.Test.{}.lv9 [Test]", |
5662 |
collector |
5662 |
collector |
5663 |
); |
5663 |
); |
Lines 5665-5688
Link Here
|
5665 |
public void testBug110336h() throws CoreException { |
5665 |
public void testBug110336h() throws CoreException { |
5666 |
workingCopies = new ICompilationUnit[1]; |
5666 |
workingCopies = new ICompilationUnit[1]; |
5667 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5667 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b110336/Test.java", |
5668 |
"package b110336;\n" + |
5668 |
"package b110336;\n" + |
5669 |
"public class Test {\n" + |
5669 |
"public class Test {\n" + |
5670 |
" static {\n" + |
5670 |
" static {\n" + |
5671 |
" Test lv1 = null, lv2 = new Test(), lv3;\n" + |
5671 |
" Test lv1 = null, lv2 = new Test(), lv3;\n" + |
5672 |
" Test lv4 = new Test(), lv5, lv6 = null;\n" + |
5672 |
" Test lv4 = new Test(), lv5, lv6 = null;\n" + |
5673 |
" Test lv7, lv8 = null, lv9 = new Test();\n" + |
5673 |
" Test lv7, lv8 = null, lv9 = new Test();\n" + |
5674 |
" }\n" + |
5674 |
" }\n" + |
5675 |
"}\n" |
5675 |
"}\n" |
5676 |
); |
5676 |
); |
5677 |
IType type = this.workingCopies[0].getType("Test"); |
5677 |
IType type = this.workingCopies[0].getType("Test"); |
5678 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5678 |
TypeReferencesCollector collector = new TypeReferencesCollector(); |
5679 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5679 |
search(type, REFERENCES, EXACT_RULE, getJavaSearchScopeBugs(), collector); |
5680 |
assertSearchResults( |
5680 |
assertSearchResults( |
5681 |
"src/b110336/Test.java b110336.Test.static {}.lv1 [Test]+[lv2,lv3]\n" + |
5681 |
"src/b110336/Test.java b110336.Test.static {}.lv1 [Test]+[lv2,lv3]\n" + |
5682 |
"src/b110336/Test.java b110336.Test.static {}.lv2 [Test]\n" + |
5682 |
"src/b110336/Test.java b110336.Test.static {}.lv2 [Test]\n" + |
5683 |
"src/b110336/Test.java b110336.Test.static {}.lv4 [Test]+[lv5,lv6]\n" + |
5683 |
"src/b110336/Test.java b110336.Test.static {}.lv4 [Test]+[lv5,lv6]\n" + |
5684 |
"src/b110336/Test.java b110336.Test.static {}.lv4 [Test]\n" + |
5684 |
"src/b110336/Test.java b110336.Test.static {}.lv4 [Test]\n" + |
5685 |
"src/b110336/Test.java b110336.Test.static {}.lv7 [Test]+[lv8,lv9]\n" + |
5685 |
"src/b110336/Test.java b110336.Test.static {}.lv7 [Test]+[lv8,lv9]\n" + |
5686 |
"src/b110336/Test.java b110336.Test.static {}.lv9 [Test]", |
5686 |
"src/b110336/Test.java b110336.Test.static {}.lv9 [Test]", |
5687 |
collector |
5687 |
collector |
5688 |
); |
5688 |
); |
Lines 5724-5741
Link Here
|
5724 |
); |
5724 |
); |
5725 |
assertSearchResults( |
5725 |
assertSearchResults( |
5726 |
"Unexpected all type names", |
5726 |
"Unexpected all type names", |
5727 |
"java.lang.CharSequence\n" + |
5727 |
"java.lang.CharSequence\n" + |
5728 |
"java.lang.Class\n" + |
5728 |
"java.lang.Class\n" + |
5729 |
"java.lang.CloneNotSupportedException\n" + |
5729 |
"java.lang.CloneNotSupportedException\n" + |
5730 |
"java.lang.Comparable\n" + |
5730 |
"java.lang.Comparable\n" + |
5731 |
"java.lang.Enum\n" + |
5731 |
"java.lang.Enum\n" + |
5732 |
"java.lang.Error\n" + |
5732 |
"java.lang.Error\n" + |
5733 |
"java.lang.Exception\n" + |
5733 |
"java.lang.Exception\n" + |
5734 |
"java.lang.IllegalMonitorStateException\n" + |
5734 |
"java.lang.IllegalMonitorStateException\n" + |
5735 |
"java.lang.InterruptedException\n" + |
5735 |
"java.lang.InterruptedException\n" + |
5736 |
"java.lang.Object\n" + |
5736 |
"java.lang.Object\n" + |
5737 |
"java.lang.RuntimeException\n" + |
5737 |
"java.lang.RuntimeException\n" + |
5738 |
"java.lang.String\n" + |
5738 |
"java.lang.String\n" + |
5739 |
"java.lang.Throwable", |
5739 |
"java.lang.Throwable", |
5740 |
requestor); |
5740 |
requestor); |
5741 |
} |
5741 |
} |
Lines 5747-5761
Link Here
|
5747 |
public void testBug114539() throws CoreException { |
5747 |
public void testBug114539() throws CoreException { |
5748 |
workingCopies = new ICompilationUnit[2]; |
5748 |
workingCopies = new ICompilationUnit[2]; |
5749 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b114539/Foo.java", |
5749 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b114539/Foo.java", |
5750 |
"package b114539;\n" + |
5750 |
"package b114539;\n" + |
5751 |
"public class Foo {\n" + |
5751 |
"public class Foo {\n" + |
5752 |
" int bar=Bar.FOO;\n" + |
5752 |
" int bar=Bar.FOO;\n" + |
5753 |
"}\n" |
5753 |
"}\n" |
5754 |
); |
5754 |
); |
5755 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b114539/Bar.java", |
5755 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b114539/Bar.java", |
5756 |
"package b114539;\n" + |
5756 |
"package b114539;\n" + |
5757 |
"public class Bar {\n" + |
5757 |
"public class Bar {\n" + |
5758 |
" private static final int FOO=0;\n" + |
5758 |
" private static final int FOO=0;\n" + |
5759 |
"}\n" |
5759 |
"}\n" |
5760 |
); |
5760 |
); |
5761 |
IField field = this.workingCopies[1].getType("Bar").getField("FOO"); |
5761 |
IField field = this.workingCopies[1].getType("Bar").getField("FOO"); |
Lines 5772-5790
Link Here
|
5772 |
public void testBug116459() throws CoreException { |
5772 |
public void testBug116459() throws CoreException { |
5773 |
workingCopies = new ICompilationUnit[1]; |
5773 |
workingCopies = new ICompilationUnit[1]; |
5774 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/p1/X.java", |
5774 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/p1/X.java", |
5775 |
"package p1;\n" + |
5775 |
"package p1;\n" + |
5776 |
"class X<T> {\n" + |
5776 |
"class X<T> {\n" + |
5777 |
" X<T> gen;\n" + |
5777 |
" X<T> gen;\n" + |
5778 |
" X<String> param;\n" + |
5778 |
" X<String> param;\n" + |
5779 |
" X raw;\n" + |
5779 |
" X raw;\n" + |
5780 |
"}" |
5780 |
"}" |
5781 |
); |
5781 |
); |
5782 |
IType type = workingCopies[0].getType("X"); |
5782 |
IType type = workingCopies[0].getType("X"); |
5783 |
this.resultCollector.showRule = true; |
5783 |
this.resultCollector.showRule = true; |
5784 |
search(type, REFERENCES, ERASURE_RULE); |
5784 |
search(type, REFERENCES, ERASURE_RULE); |
5785 |
assertSearchResults( |
5785 |
assertSearchResults( |
5786 |
"src/p1/X.java p1.X.gen [X] EXACT_MATCH\n" + |
5786 |
"src/p1/X.java p1.X.gen [X] EXACT_MATCH\n" + |
5787 |
"src/p1/X.java p1.X.param [X] ERASURE_MATCH\n" + |
5787 |
"src/p1/X.java p1.X.param [X] ERASURE_MATCH\n" + |
5788 |
"src/p1/X.java p1.X.raw [X] ERASURE_RAW_MATCH" |
5788 |
"src/p1/X.java p1.X.raw [X] ERASURE_RAW_MATCH" |
5789 |
); |
5789 |
); |
5790 |
} |
5790 |
} |
Lines 5796-5806
Link Here
|
5796 |
public void testBug119545() throws CoreException { |
5796 |
public void testBug119545() throws CoreException { |
5797 |
workingCopies = new ICompilationUnit[1]; |
5797 |
workingCopies = new ICompilationUnit[1]; |
5798 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b119545/Test.java", |
5798 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b119545/Test.java", |
5799 |
"package b119545;\n" + |
5799 |
"package b119545;\n" + |
5800 |
"class Test {\n" + |
5800 |
"class Test {\n" + |
5801 |
" void foo(Object o1, Object o2){\n" + |
5801 |
" void foo(Object o1, Object o2){\n" + |
5802 |
" if (o1.equals(o2)) {}\n" + |
5802 |
" if (o1.equals(o2)) {}\n" + |
5803 |
" }\n" + |
5803 |
" }\n" + |
5804 |
"}\n" |
5804 |
"}\n" |
5805 |
); |
5805 |
); |
5806 |
IType type = workingCopies[0].getType("Test"); |
5806 |
IType type = workingCopies[0].getType("Test"); |
Lines 5818-5835
Link Here
|
5818 |
public void testBug120816a() throws CoreException { |
5818 |
public void testBug120816a() throws CoreException { |
5819 |
workingCopies = new ICompilationUnit[2]; |
5819 |
workingCopies = new ICompilationUnit[2]; |
5820 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b120816/Test.java", |
5820 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b120816/Test.java", |
5821 |
"package b120816;\n" + |
5821 |
"package b120816;\n" + |
5822 |
"public class Test<E> {\n" + |
5822 |
"public class Test<E> {\n" + |
5823 |
" String foo(E e) { return \"\"; }\n" + |
5823 |
" String foo(E e) { return \"\"; }\n" + |
5824 |
"}\n" |
5824 |
"}\n" |
5825 |
); |
5825 |
); |
5826 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b120816/Sub.java", |
5826 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b120816/Sub.java", |
5827 |
"package b120816;\n" + |
5827 |
"package b120816;\n" + |
5828 |
"public class Sub extends Test<Exception> {\n" + |
5828 |
"public class Sub extends Test<Exception> {\n" + |
5829 |
" String foo(RuntimeException e) { return \"\"; }\n" + |
5829 |
" String foo(RuntimeException e) { return \"\"; }\n" + |
5830 |
" String foo(Exception e) {\n" + |
5830 |
" String foo(Exception e) {\n" + |
5831 |
" return super.foo(e);\n" + |
5831 |
" return super.foo(e);\n" + |
5832 |
" }\n" + |
5832 |
" }\n" + |
5833 |
"}\n" |
5833 |
"}\n" |
5834 |
); |
5834 |
); |
5835 |
search("* String (Exception)", METHOD, DECLARATIONS); |
5835 |
search("* String (Exception)", METHOD, DECLARATIONS); |
Lines 5840-5854
Link Here
|
5840 |
public void testBug120816b() throws CoreException { |
5840 |
public void testBug120816b() throws CoreException { |
5841 |
workingCopies = new ICompilationUnit[1]; |
5841 |
workingCopies = new ICompilationUnit[1]; |
5842 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b120816/Test.java", |
5842 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b120816/Test.java", |
5843 |
"package b120816;\n" + |
5843 |
"package b120816;\n" + |
5844 |
"public class Test<E> {\n" + |
5844 |
"public class Test<E> {\n" + |
5845 |
" String foo(E e) { return \"\"; }\n" + |
5845 |
" String foo(E e) { return \"\"; }\n" + |
5846 |
"}\n" + |
5846 |
"}\n" + |
5847 |
"class Sub extends Test<Exception> {\n" + |
5847 |
"class Sub extends Test<Exception> {\n" + |
5848 |
" String foo(RuntimeException e) { return \"\"; }\n" + |
5848 |
" String foo(RuntimeException e) { return \"\"; }\n" + |
5849 |
" String foo(Exception e) {\n" + |
5849 |
" String foo(Exception e) {\n" + |
5850 |
" return super.foo(e);\n" + |
5850 |
" return super.foo(e);\n" + |
5851 |
" }\n" + |
5851 |
" }\n" + |
5852 |
"}\n" |
5852 |
"}\n" |
5853 |
); |
5853 |
); |
5854 |
search("* String (Exception)", METHOD, DECLARATIONS); |
5854 |
search("* String (Exception)", METHOD, DECLARATIONS); |
Lines 5864-5878
Link Here
|
5864 |
private void setUpBug122442a() throws CoreException { |
5864 |
private void setUpBug122442a() throws CoreException { |
5865 |
workingCopies = new ICompilationUnit[3]; |
5865 |
workingCopies = new ICompilationUnit[3]; |
5866 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b122442/I.java", |
5866 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b122442/I.java", |
5867 |
"package b122442;\n" + |
5867 |
"package b122442;\n" + |
5868 |
"public interface I {}\n" |
5868 |
"public interface I {}\n" |
5869 |
); |
5869 |
); |
5870 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b122442/II.java", |
5870 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b122442/II.java", |
5871 |
"package b122442;\n" + |
5871 |
"package b122442;\n" + |
5872 |
"public interface II extends I {}\n" |
5872 |
"public interface II extends I {}\n" |
5873 |
); |
5873 |
); |
5874 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b122442/X.java", |
5874 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b122442/X.java", |
5875 |
"package b122442;\n" + |
5875 |
"package b122442;\n" + |
5876 |
"public class X implements I {}\n" |
5876 |
"public class X implements I {}\n" |
5877 |
); |
5877 |
); |
5878 |
} |
5878 |
} |
Lines 5880-5886
Link Here
|
5880 |
setUpBug122442a(); |
5880 |
setUpBug122442a(); |
5881 |
search("I", TYPE, IMPLEMENTORS); |
5881 |
search("I", TYPE, IMPLEMENTORS); |
5882 |
assertSearchResults( |
5882 |
assertSearchResults( |
5883 |
"src/b122442/II.java b122442.II [I] EXACT_MATCH\n" + |
5883 |
"src/b122442/II.java b122442.II [I] EXACT_MATCH\n" + |
5884 |
"src/b122442/X.java b122442.X [I] EXACT_MATCH" |
5884 |
"src/b122442/X.java b122442.X [I] EXACT_MATCH" |
5885 |
); |
5885 |
); |
5886 |
} |
5886 |
} |
Lines 5901-5914
Link Here
|
5901 |
private void setUpBug122442d() throws CoreException { |
5901 |
private void setUpBug122442d() throws CoreException { |
5902 |
workingCopies = new ICompilationUnit[1]; |
5902 |
workingCopies = new ICompilationUnit[1]; |
5903 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b122442/User.java", |
5903 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b122442/User.java", |
5904 |
"class Klass {}\n" + |
5904 |
"class Klass {}\n" + |
5905 |
"interface Interface {}\n" + |
5905 |
"interface Interface {}\n" + |
5906 |
"class User {\n" + |
5906 |
"class User {\n" + |
5907 |
" void m() {\n" + |
5907 |
" void m() {\n" + |
5908 |
" new Klass() {};\n" + |
5908 |
" new Klass() {};\n" + |
5909 |
" new Interface() {};\n" + |
5909 |
" new Interface() {};\n" + |
5910 |
" }\n" + |
5910 |
" }\n" + |
5911 |
"}\n" + |
5911 |
"}\n" + |
5912 |
"class Sub extends Klass {}" |
5912 |
"class Sub extends Klass {}" |
5913 |
); |
5913 |
); |
5914 |
} |
5914 |
} |
Lines 5937-5943
Link Here
|
5937 |
setUpBug122442d(); |
5937 |
setUpBug122442d(); |
5938 |
search("Klass", TYPE, IMPLEMENTORS); |
5938 |
search("Klass", TYPE, IMPLEMENTORS); |
5939 |
assertSearchResults( |
5939 |
assertSearchResults( |
5940 |
"src/b122442/User.java void b122442.User.m():<anonymous>#1 [Klass] EXACT_MATCH\n" + |
5940 |
"src/b122442/User.java void b122442.User.m():<anonymous>#1 [Klass] EXACT_MATCH\n" + |
5941 |
"src/b122442/User.java b122442.Sub [Klass] EXACT_MATCH" |
5941 |
"src/b122442/User.java b122442.Sub [Klass] EXACT_MATCH" |
5942 |
); |
5942 |
); |
5943 |
} |
5943 |
} |
Lines 5952-5958
Link Here
|
5952 |
setUpBug122442d(); |
5952 |
setUpBug122442d(); |
5953 |
search("Klass", CLASS, IMPLEMENTORS); |
5953 |
search("Klass", CLASS, IMPLEMENTORS); |
5954 |
assertSearchResults( |
5954 |
assertSearchResults( |
5955 |
"src/b122442/User.java void b122442.User.m():<anonymous>#1 [Klass] EXACT_MATCH\n" + |
5955 |
"src/b122442/User.java void b122442.User.m():<anonymous>#1 [Klass] EXACT_MATCH\n" + |
5956 |
"src/b122442/User.java b122442.Sub [Klass] EXACT_MATCH" |
5956 |
"src/b122442/User.java b122442.Sub [Klass] EXACT_MATCH" |
5957 |
); |
5957 |
); |
5958 |
} |
5958 |
} |
Lines 5965-5975
Link Here
|
5965 |
IType type = getPackageFragment("JavaSearchBugs", "lib/b123679.jar", "pack").getClassFile("I123679.class").getType(); |
5965 |
IType type = getPackageFragment("JavaSearchBugs", "lib/b123679.jar", "pack").getClassFile("I123679.class").getType(); |
5966 |
search(type, REFERENCES); |
5966 |
search(type, REFERENCES); |
5967 |
assertSearchResults( |
5967 |
assertSearchResults( |
5968 |
"lib/b123679.jar test.<anonymous> EXACT_MATCH\n" + |
5968 |
"lib/b123679.jar test.<anonymous> EXACT_MATCH\n" + |
5969 |
"lib/b123679.jar test.Test$StaticClass$Member.parent EXACT_MATCH\n" + |
5969 |
"lib/b123679.jar test.Test$StaticClass$Member.parent EXACT_MATCH\n" + |
5970 |
"lib/b123679.jar test.<anonymous> EXACT_MATCH\n" + |
5970 |
"lib/b123679.jar test.<anonymous> EXACT_MATCH\n" + |
5971 |
"lib/b123679.jar test.Test$StaticClass$Member(test.Test.StaticClass, java.lang.Object) EXACT_MATCH\n" + |
5971 |
"lib/b123679.jar test.Test$StaticClass$Member(test.Test.StaticClass, java.lang.Object) EXACT_MATCH\n" + |
5972 |
"lib/b123679.jar test.Test$StaticClass$Member(test.Test.StaticClass, java.lang.Object) EXACT_MATCH\n" + |
5972 |
"lib/b123679.jar test.Test$StaticClass$Member(test.Test.StaticClass, java.lang.Object) EXACT_MATCH\n" + |
5973 |
"lib/b123679.jar pack.I123679 test.Test$StaticClass$Member.getParent() EXACT_MATCH" |
5973 |
"lib/b123679.jar pack.I123679 test.Test$StaticClass$Member.getParent() EXACT_MATCH" |
5974 |
); |
5974 |
); |
5975 |
} |
5975 |
} |
Lines 5978-6017
Link Here
|
5978 |
IType type = unit.getType("I123679"); |
5978 |
IType type = unit.getType("I123679"); |
5979 |
search(type, REFERENCES); |
5979 |
search(type, REFERENCES); |
5980 |
assertSearchResults( |
5980 |
assertSearchResults( |
5981 |
"src/b123679/test/Test.java [b123679.pack.I123679] EXACT_MATCH\n" + |
5981 |
"src/b123679/test/Test.java [b123679.pack.I123679] EXACT_MATCH\n" + |
5982 |
"src/b123679/test/Test.java b123679.test.Test$StaticClass$Member.parent [I123679] EXACT_MATCH\n" + |
5982 |
"src/b123679/test/Test.java b123679.test.Test$StaticClass$Member.parent [I123679] EXACT_MATCH\n" + |
5983 |
"src/b123679/test/Test.java b123679.test.Test$StaticClass$Member(Object):<anonymous>#1 [I123679] EXACT_MATCH\n" + |
5983 |
"src/b123679/test/Test.java b123679.test.Test$StaticClass$Member(Object):<anonymous>#1 [I123679] EXACT_MATCH\n" + |
5984 |
"src/b123679/test/Test.java b123679.test.Test$StaticClass$Member(Object) [I123679] EXACT_MATCH\n" + |
5984 |
"src/b123679/test/Test.java b123679.test.Test$StaticClass$Member(Object) [I123679] EXACT_MATCH\n" + |
5985 |
"src/b123679/test/Test.java b123679.test.Test$StaticClass$Member(Object) [I123679] EXACT_MATCH\n" + |
5985 |
"src/b123679/test/Test.java b123679.test.Test$StaticClass$Member(Object) [I123679] EXACT_MATCH\n" + |
5986 |
"src/b123679/test/Test.java I123679 b123679.test.Test$StaticClass$Member.getParent() [I123679] EXACT_MATCH" |
5986 |
"src/b123679/test/Test.java I123679 b123679.test.Test$StaticClass$Member.getParent() [I123679] EXACT_MATCH" |
5987 |
); |
5987 |
); |
5988 |
} |
5988 |
} |
5989 |
public void testBug123679_wc() throws CoreException { |
5989 |
public void testBug123679_wc() throws CoreException { |
5990 |
workingCopies = new ICompilationUnit[2]; |
5990 |
workingCopies = new ICompilationUnit[2]; |
5991 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/pack/I122679.java", |
5991 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/pack/I122679.java", |
5992 |
"package pack;\n" + |
5992 |
"package pack;\n" + |
5993 |
"public interface I123679 {\n" + |
5993 |
"public interface I123679 {\n" + |
5994 |
"}\n" |
5994 |
"}\n" |
5995 |
); |
5995 |
); |
5996 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/test/Test.java", |
5996 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/test/Test.java", |
5997 |
"package test;\n" + |
5997 |
"package test;\n" + |
5998 |
"import pack.I123679;\n" + |
5998 |
"import pack.I123679;\n" + |
5999 |
"public class Test {\n" + |
5999 |
"public class Test {\n" + |
6000 |
" static class StaticClass {\n" + |
6000 |
" static class StaticClass {\n" + |
6001 |
" class Member {\n" + |
6001 |
" class Member {\n" + |
6002 |
" private I123679 parent;\n" + |
6002 |
" private I123679 parent;\n" + |
6003 |
" Member(Object obj) {\n" + |
6003 |
" Member(Object obj) {\n" + |
6004 |
" if (obj instanceof I123679) {\n" + |
6004 |
" if (obj instanceof I123679) {\n" + |
6005 |
" parent = (I123679) obj;\n" + |
6005 |
" parent = (I123679) obj;\n" + |
6006 |
" } else {\n" + |
6006 |
" } else {\n" + |
6007 |
" parent = new I123679() {};\n" + |
6007 |
" parent = new I123679() {};\n" + |
6008 |
" }\n" + |
6008 |
" }\n" + |
6009 |
" }\n" + |
6009 |
" }\n" + |
6010 |
" I123679 getParent() {\n" + |
6010 |
" I123679 getParent() {\n" + |
6011 |
" return parent;\n" + |
6011 |
" return parent;\n" + |
6012 |
" }\n" + |
6012 |
" }\n" + |
6013 |
" }\n" + |
6013 |
" }\n" + |
6014 |
" }\n" + |
6014 |
" }\n" + |
6015 |
"}\n" |
6015 |
"}\n" |
6016 |
); |
6016 |
); |
6017 |
IType type = workingCopies[0].getType("I123679"); |
6017 |
IType type = workingCopies[0].getType("I123679"); |
Lines 6019-6028
Link Here
|
6019 |
assertSearchResults( |
6019 |
assertSearchResults( |
6020 |
// import reference is not found because package fragment and CU do not exist on disk |
6020 |
// import reference is not found because package fragment and CU do not exist on disk |
6021 |
// So, PackageReferenceLocator.isDeclaringPackageFragment(...) returns false and S.E. misses this match |
6021 |
// So, PackageReferenceLocator.isDeclaringPackageFragment(...) returns false and S.E. misses this match |
6022 |
"src/test/Test.java test.Test$StaticClass$Member.parent [I123679] EXACT_MATCH\n" + |
6022 |
"src/test/Test.java test.Test$StaticClass$Member.parent [I123679] EXACT_MATCH\n" + |
6023 |
"src/test/Test.java test.Test$StaticClass$Member(Object):<anonymous>#1 [I123679] EXACT_MATCH\n" + |
6023 |
"src/test/Test.java test.Test$StaticClass$Member(Object):<anonymous>#1 [I123679] EXACT_MATCH\n" + |
6024 |
"src/test/Test.java test.Test$StaticClass$Member(Object) [I123679] EXACT_MATCH\n" + |
6024 |
"src/test/Test.java test.Test$StaticClass$Member(Object) [I123679] EXACT_MATCH\n" + |
6025 |
"src/test/Test.java test.Test$StaticClass$Member(Object) [I123679] EXACT_MATCH\n" + |
6025 |
"src/test/Test.java test.Test$StaticClass$Member(Object) [I123679] EXACT_MATCH\n" + |
6026 |
"src/test/Test.java I123679 test.Test$StaticClass$Member.getParent() [I123679] EXACT_MATCH" |
6026 |
"src/test/Test.java I123679 test.Test$StaticClass$Member.getParent() [I123679] EXACT_MATCH" |
6027 |
); |
6027 |
); |
6028 |
} |
6028 |
} |
Lines 6035-6082
Link Here
|
6035 |
IType type = getClassFile("JavaSearchBugs", "lib/b124469.jar", "pack", "E.class").getType(); |
6035 |
IType type = getClassFile("JavaSearchBugs", "lib/b124469.jar", "pack", "E.class").getType(); |
6036 |
search(type, REFERENCES); |
6036 |
search(type, REFERENCES); |
6037 |
assertSearchResults( |
6037 |
assertSearchResults( |
6038 |
"lib/b124469.jar pack.E pack.A1.value() EXACT_MATCH\n" + |
6038 |
"lib/b124469.jar pack.E pack.A1.value() EXACT_MATCH\n" + |
6039 |
"lib/b124469.jar pack.E[] pack.A1.list() EXACT_MATCH\n" + |
6039 |
"lib/b124469.jar pack.E[] pack.A1.list() EXACT_MATCH\n" + |
6040 |
"lib/b124469.jar pack.E pack.A2.value() EXACT_MATCH\n" + |
6040 |
"lib/b124469.jar pack.E pack.A2.value() EXACT_MATCH\n" + |
6041 |
"lib/b124469.jar pack.E[] pack.A2.list() EXACT_MATCH\n" + |
6041 |
"lib/b124469.jar pack.E[] pack.A2.list() EXACT_MATCH\n" + |
6042 |
"lib/b124469.jar pack.E pack.A3.value() EXACT_MATCH\n" + |
6042 |
"lib/b124469.jar pack.E pack.A3.value() EXACT_MATCH\n" + |
6043 |
"lib/b124469.jar pack.E[] pack.A3.list() EXACT_MATCH\n" + |
6043 |
"lib/b124469.jar pack.E[] pack.A3.list() EXACT_MATCH\n" + |
6044 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6044 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6045 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6045 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6046 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6046 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6047 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6047 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6048 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6048 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6049 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6049 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6050 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6050 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6051 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6051 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6052 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6052 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6053 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6053 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6054 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6054 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6055 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6055 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6056 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6056 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6057 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6057 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6058 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6058 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6059 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6059 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6060 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6060 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6061 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6061 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6062 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6062 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6063 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6063 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6064 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6064 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6065 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6065 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6066 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6066 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6067 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6067 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6068 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6068 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6069 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6069 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6070 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6070 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6071 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6071 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6072 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6072 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6073 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6073 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6074 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6074 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6075 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6075 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6076 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6076 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6077 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6077 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6078 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6078 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6079 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6079 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6080 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6080 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6081 |
); |
6081 |
); |
6082 |
} |
6082 |
} |
Lines 6084-6093
Link Here
|
6084 |
IType type = getClassFile("JavaSearchBugs", "lib/b124469.jar", "pack", "A1.class").getType(); |
6084 |
IType type = getClassFile("JavaSearchBugs", "lib/b124469.jar", "pack", "A1.class").getType(); |
6085 |
search(type, REFERENCES); |
6085 |
search(type, REFERENCES); |
6086 |
assertSearchResults( |
6086 |
assertSearchResults( |
6087 |
"lib/b124469.jar pack.A1 pack.A2.annot() EXACT_MATCH\n" + |
6087 |
"lib/b124469.jar pack.A1 pack.A2.annot() EXACT_MATCH\n" + |
6088 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6088 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6089 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6089 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6090 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6090 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6091 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6091 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6092 |
); |
6092 |
); |
6093 |
} |
6093 |
} |
Lines 6095-6104
Link Here
|
6095 |
IType type = getClassFile("JavaSearchBugs", "lib/b124469.jar", "pack", "A2.class").getType(); |
6095 |
IType type = getClassFile("JavaSearchBugs", "lib/b124469.jar", "pack", "A2.class").getType(); |
6096 |
search(type, REFERENCES); |
6096 |
search(type, REFERENCES); |
6097 |
assertSearchResults( |
6097 |
assertSearchResults( |
6098 |
"lib/b124469.jar pack.A2 pack.A3.annot() EXACT_MATCH\n" + |
6098 |
"lib/b124469.jar pack.A2 pack.A3.annot() EXACT_MATCH\n" + |
6099 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6099 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6100 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6100 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6101 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6101 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6102 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6102 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6103 |
); |
6103 |
); |
6104 |
} |
6104 |
} |
Lines 6106-6114
Link Here
|
6106 |
IType type = getClassFile("JavaSearchBugs", "lib/b124469.jar", "pack", "A3.class").getType(); |
6106 |
IType type = getClassFile("JavaSearchBugs", "lib/b124469.jar", "pack", "A3.class").getType(); |
6107 |
search(type, REFERENCES); |
6107 |
search(type, REFERENCES); |
6108 |
assertSearchResults( |
6108 |
assertSearchResults( |
6109 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6109 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6110 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6110 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6111 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6111 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6112 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6112 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6113 |
); |
6113 |
); |
6114 |
} |
6114 |
} |
Lines 6117-6124
Link Here
|
6117 |
IField field = type.getField("CC"); |
6117 |
IField field = type.getField("CC"); |
6118 |
search(field, REFERENCES); |
6118 |
search(field, REFERENCES); |
6119 |
assertSearchResults( |
6119 |
assertSearchResults( |
6120 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6120 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6121 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6121 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6122 |
"lib/b124469.jar test.C EXACT_MATCH" |
6122 |
"lib/b124469.jar test.C EXACT_MATCH" |
6123 |
); |
6123 |
); |
6124 |
} |
6124 |
} |
Lines 6127-6134
Link Here
|
6127 |
IField field = type.getField("CF"); |
6127 |
IField field = type.getField("CF"); |
6128 |
search(field, REFERENCES); |
6128 |
search(field, REFERENCES); |
6129 |
assertSearchResults( |
6129 |
assertSearchResults( |
6130 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6130 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6131 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6131 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6132 |
"lib/b124469.jar test.F.field EXACT_MATCH" |
6132 |
"lib/b124469.jar test.F.field EXACT_MATCH" |
6133 |
); |
6133 |
); |
6134 |
} |
6134 |
} |
Lines 6137-6144
Link Here
|
6137 |
IField field = type.getField("CM"); |
6137 |
IField field = type.getField("CM"); |
6138 |
search(field, REFERENCES); |
6138 |
search(field, REFERENCES); |
6139 |
assertSearchResults( |
6139 |
assertSearchResults( |
6140 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6140 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6141 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6141 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6142 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6142 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6143 |
); |
6143 |
); |
6144 |
} |
6144 |
} |
Lines 6163-6173
Link Here
|
6163 |
IField field = type.getField("CAC"); |
6163 |
IField field = type.getField("CAC"); |
6164 |
search(field, REFERENCES); |
6164 |
search(field, REFERENCES); |
6165 |
assertSearchResults( |
6165 |
assertSearchResults( |
6166 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6166 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6167 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6167 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6168 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6168 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6169 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6169 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6170 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6170 |
"lib/b124469.jar test.C EXACT_MATCH\n" + |
6171 |
"lib/b124469.jar test.C EXACT_MATCH" |
6171 |
"lib/b124469.jar test.C EXACT_MATCH" |
6172 |
); |
6172 |
); |
6173 |
} |
6173 |
} |
Lines 6176-6186
Link Here
|
6176 |
IField field = type.getField("CAF"); |
6176 |
IField field = type.getField("CAF"); |
6177 |
search(field, REFERENCES); |
6177 |
search(field, REFERENCES); |
6178 |
assertSearchResults( |
6178 |
assertSearchResults( |
6179 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6179 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6180 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6180 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6181 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6181 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6182 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6182 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6183 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6183 |
"lib/b124469.jar test.F.field EXACT_MATCH\n" + |
6184 |
"lib/b124469.jar test.F.field EXACT_MATCH" |
6184 |
"lib/b124469.jar test.F.field EXACT_MATCH" |
6185 |
); |
6185 |
); |
6186 |
} |
6186 |
} |
Lines 6189-6199
Link Here
|
6189 |
IField field = type.getField("CAM"); |
6189 |
IField field = type.getField("CAM"); |
6190 |
search(field, REFERENCES); |
6190 |
search(field, REFERENCES); |
6191 |
assertSearchResults( |
6191 |
assertSearchResults( |
6192 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6192 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6193 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6193 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6194 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6194 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6195 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6195 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6196 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6196 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH\n" + |
6197 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6197 |
"lib/b124469.jar void test.M.foo() EXACT_MATCH" |
6198 |
); |
6198 |
); |
6199 |
} |
6199 |
} |
Lines 6224-6232
Link Here
|
6224 |
"public class Foo<T> {}" |
6224 |
"public class Foo<T> {}" |
6225 |
); |
6225 |
); |
6226 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/Bar.java", |
6226 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/Bar.java", |
6227 |
"public class Bar {\n" + |
6227 |
"public class Bar {\n" + |
6228 |
" Foo<String> f = new Foo<String>();\n" + |
6228 |
" Foo<String> f = new Foo<String>();\n" + |
6229 |
" Foo f2 = new Foo();\n" + |
6229 |
" Foo f2 = new Foo();\n" + |
6230 |
"}" |
6230 |
"}" |
6231 |
); |
6231 |
); |
6232 |
IType type = workingCopies[0].getType("Foo"); |
6232 |
IType type = workingCopies[0].getType("Foo"); |
Lines 6239-6247
Link Here
|
6239 |
null |
6239 |
null |
6240 |
); |
6240 |
); |
6241 |
assertSearchResults( |
6241 |
assertSearchResults( |
6242 |
"src/Bar.java Bar.f [Foo] ERASURE_MATCH\n" + |
6242 |
"src/Bar.java Bar.f [Foo] ERASURE_MATCH\n" + |
6243 |
"src/Bar.java Bar.f [Foo] ERASURE_MATCH\n" + |
6243 |
"src/Bar.java Bar.f [Foo] ERASURE_MATCH\n" + |
6244 |
"src/Bar.java Bar.f2 [Foo] ERASURE_RAW_MATCH\n" + |
6244 |
"src/Bar.java Bar.f2 [Foo] ERASURE_RAW_MATCH\n" + |
6245 |
"src/Bar.java Bar.f2 [Foo] ERASURE_RAW_MATCH" |
6245 |
"src/Bar.java Bar.f2 [Foo] ERASURE_RAW_MATCH" |
6246 |
); |
6246 |
); |
6247 |
} |
6247 |
} |
Lines 6255-6263
Link Here
|
6255 |
IType type = classFile.getType(); |
6255 |
IType type = classFile.getType(); |
6256 |
search(type, IMPLEMENTORS); |
6256 |
search(type, IMPLEMENTORS); |
6257 |
assertSearchResults( |
6257 |
assertSearchResults( |
6258 |
"src/b124645/xy/X_124645.java b124645.xy.X_124645$Y [BE_124645] EXACT_MATCH\n" + |
6258 |
"src/b124645/xy/X_124645.java b124645.xy.X_124645$Y [BE_124645] EXACT_MATCH\n" + |
6259 |
"src/b124645/xy/Y_124645.java b124645.xy.Y_124645 [BE_124645] EXACT_MATCH\n" + |
6259 |
"src/b124645/xy/Y_124645.java b124645.xy.Y_124645 [BE_124645] EXACT_MATCH\n" + |
6260 |
"lib/b124645.jar xy.BX_124645$Y EXACT_MATCH\n" + |
6260 |
"lib/b124645.jar xy.BX_124645$Y EXACT_MATCH\n" + |
6261 |
"lib/b124645.jar xy.BY_124645 EXACT_MATCH" |
6261 |
"lib/b124645.jar xy.BY_124645 EXACT_MATCH" |
6262 |
); |
6262 |
); |
6263 |
} |
6263 |
} |
Lines 6266-6278
Link Here
|
6266 |
IType type = classFile.getType(); |
6266 |
IType type = classFile.getType(); |
6267 |
search(type, IMPLEMENTORS); |
6267 |
search(type, IMPLEMENTORS); |
6268 |
assertSearchResults( |
6268 |
assertSearchResults( |
6269 |
"src/b124645/test/A_124645.java b124645.test.A_124645 [BE_124645] EXACT_MATCH\n" + |
6269 |
"src/b124645/test/A_124645.java b124645.test.A_124645 [BE_124645] EXACT_MATCH\n" + |
6270 |
"src/b124645/test/A_124645.java void b124645.test.A_124645.m():<anonymous>#1 [BE_124645] EXACT_MATCH\n" + |
6270 |
"src/b124645/test/A_124645.java void b124645.test.A_124645.m():<anonymous>#1 [BE_124645] EXACT_MATCH\n" + |
6271 |
"src/b124645/test/X_124645.java b124645.test.X_124645 [BE_124645] EXACT_MATCH\n" + |
6271 |
"src/b124645/test/X_124645.java b124645.test.X_124645 [BE_124645] EXACT_MATCH\n" + |
6272 |
"src/b124645/test/X_124645.java void b124645.test.X_124645.m():Y_124645#1 [BE_124645] EXACT_MATCH\n" + |
6272 |
"src/b124645/test/X_124645.java void b124645.test.X_124645.m():Y_124645#1 [BE_124645] EXACT_MATCH\n" + |
6273 |
"lib/b124645.jar test.BA_124645 EXACT_MATCH\n" + |
6273 |
"lib/b124645.jar test.BA_124645 EXACT_MATCH\n" + |
6274 |
"lib/b124645.jar test.<anonymous> EXACT_MATCH\n" + |
6274 |
"lib/b124645.jar test.<anonymous> EXACT_MATCH\n" + |
6275 |
"lib/b124645.jar test.BX_124645 EXACT_MATCH\n" + |
6275 |
"lib/b124645.jar test.BX_124645 EXACT_MATCH\n" + |
6276 |
"lib/b124645.jar test.Y EXACT_MATCH" |
6276 |
"lib/b124645.jar test.Y EXACT_MATCH" |
6277 |
); |
6277 |
); |
6278 |
} |
6278 |
} |
Lines 6302-6313
Link Here
|
6302 |
ProblemRequestor problemRequestor = new ProblemRequestor(); |
6302 |
ProblemRequestor problemRequestor = new ProblemRequestor(); |
6303 |
workingCopies = new ICompilationUnit[1]; |
6303 |
workingCopies = new ICompilationUnit[1]; |
6304 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b125178/X.java", |
6304 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b125178/X.java", |
6305 |
"package b125178;\n" + |
6305 |
"package b125178;\n" + |
6306 |
"import pack.age.Test;\n" + |
6306 |
"import pack.age.Test;\n" + |
6307 |
"public class X {\n" + |
6307 |
"public class X {\n" + |
6308 |
" public static void main(String[] args) {\n" + |
6308 |
" public static void main(String[] args) {\n" + |
6309 |
" new Test().foo(100);\n" + |
6309 |
" new Test().foo(100);\n" + |
6310 |
" }\n" + |
6310 |
" }\n" + |
6311 |
"}\n", |
6311 |
"}\n", |
6312 |
newWorkingCopyOwner(problemRequestor) |
6312 |
newWorkingCopyOwner(problemRequestor) |
6313 |
); |
6313 |
); |
Lines 6316-6322
Link Here
|
6316 |
"----------\n", |
6316 |
"----------\n", |
6317 |
problemRequestor.problems.toString() |
6317 |
problemRequestor.problems.toString() |
6318 |
); |
6318 |
); |
6319 |
|
6319 |
|
6320 |
// Get anonymous from |
6320 |
// Get anonymous from |
6321 |
IPackageFragment jar = getPackageFragment("JavaSearchBugs", "lib/b125178.jar", "pack.age"); |
6321 |
IPackageFragment jar = getPackageFragment("JavaSearchBugs", "lib/b125178.jar", "pack.age"); |
6322 |
IJavaElement[] children = jar.getChildren(); |
6322 |
IJavaElement[] children = jar.getChildren(); |
Lines 6353-6361
Link Here
|
6353 |
class DeprecatedTypesRequestor extends SearchTests.SearchTypeNameRequestor { |
6353 |
class DeprecatedTypesRequestor extends SearchTests.SearchTypeNameRequestor { |
6354 |
public void acceptType(int modifiers, char[] packageName, char[] simpleTypeName, char[][] enclosingTypeNames, String path) { |
6354 |
public void acceptType(int modifiers, char[] packageName, char[] simpleTypeName, char[][] enclosingTypeNames, String path) { |
6355 |
if ((modifiers & ClassFileConstants.AccDeprecated) != 0) { |
6355 |
if ((modifiers & ClassFileConstants.AccDeprecated) != 0) { |
6356 |
char[] typeName = |
6356 |
char[] typeName = |
6357 |
CharOperation.concat( |
6357 |
CharOperation.concat( |
6358 |
CharOperation.concatWith(enclosingTypeNames, '$'), |
6358 |
CharOperation.concatWith(enclosingTypeNames, '$'), |
6359 |
simpleTypeName, |
6359 |
simpleTypeName, |
6360 |
'$'); |
6360 |
'$'); |
6361 |
results.addElement(new String(CharOperation.concat(packageName, typeName, '.'))); |
6361 |
results.addElement(new String(CharOperation.concat(packageName, typeName, '.'))); |
Lines 6419-6440
Link Here
|
6419 |
private void setUpBug130390() throws CoreException { |
6419 |
private void setUpBug130390() throws CoreException { |
6420 |
workingCopies = new ICompilationUnit[4]; |
6420 |
workingCopies = new ICompilationUnit[4]; |
6421 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b130390/TZ.java", |
6421 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b130390/TZ.java", |
6422 |
"package b130390;\n" + |
6422 |
"package b130390;\n" + |
6423 |
"public class TZ {\n" + |
6423 |
"public class TZ {\n" + |
6424 |
"}\n" |
6424 |
"}\n" |
6425 |
); |
6425 |
); |
6426 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b130390/TimeZone.java", |
6426 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b130390/TimeZone.java", |
6427 |
"package b130390;\n" + |
6427 |
"package b130390;\n" + |
6428 |
"public class TimeZone{\n" + |
6428 |
"public class TimeZone{\n" + |
6429 |
"}\n" |
6429 |
"}\n" |
6430 |
); |
6430 |
); |
6431 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b130390/Npe.java", |
6431 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b130390/Npe.java", |
6432 |
"package b130390;\n" + |
6432 |
"package b130390;\n" + |
6433 |
"public class Npe {\n" + |
6433 |
"public class Npe {\n" + |
6434 |
"}\n" |
6434 |
"}\n" |
6435 |
); |
6435 |
); |
6436 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b130390/NullPointerException.java", |
6436 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b130390/NullPointerException.java", |
6437 |
"package b130390;\n" + |
6437 |
"package b130390;\n" + |
6438 |
"public class NullPointerException {\n" + |
6438 |
"public class NullPointerException {\n" + |
6439 |
"}\n" |
6439 |
"}\n" |
6440 |
); |
6440 |
); |
Lines 6450-6456
Link Here
|
6450 |
setUpBug130390(); |
6450 |
setUpBug130390(); |
6451 |
search("NPE", TYPE, DECLARATIONS, SearchPattern.R_CAMELCASE_MATCH); |
6451 |
search("NPE", TYPE, DECLARATIONS, SearchPattern.R_CAMELCASE_MATCH); |
6452 |
assertSearchResults( |
6452 |
assertSearchResults( |
6453 |
"src/b130390/Npe.java b130390.Npe [Npe] EXACT_MATCH\n" + |
6453 |
"src/b130390/Npe.java b130390.Npe [Npe] EXACT_MATCH\n" + |
6454 |
"src/b130390/NullPointerException.java b130390.NullPointerException [NullPointerException] EXACT_MATCH" |
6454 |
"src/b130390/NullPointerException.java b130390.NullPointerException [NullPointerException] EXACT_MATCH" |
6455 |
); |
6455 |
); |
6456 |
} |
6456 |
} |
Lines 6486-6492
Link Here
|
6486 |
setUpBug130390(); |
6486 |
setUpBug130390(); |
6487 |
search("TZ", TYPE, DECLARATIONS, SearchPattern.R_CAMELCASE_MATCH | SearchPattern.R_CASE_SENSITIVE); |
6487 |
search("TZ", TYPE, DECLARATIONS, SearchPattern.R_CAMELCASE_MATCH | SearchPattern.R_CASE_SENSITIVE); |
6488 |
assertSearchResults( |
6488 |
assertSearchResults( |
6489 |
"src/b130390/TZ.java b130390.TZ [TZ] EXACT_MATCH\n" + |
6489 |
"src/b130390/TZ.java b130390.TZ [TZ] EXACT_MATCH\n" + |
6490 |
"src/b130390/TimeZone.java b130390.TimeZone [TimeZone] EXACT_MATCH" |
6490 |
"src/b130390/TimeZone.java b130390.TimeZone [TimeZone] EXACT_MATCH" |
6491 |
); |
6491 |
); |
6492 |
} |
6492 |
} |
Lines 6770-6788
Link Here
|
6770 |
public void testBug137984_wc() throws CoreException { |
6770 |
public void testBug137984_wc() throws CoreException { |
6771 |
workingCopies = new ICompilationUnit[1]; |
6771 |
workingCopies = new ICompilationUnit[1]; |
6772 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/CW.java", |
6772 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/CW.java", |
6773 |
"public class CW {\n" + |
6773 |
"public class CW {\n" + |
6774 |
" CW2 c2;\n" + |
6774 |
" CW2 c2;\n" + |
6775 |
" CW2.CW3 c3;\n" + |
6775 |
" CW2.CW3 c3;\n" + |
6776 |
" CW(int c) {\n" + |
6776 |
" CW(int c) {\n" + |
6777 |
" c2 = new CW2(c);\n" + |
6777 |
" c2 = new CW2(c);\n" + |
6778 |
" c3 = c2.new CW3(c);\n" + |
6778 |
" c3 = c2.new CW3(c);\n" + |
6779 |
" }\n" + |
6779 |
" }\n" + |
6780 |
" class CW2 {\n" + |
6780 |
" class CW2 {\n" + |
6781 |
" CW2(int x) {}\n" + |
6781 |
" CW2(int x) {}\n" + |
6782 |
" class CW3 {\n" + |
6782 |
" class CW3 {\n" + |
6783 |
" CW3(int x) {}\n" + |
6783 |
" CW3(int x) {}\n" + |
6784 |
" }\n" + |
6784 |
" }\n" + |
6785 |
" }\n" + |
6785 |
" }\n" + |
6786 |
"}\n" |
6786 |
"}\n" |
6787 |
); |
6787 |
); |
6788 |
IField field = workingCopies[0].getType("CW").getField("c3"); |
6788 |
IField field = workingCopies[0].getType("CW").getField("c3"); |
Lines 6813-6830
Link Here
|
6813 |
public void testBug144044() throws CoreException { |
6813 |
public void testBug144044() throws CoreException { |
6814 |
workingCopies = new ICompilationUnit[2]; |
6814 |
workingCopies = new ICompilationUnit[2]; |
6815 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/test1/p/Test.java", |
6815 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/test1/p/Test.java", |
6816 |
"package test1.p;\n" + |
6816 |
"package test1.p;\n" + |
6817 |
"import test1.q.X;\n" + |
6817 |
"import test1.q.X;\n" + |
6818 |
"public class Test {\n" + |
6818 |
"public class Test {\n" + |
6819 |
" String foo(X val) {\n" + |
6819 |
" String foo(X val) {\n" + |
6820 |
" return val.str;\n" + |
6820 |
" return val.str;\n" + |
6821 |
" }\n" + |
6821 |
" }\n" + |
6822 |
"}\n" |
6822 |
"}\n" |
6823 |
); |
6823 |
); |
6824 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/test1/q/X.java", |
6824 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/test1/q/X.java", |
6825 |
"package test1.q;\n" + |
6825 |
"package test1.q;\n" + |
6826 |
"public class X {\n" + |
6826 |
"public class X {\n" + |
6827 |
" String str;\n" + |
6827 |
" String str;\n" + |
6828 |
"}\n" |
6828 |
"}\n" |
6829 |
); |
6829 |
); |
6830 |
IType type = this.workingCopies[1].getType("X"); |
6830 |
IType type = this.workingCopies[1].getType("X"); |
Lines 6837-6873
Link Here
|
6837 |
public void testBug144044b() throws CoreException { |
6837 |
public void testBug144044b() throws CoreException { |
6838 |
workingCopies = new ICompilationUnit[4]; |
6838 |
workingCopies = new ICompilationUnit[4]; |
6839 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/test2/p/Test.java", |
6839 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/test2/p/Test.java", |
6840 |
"package test2.p;\n" + |
6840 |
"package test2.p;\n" + |
6841 |
"import test2.q.X;\n" + |
6841 |
"import test2.q.X;\n" + |
6842 |
"public class Test {\n" + |
6842 |
"public class Test {\n" + |
6843 |
" X foo() {\n" + |
6843 |
" X foo() {\n" + |
6844 |
" return X.y_field.z_field.x_field.y_field.z_field.x_field;\n" + |
6844 |
" return X.y_field.z_field.x_field.y_field.z_field.x_field;\n" + |
6845 |
" }\n" + |
6845 |
" }\n" + |
6846 |
"}\n" |
6846 |
"}\n" |
6847 |
); |
6847 |
); |
6848 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/test2/q/X.java", |
6848 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/test2/q/X.java", |
6849 |
"package test2.q;\n" + |
6849 |
"package test2.q;\n" + |
6850 |
"public class X {\n" + |
6850 |
"public class X {\n" + |
6851 |
" public static Y y_field;\n" + |
6851 |
" public static Y y_field;\n" + |
6852 |
"}\n" |
6852 |
"}\n" |
6853 |
); |
6853 |
); |
6854 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/test2/q/Y.java", |
6854 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/test2/q/Y.java", |
6855 |
"package test2.q;\n" + |
6855 |
"package test2.q;\n" + |
6856 |
"public class Y {\n" + |
6856 |
"public class Y {\n" + |
6857 |
" public static Z z_field;\n" + |
6857 |
" public static Z z_field;\n" + |
6858 |
"}\n" |
6858 |
"}\n" |
6859 |
); |
6859 |
); |
6860 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/test2/q/Z.java", |
6860 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/test2/q/Z.java", |
6861 |
"package test2.q;\n" + |
6861 |
"package test2.q;\n" + |
6862 |
"public class Z {\n" + |
6862 |
"public class Z {\n" + |
6863 |
" static X x_field;\n" + |
6863 |
" static X x_field;\n" + |
6864 |
"}\n" |
6864 |
"}\n" |
6865 |
); |
6865 |
); |
6866 |
IType type = this.workingCopies[3].getType("Z"); |
6866 |
IType type = this.workingCopies[3].getType("Z"); |
6867 |
IField field = type.getField("x_field"); |
6867 |
IField field = type.getField("x_field"); |
6868 |
search(field, REFERENCES); |
6868 |
search(field, REFERENCES); |
6869 |
assertSearchResults( |
6869 |
assertSearchResults( |
6870 |
"src/test2/p/Test.java X test2.p.Test.foo() [x_field] POTENTIAL_MATCH\n" + |
6870 |
"src/test2/p/Test.java X test2.p.Test.foo() [x_field] POTENTIAL_MATCH\n" + |
6871 |
"src/test2/p/Test.java X test2.p.Test.foo() [x_field] POTENTIAL_MATCH" |
6871 |
"src/test2/p/Test.java X test2.p.Test.foo() [x_field] POTENTIAL_MATCH" |
6872 |
); |
6872 |
); |
6873 |
} |
6873 |
} |
Lines 6883-6890
Link Here
|
6883 |
IMethod method = type.getMethods()[1]; |
6883 |
IMethod method = type.getMethods()[1]; |
6884 |
searchDeclarationsOfReferencedTypes(method, this.resultCollector); |
6884 |
searchDeclarationsOfReferencedTypes(method, this.resultCollector); |
6885 |
assertSearchResults( |
6885 |
assertSearchResults( |
6886 |
""+ getExternalJCLPathString("1.5") + " java.lang.Object EXACT_MATCH\n" + |
6886 |
""+ getExternalJCLPathString("1.5") + " java.lang.Object EXACT_MATCH\n" + |
6887 |
""+ getExternalJCLPathString("1.5") + " java.lang.String EXACT_MATCH\n" + |
6887 |
""+ getExternalJCLPathString("1.5") + " java.lang.String EXACT_MATCH\n" + |
6888 |
"lib/b148215.jar test.def.Reference EXACT_MATCH" |
6888 |
"lib/b148215.jar test.def.Reference EXACT_MATCH" |
6889 |
); |
6889 |
); |
6890 |
} |
6890 |
} |
Lines 6899-6905
Link Here
|
6899 |
IMethod method = type.getMethods()[1]; |
6899 |
IMethod method = type.getMethods()[1]; |
6900 |
searchDeclarationsOfSentMessages(method, this.resultCollector); |
6900 |
searchDeclarationsOfSentMessages(method, this.resultCollector); |
6901 |
assertSearchResults( |
6901 |
assertSearchResults( |
6902 |
"lib/b148215.jar void test.pack.Test.bar(java.lang.String) EXACT_MATCH\n" + |
6902 |
"lib/b148215.jar void test.pack.Test.bar(java.lang.String) EXACT_MATCH\n" + |
6903 |
"lib/b148215.jar void test.pack.Test.bar(test.def.Reference) EXACT_MATCH" |
6903 |
"lib/b148215.jar void test.pack.Test.bar(test.def.Reference) EXACT_MATCH" |
6904 |
); |
6904 |
); |
6905 |
} |
6905 |
} |
Lines 6914-6920
Link Here
|
6914 |
IMethod method = type.getMethods()[1]; |
6914 |
IMethod method = type.getMethods()[1]; |
6915 |
searchDeclarationsOfAccessedFields(method, this.resultCollector); |
6915 |
searchDeclarationsOfAccessedFields(method, this.resultCollector); |
6916 |
assertSearchResults( |
6916 |
assertSearchResults( |
6917 |
"lib/b148215.jar test.pack.Test.sField EXACT_MATCH\n" + |
6917 |
"lib/b148215.jar test.pack.Test.sField EXACT_MATCH\n" + |
6918 |
"lib/b148215.jar test.pack.Test.rField EXACT_MATCH" |
6918 |
"lib/b148215.jar test.pack.Test.rField EXACT_MATCH" |
6919 |
); |
6919 |
); |
6920 |
} |
6920 |
} |
Lines 6933-6951
Link Here
|
6933 |
resultCollector.showRule = true; |
6933 |
resultCollector.showRule = true; |
6934 |
workingCopies = new ICompilationUnit[4]; |
6934 |
workingCopies = new ICompilationUnit[4]; |
6935 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b148380/I.java", |
6935 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b148380/I.java", |
6936 |
"package b148380;\n" + |
6936 |
"package b148380;\n" + |
6937 |
"public interface I {}\n" |
6937 |
"public interface I {}\n" |
6938 |
); |
6938 |
); |
6939 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b148380/X.java", |
6939 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/b148380/X.java", |
6940 |
"package b148380;\n" + |
6940 |
"package b148380;\n" + |
6941 |
"public class X {}\n" |
6941 |
"public class X {}\n" |
6942 |
); |
6942 |
); |
6943 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b148380/Sub.java", |
6943 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/b148380/Sub.java", |
6944 |
"package b148380;\n" + |
6944 |
"package b148380;\n" + |
6945 |
"public class Sub extends X {}\n" |
6945 |
"public class Sub extends X {}\n" |
6946 |
); |
6946 |
); |
6947 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b148380/Y.java", |
6947 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/b148380/Y.java", |
6948 |
"package b148380;\n" + |
6948 |
"package b148380;\n" + |
6949 |
"public class Y {}\n" |
6949 |
"public class Y {}\n" |
6950 |
); |
6950 |
); |
6951 |
IJavaSearchScope scope = getJavaSearchScopeBugs(); |
6951 |
IJavaSearchScope scope = getJavaSearchScopeBugs(); |
Lines 6960-6968
Link Here
|
6960 |
requestor1, |
6960 |
requestor1, |
6961 |
IJavaSearchConstants.WAIT_UNTIL_READY_TO_SEARCH, |
6961 |
IJavaSearchConstants.WAIT_UNTIL_READY_TO_SEARCH, |
6962 |
null); |
6962 |
null); |
6963 |
String expected = "class Sub [in [Working copy] Sub.java [in b148380 [in src [in JavaSearchBugs]]]]\n" + |
6963 |
String expected = "class Sub [in [Working copy] Sub.java [in b148380 [in src [in JavaSearchBugs]]]]\n" + |
6964 |
"class X [in [Working copy] X.java [in b148380 [in src [in JavaSearchBugs]]]]\n" + |
6964 |
"class X [in [Working copy] X.java [in b148380 [in src [in JavaSearchBugs]]]]\n" + |
6965 |
"class Y [in [Working copy] Y.java [in b148380 [in src [in JavaSearchBugs]]]]\n" + |
6965 |
"class Y [in [Working copy] Y.java [in b148380 [in src [in JavaSearchBugs]]]]\n" + |
6966 |
"interface I [in [Working copy] I.java [in b148380 [in src [in JavaSearchBugs]]]]"; |
6966 |
"interface I [in [Working copy] I.java [in b148380 [in src [in JavaSearchBugs]]]]"; |
6967 |
assertSearchResults(expected, requestor1); |
6967 |
assertSearchResults(expected, requestor1); |
6968 |
// Expected same result with the wc owner |
6968 |
// Expected same result with the wc owner |
Lines 7037-7051
Link Here
|
7037 |
); |
7037 |
); |
7038 |
assertSearchResults( |
7038 |
assertSearchResults( |
7039 |
"Unexpected all type names", |
7039 |
"Unexpected all type names", |
7040 |
"java.lang.Class\n" + |
7040 |
"java.lang.Class\n" + |
7041 |
"java.lang.CloneNotSupportedException\n" + |
7041 |
"java.lang.CloneNotSupportedException\n" + |
7042 |
"java.lang.Error\n" + |
7042 |
"java.lang.Error\n" + |
7043 |
"java.lang.Exception\n" + |
7043 |
"java.lang.Exception\n" + |
7044 |
"java.lang.IllegalMonitorStateException\n" + |
7044 |
"java.lang.IllegalMonitorStateException\n" + |
7045 |
"java.lang.InterruptedException\n" + |
7045 |
"java.lang.InterruptedException\n" + |
7046 |
"java.lang.Object\n" + |
7046 |
"java.lang.Object\n" + |
7047 |
"java.lang.RuntimeException\n" + |
7047 |
"java.lang.RuntimeException\n" + |
7048 |
"java.lang.String\n" + |
7048 |
"java.lang.String\n" + |
7049 |
"java.lang.Throwable", |
7049 |
"java.lang.Throwable", |
7050 |
requestor); |
7050 |
requestor); |
7051 |
} |
7051 |
} |
Lines 7058-7067
Link Here
|
7058 |
resultCollector.showRule = true; |
7058 |
resultCollector.showRule = true; |
7059 |
workingCopies = new ICompilationUnit[1]; |
7059 |
workingCopies = new ICompilationUnit[1]; |
7060 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b156177/Test.java", |
7060 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/b156177/Test.java", |
7061 |
"package b156177;\n" + |
7061 |
"package b156177;\n" + |
7062 |
"interface B156177_I {}\n" + |
7062 |
"interface B156177_I {}\n" + |
7063 |
"enum B156177_E {}\n" + |
7063 |
"enum B156177_E {}\n" + |
7064 |
"@interface B156177_A {}\n" + |
7064 |
"@interface B156177_A {}\n" + |
7065 |
"public class B156177 {}\n" |
7065 |
"public class B156177 {}\n" |
7066 |
); |
7066 |
); |
7067 |
TypeNameRequestor requestor = new SearchTests.SearchTypeNameRequestor(); |
7067 |
TypeNameRequestor requestor = new SearchTests.SearchTypeNameRequestor(); |
Lines 7078-7084
Link Here
|
7078 |
); |
7078 |
); |
7079 |
assertSearchResults( |
7079 |
assertSearchResults( |
7080 |
"Unexpected all type names", |
7080 |
"Unexpected all type names", |
7081 |
"b156177.B156177_A\n" + |
7081 |
"b156177.B156177_A\n" + |
7082 |
"b156177.B156177_I", |
7082 |
"b156177.B156177_I", |
7083 |
requestor); |
7083 |
requestor); |
7084 |
} |
7084 |
} |
Lines 7091-7160
Link Here
|
7091 |
resultCollector.showRule = true; |
7091 |
resultCollector.showRule = true; |
7092 |
workingCopies = new ICompilationUnit[1]; |
7092 |
workingCopies = new ICompilationUnit[1]; |
7093 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/pack/Test.java", |
7093 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/pack/Test.java", |
7094 |
"package pack;\n" + |
7094 |
"package pack;\n" + |
7095 |
"public class Test {\n" + |
7095 |
"public class Test {\n" + |
7096 |
" void noMatch(Y y) {\n" + |
7096 |
" void noMatch(Y y) {\n" + |
7097 |
" y.toString();\n" + |
7097 |
" y.toString();\n" + |
7098 |
" toString();\n" + |
7098 |
" toString();\n" + |
7099 |
" }\n" + |
7099 |
" }\n" + |
7100 |
" void validMatches(X x) {\n" + |
7100 |
" void validMatches(X x) {\n" + |
7101 |
" x.toString();\n" + |
7101 |
" x.toString();\n" + |
7102 |
" }\n" + |
7102 |
" }\n" + |
7103 |
" void superInvocationMatches(Object o) {\n" + |
7103 |
" void superInvocationMatches(Object o) {\n" + |
7104 |
" o.toString();\n" + |
7104 |
" o.toString();\n" + |
7105 |
" }\n" + |
7105 |
" }\n" + |
7106 |
" void interfaceMatches(I i) {\n" + |
7106 |
" void interfaceMatches(I i) {\n" + |
7107 |
" i.toString();\n" + |
7107 |
" i.toString();\n" + |
7108 |
" }\n" + |
7108 |
" }\n" + |
7109 |
" void subtypeMatches(Sub s) {\n" + |
7109 |
" void subtypeMatches(Sub s) {\n" + |
7110 |
" s.toString();\n" + |
7110 |
" s.toString();\n" + |
7111 |
" }\n" + |
7111 |
" }\n" + |
7112 |
"}\n" + |
7112 |
"}\n" + |
7113 |
"interface I {}\n" + |
7113 |
"interface I {}\n" + |
7114 |
"class X {\n" + |
7114 |
"class X {\n" + |
7115 |
" public String toString() {\n" + |
7115 |
" public String toString() {\n" + |
7116 |
" return \"X\";\n" + |
7116 |
" return \"X\";\n" + |
7117 |
" }\n" + |
7117 |
" }\n" + |
7118 |
"}\n" + |
7118 |
"}\n" + |
7119 |
"class Sub extends X {}\n" + |
7119 |
"class Sub extends X {}\n" + |
7120 |
"class Y {\n" + |
7120 |
"class Y {\n" + |
7121 |
" public String toString() {\n" + |
7121 |
" public String toString() {\n" + |
7122 |
" return \"Y\";\n" + |
7122 |
" return \"Y\";\n" + |
7123 |
" }\n" + |
7123 |
" }\n" + |
7124 |
"}\n" |
7124 |
"}\n" |
7125 |
); |
7125 |
); |
7126 |
IMethod method = workingCopies[0].getType("X").getMethod("toString", new String[0]); |
7126 |
IMethod method = workingCopies[0].getType("X").getMethod("toString", new String[0]); |
7127 |
this.resultCollector.showFlavors = PatternLocator.SUPER_INVOCATION_FLAVOR; |
7127 |
this.resultCollector.showFlavors = PatternLocator.SUPER_INVOCATION_FLAVOR; |
7128 |
search(method, REFERENCES); |
7128 |
search(method, REFERENCES); |
7129 |
assertSearchResults( |
7129 |
assertSearchResults( |
7130 |
"src/pack/Test.java void pack.Test.validMatches(X) [toString()] EXACT_MATCH\n" + |
7130 |
"src/pack/Test.java void pack.Test.validMatches(X) [toString()] EXACT_MATCH\n" + |
7131 |
"src/pack/Test.java void pack.Test.superInvocationMatches(Object) [toString()] EXACT_MATCH SUPER INVOCATION\n" + |
7131 |
"src/pack/Test.java void pack.Test.superInvocationMatches(Object) [toString()] EXACT_MATCH SUPER INVOCATION\n" + |
7132 |
"src/pack/Test.java void pack.Test.subtypeMatches(Sub) [toString()] EXACT_MATCH" |
7132 |
"src/pack/Test.java void pack.Test.subtypeMatches(Sub) [toString()] EXACT_MATCH" |
7133 |
); |
7133 |
); |
7134 |
} |
7134 |
} |
7135 |
private void setUpBug156491() throws CoreException { |
7135 |
private void setUpBug156491() throws CoreException { |
7136 |
workingCopies = new ICompilationUnit[1]; |
7136 |
workingCopies = new ICompilationUnit[1]; |
7137 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/other/Test.java", |
7137 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/other/Test.java", |
7138 |
"package other;\n" + |
7138 |
"package other;\n" + |
7139 |
"public class Test {\n" + |
7139 |
"public class Test {\n" + |
7140 |
" void testInterface(I i) {\n" + |
7140 |
" void testInterface(I i) {\n" + |
7141 |
" i.test();\n" + |
7141 |
" i.test();\n" + |
7142 |
" }\n" + |
7142 |
" }\n" + |
7143 |
" void testSuperInvocation(L1 l) {\n" + |
7143 |
" void testSuperInvocation(L1 l) {\n" + |
7144 |
" l.test();\n" + |
7144 |
" l.test();\n" + |
7145 |
" }\n" + |
7145 |
" }\n" + |
7146 |
" void testInvocation(L2 l) {\n" + |
7146 |
" void testInvocation(L2 l) {\n" + |
7147 |
" l.test();\n" + |
7147 |
" l.test();\n" + |
7148 |
" }\n" + |
7148 |
" }\n" + |
7149 |
"}\n" + |
7149 |
"}\n" + |
7150 |
"class L1 implements I {\n" + |
7150 |
"class L1 implements I {\n" + |
7151 |
" public void test() {}\n" + |
7151 |
" public void test() {}\n" + |
7152 |
"}\n" + |
7152 |
"}\n" + |
7153 |
"interface I {\n" + |
7153 |
"interface I {\n" + |
7154 |
" void test();\n" + |
7154 |
" void test();\n" + |
7155 |
"}\n" + |
7155 |
"}\n" + |
7156 |
"class L2 extends L1 {\n" + |
7156 |
"class L2 extends L1 {\n" + |
7157 |
" public void test() {}\n" + |
7157 |
" public void test() {}\n" + |
7158 |
"}" |
7158 |
"}" |
7159 |
); |
7159 |
); |
7160 |
} |
7160 |
} |
Lines 7165-7172
Link Here
|
7165 |
this.resultCollector.showFlavors = PatternLocator.SUPER_INVOCATION_FLAVOR; |
7165 |
this.resultCollector.showFlavors = PatternLocator.SUPER_INVOCATION_FLAVOR; |
7166 |
search(method, REFERENCES); |
7166 |
search(method, REFERENCES); |
7167 |
assertSearchResults( |
7167 |
assertSearchResults( |
7168 |
"src/other/Test.java void other.Test.testInterface(I) [test()] EXACT_MATCH SUPER INVOCATION\n" + |
7168 |
"src/other/Test.java void other.Test.testInterface(I) [test()] EXACT_MATCH SUPER INVOCATION\n" + |
7169 |
"src/other/Test.java void other.Test.testSuperInvocation(L1) [test()] EXACT_MATCH SUPER INVOCATION\n" + |
7169 |
"src/other/Test.java void other.Test.testSuperInvocation(L1) [test()] EXACT_MATCH SUPER INVOCATION\n" + |
7170 |
"src/other/Test.java void other.Test.testInvocation(L2) [test()] EXACT_MATCH" |
7170 |
"src/other/Test.java void other.Test.testInvocation(L2) [test()] EXACT_MATCH" |
7171 |
); |
7171 |
); |
7172 |
} |
7172 |
} |
Lines 7177-7183
Link Here
|
7177 |
this.resultCollector.showFlavors = PatternLocator.SUPER_INVOCATION_FLAVOR; |
7177 |
this.resultCollector.showFlavors = PatternLocator.SUPER_INVOCATION_FLAVOR; |
7178 |
search(method, REFERENCES); |
7178 |
search(method, REFERENCES); |
7179 |
assertSearchResults( |
7179 |
assertSearchResults( |
7180 |
"src/other/Test.java void other.Test.testInterface(I) [test()] EXACT_MATCH SUPER INVOCATION\n" + |
7180 |
"src/other/Test.java void other.Test.testInterface(I) [test()] EXACT_MATCH SUPER INVOCATION\n" + |
7181 |
"src/other/Test.java void other.Test.testSuperInvocation(L1) [test()] EXACT_MATCH" |
7181 |
"src/other/Test.java void other.Test.testSuperInvocation(L1) [test()] EXACT_MATCH" |
7182 |
// since bug 160301 fix, subclass overridden method calls are not reported |
7182 |
// since bug 160301 fix, subclass overridden method calls are not reported |
7183 |
//"src/other/Test.java void other.Test.testInvocation(L2) [test()] EXACT_MATCH" |
7183 |
//"src/other/Test.java void other.Test.testInvocation(L2) [test()] EXACT_MATCH" |
Lines 7192-7215
Link Here
|
7192 |
resultCollector.showRule = true; |
7192 |
resultCollector.showRule = true; |
7193 |
workingCopies = new ICompilationUnit[1]; |
7193 |
workingCopies = new ICompilationUnit[1]; |
7194 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/Test.java", |
7194 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/Test.java", |
7195 |
"public class Test {\n" + |
7195 |
"public class Test {\n" + |
7196 |
" class A {\n" + |
7196 |
" class A {\n" + |
7197 |
" void foo() {}\n" + |
7197 |
" void foo() {}\n" + |
7198 |
" void bar() {\n" + |
7198 |
" void bar() {\n" + |
7199 |
" foo();\n" + |
7199 |
" foo();\n" + |
7200 |
" }\n" + |
7200 |
" }\n" + |
7201 |
" }\n" + |
7201 |
" }\n" + |
7202 |
" class B extends A {\n" + |
7202 |
" class B extends A {\n" + |
7203 |
" void foo() {}\n" + |
7203 |
" void foo() {}\n" + |
7204 |
" void bar() {\n" + |
7204 |
" void bar() {\n" + |
7205 |
" foo();\n" + |
7205 |
" foo();\n" + |
7206 |
" }\n" + |
7206 |
" }\n" + |
7207 |
" }\n" + |
7207 |
" }\n" + |
7208 |
" class C extends B {\n" + |
7208 |
" class C extends B {\n" + |
7209 |
" void method() {\n" + |
7209 |
" void method() {\n" + |
7210 |
" foo();\n" + |
7210 |
" foo();\n" + |
7211 |
" }\n" + |
7211 |
" }\n" + |
7212 |
" }\n" + |
7212 |
" }\n" + |
7213 |
"}" |
7213 |
"}" |
7214 |
); |
7214 |
); |
7215 |
IMethod method = workingCopies[0].getType("Test").getType("A").getMethod("foo", new String[0]); |
7215 |
IMethod method = workingCopies[0].getType("Test").getType("A").getMethod("foo", new String[0]); |
Lines 7222-7256
Link Here
|
7222 |
resultCollector.showRule = true; |
7222 |
resultCollector.showRule = true; |
7223 |
workingCopies = new ICompilationUnit[1]; |
7223 |
workingCopies = new ICompilationUnit[1]; |
7224 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/test/Test.java", |
7224 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/test/Test.java", |
7225 |
"package test;\n" + |
7225 |
"package test;\n" + |
7226 |
"public class Test {\n" + |
7226 |
"public class Test {\n" + |
7227 |
" class A {\n" + |
7227 |
" class A {\n" + |
7228 |
" void foo() {}\n" + |
7228 |
" void foo() {}\n" + |
7229 |
" }\n" + |
7229 |
" }\n" + |
7230 |
" class B extends A {}\n" + |
7230 |
" class B extends A {}\n" + |
7231 |
" class C extends B {\n" + |
7231 |
" class C extends B {\n" + |
7232 |
" void foo() {}\n" + |
7232 |
" void foo() {}\n" + |
7233 |
" }\n" + |
7233 |
" }\n" + |
7234 |
" class D extends C {}\n" + |
7234 |
" class D extends C {}\n" + |
7235 |
" void a() {\n" + |
7235 |
" void a() {\n" + |
7236 |
" new A().foo();\n" + |
7236 |
" new A().foo();\n" + |
7237 |
" }\n" + |
7237 |
" }\n" + |
7238 |
" void b() {\n" + |
7238 |
" void b() {\n" + |
7239 |
" new B().foo();\n" + |
7239 |
" new B().foo();\n" + |
7240 |
" }\n" + |
7240 |
" }\n" + |
7241 |
" void c() {\n" + |
7241 |
" void c() {\n" + |
7242 |
" new C().foo();\n" + |
7242 |
" new C().foo();\n" + |
7243 |
" }\n" + |
7243 |
" }\n" + |
7244 |
" void d() {\n" + |
7244 |
" void d() {\n" + |
7245 |
" new D().foo();\n" + |
7245 |
" new D().foo();\n" + |
7246 |
" }\n" + |
7246 |
" }\n" + |
7247 |
" \n" + |
7247 |
" \n" + |
7248 |
"}" |
7248 |
"}" |
7249 |
); |
7249 |
); |
7250 |
IMethod method = workingCopies[0].getType("Test").getType("A").getMethod("foo", new String[0]); |
7250 |
IMethod method = workingCopies[0].getType("Test").getType("A").getMethod("foo", new String[0]); |
7251 |
search(method, REFERENCES); |
7251 |
search(method, REFERENCES); |
7252 |
assertSearchResults( |
7252 |
assertSearchResults( |
7253 |
"src/test/Test.java void test.Test.a() [foo()] EXACT_MATCH\n" + |
7253 |
"src/test/Test.java void test.Test.a() [foo()] EXACT_MATCH\n" + |
7254 |
"src/test/Test.java void test.Test.b() [foo()] EXACT_MATCH" |
7254 |
"src/test/Test.java void test.Test.b() [foo()] EXACT_MATCH" |
7255 |
); |
7255 |
); |
7256 |
} |
7256 |
} |
Lines 7258-7310
Link Here
|
7258 |
resultCollector.showRule = true; |
7258 |
resultCollector.showRule = true; |
7259 |
workingCopies = new ICompilationUnit[1]; |
7259 |
workingCopies = new ICompilationUnit[1]; |
7260 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/Test.java", |
7260 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/Test.java", |
7261 |
"public class Test {\n" + |
7261 |
"public class Test {\n" + |
7262 |
" interface I {\n" + |
7262 |
" interface I {\n" + |
7263 |
" void foo();\n" + |
7263 |
" void foo();\n" + |
7264 |
" }\n" + |
7264 |
" }\n" + |
7265 |
" class A1 implements I {\n" + |
7265 |
" class A1 implements I {\n" + |
7266 |
" public void foo() {}\n" + |
7266 |
" public void foo() {}\n" + |
7267 |
" void a1() {\n" + |
7267 |
" void a1() {\n" + |
7268 |
" foo();\n" + |
7268 |
" foo();\n" + |
7269 |
" }\n" + |
7269 |
" }\n" + |
7270 |
" }\n" + |
7270 |
" }\n" + |
7271 |
" class B1 extends A1 {\n" + |
7271 |
" class B1 extends A1 {\n" + |
7272 |
" void b1() {\n" + |
7272 |
" void b1() {\n" + |
7273 |
" foo();\n" + |
7273 |
" foo();\n" + |
7274 |
" }\n" + |
7274 |
" }\n" + |
7275 |
" }\n" + |
7275 |
" }\n" + |
7276 |
" class C1 extends B1 {\n" + |
7276 |
" class C1 extends B1 {\n" + |
7277 |
" public void foo() {}\n" + |
7277 |
" public void foo() {}\n" + |
7278 |
" void c1() {\n" + |
7278 |
" void c1() {\n" + |
7279 |
" foo();\n" + |
7279 |
" foo();\n" + |
7280 |
" }\n" + |
7280 |
" }\n" + |
7281 |
" }\n" + |
7281 |
" }\n" + |
7282 |
" abstract class A2 implements I {\n" + |
7282 |
" abstract class A2 implements I {\n" + |
7283 |
" void a2() {\n" + |
7283 |
" void a2() {\n" + |
7284 |
" foo();\n" + |
7284 |
" foo();\n" + |
7285 |
" }\n" + |
7285 |
" }\n" + |
7286 |
" }\n" + |
7286 |
" }\n" + |
7287 |
" class B2 extends A2 {\n" + |
7287 |
" class B2 extends A2 {\n" + |
7288 |
" public void foo() {}\n" + |
7288 |
" public void foo() {}\n" + |
7289 |
" void b2() {\n" + |
7289 |
" void b2() {\n" + |
7290 |
" foo();\n" + |
7290 |
" foo();\n" + |
7291 |
" }\n" + |
7291 |
" }\n" + |
7292 |
" }\n" + |
7292 |
" }\n" + |
7293 |
" class A3 implements I {\n" + |
7293 |
" class A3 implements I {\n" + |
7294 |
" public void foo() {}\n" + |
7294 |
" public void foo() {}\n" + |
7295 |
" void a3() {\n" + |
7295 |
" void a3() {\n" + |
7296 |
" foo();\n" + |
7296 |
" foo();\n" + |
7297 |
" }\n" + |
7297 |
" }\n" + |
7298 |
" }\n" + |
7298 |
" }\n" + |
7299 |
"}" |
7299 |
"}" |
7300 |
); |
7300 |
); |
7301 |
IMethod method = workingCopies[0].getType("Test").getType("I").getMethod("foo", new String[0]); |
7301 |
IMethod method = workingCopies[0].getType("Test").getType("I").getMethod("foo", new String[0]); |
7302 |
search(method, REFERENCES); |
7302 |
search(method, REFERENCES); |
7303 |
assertSearchResults( |
7303 |
assertSearchResults( |
7304 |
"src/Test.java void Test$A1.a1() [foo()] EXACT_MATCH\n" + |
7304 |
"src/Test.java void Test$A1.a1() [foo()] EXACT_MATCH\n" + |
7305 |
"src/Test.java void Test$B1.b1() [foo()] EXACT_MATCH\n" + |
7305 |
"src/Test.java void Test$B1.b1() [foo()] EXACT_MATCH\n" + |
7306 |
"src/Test.java void Test$A2.a2() [foo()] EXACT_MATCH\n" + |
7306 |
"src/Test.java void Test$A2.a2() [foo()] EXACT_MATCH\n" + |
7307 |
"src/Test.java void Test$B2.b2() [foo()] EXACT_MATCH\n" + |
7307 |
"src/Test.java void Test$B2.b2() [foo()] EXACT_MATCH\n" + |
7308 |
"src/Test.java void Test$A3.a3() [foo()] EXACT_MATCH" |
7308 |
"src/Test.java void Test$A3.a3() [foo()] EXACT_MATCH" |
7309 |
); |
7309 |
); |
7310 |
} |
7310 |
} |
Lines 7312-7357
Link Here
|
7312 |
resultCollector.showRule = true; |
7312 |
resultCollector.showRule = true; |
7313 |
workingCopies = new ICompilationUnit[1]; |
7313 |
workingCopies = new ICompilationUnit[1]; |
7314 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/Test.java", |
7314 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/Test.java", |
7315 |
"public class Test {\n" + |
7315 |
"public class Test {\n" + |
7316 |
" abstract class Abstract {\n" + |
7316 |
" abstract class Abstract {\n" + |
7317 |
" abstract void foo();\n" + |
7317 |
" abstract void foo();\n" + |
7318 |
" }\n" + |
7318 |
" }\n" + |
7319 |
" class A1 extends Abstract {\n" + |
7319 |
" class A1 extends Abstract {\n" + |
7320 |
" public void foo() {}\n" + |
7320 |
" public void foo() {}\n" + |
7321 |
" void a1() {\n" + |
7321 |
" void a1() {\n" + |
7322 |
" foo(); // valid match as A1.foo() is the first override in sub-class\n" + |
7322 |
" foo(); // valid match as A1.foo() is the first override in sub-class\n" + |
7323 |
" }\n" + |
7323 |
" }\n" + |
7324 |
" }\n" + |
7324 |
" }\n" + |
7325 |
" class B1 extends A1 {\n" + |
7325 |
" class B1 extends A1 {\n" + |
7326 |
" void b1() {\n" + |
7326 |
" void b1() {\n" + |
7327 |
" foo(); // valid match as B1 does not override A.foo()\n" + |
7327 |
" foo(); // valid match as B1 does not override A.foo()\n" + |
7328 |
" }\n" + |
7328 |
" }\n" + |
7329 |
" }\n" + |
7329 |
" }\n" + |
7330 |
" class C1 extends B1 {\n" + |
7330 |
" class C1 extends B1 {\n" + |
7331 |
" public void foo() {}\n" + |
7331 |
" public void foo() {}\n" + |
7332 |
" void c1() {\n" + |
7332 |
" void c1() {\n" + |
7333 |
" foo(); // invalid match as C1 does override A.foo()\n" + |
7333 |
" foo(); // invalid match as C1 does override A.foo()\n" + |
7334 |
" }\n" + |
7334 |
" }\n" + |
7335 |
" }\n" + |
7335 |
" }\n" + |
7336 |
" abstract class A2 extends Abstract {\n" + |
7336 |
" abstract class A2 extends Abstract {\n" + |
7337 |
" void a2() {\n" + |
7337 |
" void a2() {\n" + |
7338 |
" foo(); // valid match as A2 does not override Abstract.foo()\n" + |
7338 |
" foo(); // valid match as A2 does not override Abstract.foo()\n" + |
7339 |
" }\n" + |
7339 |
" }\n" + |
7340 |
" }\n" + |
7340 |
" }\n" + |
7341 |
" class B2 extends A2 {\n" + |
7341 |
" class B2 extends A2 {\n" + |
7342 |
" public void foo() {}\n" + |
7342 |
" public void foo() {}\n" + |
7343 |
" void b2() {\n" + |
7343 |
" void b2() {\n" + |
7344 |
" foo(); // valid match as B2.foo() is the first override in sub-class\n" + |
7344 |
" foo(); // valid match as B2.foo() is the first override in sub-class\n" + |
7345 |
" }\n" + |
7345 |
" }\n" + |
7346 |
" }\n" + |
7346 |
" }\n" + |
7347 |
"}" |
7347 |
"}" |
7348 |
); |
7348 |
); |
7349 |
IMethod method = workingCopies[0].getType("Test").getType("Abstract").getMethod("foo", new String[0]); |
7349 |
IMethod method = workingCopies[0].getType("Test").getType("Abstract").getMethod("foo", new String[0]); |
7350 |
search(method, REFERENCES); |
7350 |
search(method, REFERENCES); |
7351 |
assertSearchResults( |
7351 |
assertSearchResults( |
7352 |
"src/Test.java void Test$A1.a1() [foo()] EXACT_MATCH\n" + |
7352 |
"src/Test.java void Test$A1.a1() [foo()] EXACT_MATCH\n" + |
7353 |
"src/Test.java void Test$B1.b1() [foo()] EXACT_MATCH\n" + |
7353 |
"src/Test.java void Test$B1.b1() [foo()] EXACT_MATCH\n" + |
7354 |
"src/Test.java void Test$A2.a2() [foo()] EXACT_MATCH\n" + |
7354 |
"src/Test.java void Test$A2.a2() [foo()] EXACT_MATCH\n" + |
7355 |
"src/Test.java void Test$B2.b2() [foo()] EXACT_MATCH" |
7355 |
"src/Test.java void Test$B2.b2() [foo()] EXACT_MATCH" |
7356 |
); |
7356 |
); |
7357 |
} |
7357 |
} |
Lines 7359-7392
Link Here
|
7359 |
resultCollector.showRule = true; |
7359 |
resultCollector.showRule = true; |
7360 |
workingCopies = new ICompilationUnit[1]; |
7360 |
workingCopies = new ICompilationUnit[1]; |
7361 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/Test.java", |
7361 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/Test.java", |
7362 |
"public class Test {\n" + |
7362 |
"public class Test {\n" + |
7363 |
" abstract class Abstract {\n" + |
7363 |
" abstract class Abstract {\n" + |
7364 |
" public abstract void foo();\n" + |
7364 |
" public abstract void foo();\n" + |
7365 |
" }\n" + |
7365 |
" }\n" + |
7366 |
" abstract class A extends Abstract {\n" + |
7366 |
" abstract class A extends Abstract {\n" + |
7367 |
" public abstract void foo();\n" + |
7367 |
" public abstract void foo();\n" + |
7368 |
" void a() {\n" + |
7368 |
" void a() {\n" + |
7369 |
" foo(); // valid match as A is abstract => does not override Abstract.foo()\n" + |
7369 |
" foo(); // valid match as A is abstract => does not override Abstract.foo()\n" + |
7370 |
" }\n" + |
7370 |
" }\n" + |
7371 |
" }\n" + |
7371 |
" }\n" + |
7372 |
" class B extends A {\n" + |
7372 |
" class B extends A {\n" + |
7373 |
" public void foo() {}\n" + |
7373 |
" public void foo() {}\n" + |
7374 |
" void b() {\n" + |
7374 |
" void b() {\n" + |
7375 |
" foo(); // valid match as B.foo() is the first override in sub-class\n" + |
7375 |
" foo(); // valid match as B.foo() is the first override in sub-class\n" + |
7376 |
" }\n" + |
7376 |
" }\n" + |
7377 |
" }\n" + |
7377 |
" }\n" + |
7378 |
" class C extends B {\n" + |
7378 |
" class C extends B {\n" + |
7379 |
" public void foo() {}\n" + |
7379 |
" public void foo() {}\n" + |
7380 |
" void c() {\n" + |
7380 |
" void c() {\n" + |
7381 |
" foo(); // invalid match as C.foo() overrides Abstract.foo() \n" + |
7381 |
" foo(); // invalid match as C.foo() overrides Abstract.foo() \n" + |
7382 |
" }\n" + |
7382 |
" }\n" + |
7383 |
" }\n" + |
7383 |
" }\n" + |
7384 |
"}" |
7384 |
"}" |
7385 |
); |
7385 |
); |
7386 |
IMethod method = workingCopies[0].getType("Test").getType("Abstract").getMethod("foo", new String[0]); |
7386 |
IMethod method = workingCopies[0].getType("Test").getType("Abstract").getMethod("foo", new String[0]); |
7387 |
search(method, REFERENCES); |
7387 |
search(method, REFERENCES); |
7388 |
assertSearchResults( |
7388 |
assertSearchResults( |
7389 |
"src/Test.java void Test$A.a() [foo()] EXACT_MATCH\n" + |
7389 |
"src/Test.java void Test$A.a() [foo()] EXACT_MATCH\n" + |
7390 |
"src/Test.java void Test$B.b() [foo()] EXACT_MATCH" |
7390 |
"src/Test.java void Test$B.b() [foo()] EXACT_MATCH" |
7391 |
); |
7391 |
); |
7392 |
} |
7392 |
} |
Lines 7394-7421
Link Here
|
7394 |
resultCollector.showRule = true; |
7394 |
resultCollector.showRule = true; |
7395 |
workingCopies = new ICompilationUnit[1]; |
7395 |
workingCopies = new ICompilationUnit[1]; |
7396 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/Test.java", |
7396 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/Test.java", |
7397 |
"public class Test {\n" + |
7397 |
"public class Test {\n" + |
7398 |
" abstract class Abstract {\n" + |
7398 |
" abstract class Abstract {\n" + |
7399 |
" public abstract void foo();\n" + |
7399 |
" public abstract void foo();\n" + |
7400 |
" }\n" + |
7400 |
" }\n" + |
7401 |
" class A extends Abstract {\n" + |
7401 |
" class A extends Abstract {\n" + |
7402 |
" public void foo() {}\n" + |
7402 |
" public void foo() {}\n" + |
7403 |
" void a() {\n" + |
7403 |
" void a() {\n" + |
7404 |
" foo(); // valid match as A.foo() is the first override in sub-class\n" + |
7404 |
" foo(); // valid match as A.foo() is the first override in sub-class\n" + |
7405 |
" }\n" + |
7405 |
" }\n" + |
7406 |
" }\n" + |
7406 |
" }\n" + |
7407 |
" abstract class B extends A {\n" + |
7407 |
" abstract class B extends A {\n" + |
7408 |
" public abstract void foo();\n" + |
7408 |
" public abstract void foo();\n" + |
7409 |
" void b() {\n" + |
7409 |
" void b() {\n" + |
7410 |
" foo(); // invalid match as B.foo() is hidden by the override A.foo()\n" + |
7410 |
" foo(); // invalid match as B.foo() is hidden by the override A.foo()\n" + |
7411 |
" }\n" + |
7411 |
" }\n" + |
7412 |
" }\n" + |
7412 |
" }\n" + |
7413 |
" class C extends B {\n" + |
7413 |
" class C extends B {\n" + |
7414 |
" public void foo() {}\n" + |
7414 |
" public void foo() {}\n" + |
7415 |
" void c() {\n" + |
7415 |
" void c() {\n" + |
7416 |
" foo(); // invalid match as C.foo() overrides A.foo()\n" + |
7416 |
" foo(); // invalid match as C.foo() overrides A.foo()\n" + |
7417 |
" }\n" + |
7417 |
" }\n" + |
7418 |
" }\n" + |
7418 |
" }\n" + |
7419 |
"}" |
7419 |
"}" |
7420 |
); |
7420 |
); |
7421 |
IMethod method = workingCopies[0].getType("Test").getType("Abstract").getMethod("foo", new String[0]); |
7421 |
IMethod method = workingCopies[0].getType("Test").getType("Abstract").getMethod("foo", new String[0]); |
Lines 7609-7626
Link Here
|
7609 |
null); |
7609 |
null); |
7610 |
// Should have same types with these 2 searches |
7610 |
// Should have same types with these 2 searches |
7611 |
assertSearchResults("Wrong types found!", |
7611 |
assertSearchResults("Wrong types found!", |
7612 |
"java.lang.CharSequence\n" + |
7612 |
"java.lang.CharSequence\n" + |
7613 |
"java.lang.Class\n" + |
7613 |
"java.lang.Class\n" + |
7614 |
"java.lang.CloneNotSupportedException\n" + |
7614 |
"java.lang.CloneNotSupportedException\n" + |
7615 |
"java.lang.Comparable\n" + |
7615 |
"java.lang.Comparable\n" + |
7616 |
"java.lang.Enum\n" + |
7616 |
"java.lang.Enum\n" + |
7617 |
"java.lang.Error\n" + |
7617 |
"java.lang.Error\n" + |
7618 |
"java.lang.Exception\n" + |
7618 |
"java.lang.Exception\n" + |
7619 |
"java.lang.IllegalMonitorStateException\n" + |
7619 |
"java.lang.IllegalMonitorStateException\n" + |
7620 |
"java.lang.InterruptedException\n" + |
7620 |
"java.lang.InterruptedException\n" + |
7621 |
"java.lang.Object\n" + |
7621 |
"java.lang.Object\n" + |
7622 |
"java.lang.RuntimeException\n" + |
7622 |
"java.lang.RuntimeException\n" + |
7623 |
"java.lang.String\n" + |
7623 |
"java.lang.String\n" + |
7624 |
"java.lang.Throwable", |
7624 |
"java.lang.Throwable", |
7625 |
requestor |
7625 |
requestor |
7626 |
); |
7626 |
); |
Lines 7677-7684
Link Here
|
7677 |
IJavaSearchConstants.WAIT_UNTIL_READY_TO_SEARCH, |
7677 |
IJavaSearchConstants.WAIT_UNTIL_READY_TO_SEARCH, |
7678 |
null); |
7678 |
null); |
7679 |
assertSearchResults("Wrong types found!", |
7679 |
assertSearchResults("Wrong types found!", |
7680 |
"xy.BE_124645\n" + |
7680 |
"xy.BE_124645\n" + |
7681 |
"xy.BX_124645\n" + |
7681 |
"xy.BX_124645\n" + |
7682 |
"xy.BY_124645", |
7682 |
"xy.BY_124645", |
7683 |
requestor |
7683 |
requestor |
7684 |
); |
7684 |
); |
Lines 7735-7746
Link Here
|
7735 |
private void setUpBug164121() throws CoreException { |
7735 |
private void setUpBug164121() throws CoreException { |
7736 |
workingCopies = new ICompilationUnit[1]; |
7736 |
workingCopies = new ICompilationUnit[1]; |
7737 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/A.java", |
7737 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/A.java", |
7738 |
"class A {\n" + |
7738 |
"class A {\n" + |
7739 |
" int x(int param) {\n" + |
7739 |
" int x(int param) {\n" + |
7740 |
" param = 2 + 2;\n" + |
7740 |
" param = 2 + 2;\n" + |
7741 |
" int x = param + 2;\n" + |
7741 |
" int x = param + 2;\n" + |
7742 |
" return param - x;\n" + |
7742 |
" return param - x;\n" + |
7743 |
" }\n" + |
7743 |
" }\n" + |
7744 |
"}\n" |
7744 |
"}\n" |
7745 |
); |
7745 |
); |
7746 |
} |
7746 |
} |
Lines 7759-7767
Link Here
|
7759 |
ILocalVariable param = getLocalVariable(this.workingCopies[0], "param", "param"); |
7759 |
ILocalVariable param = getLocalVariable(this.workingCopies[0], "param", "param"); |
7760 |
search(param, ALL_OCCURRENCES); |
7760 |
search(param, ALL_OCCURRENCES); |
7761 |
assertSearchResults( |
7761 |
assertSearchResults( |
7762 |
"src/A.java int A.x(int).param [param] EXACT_MATCH\n" + |
7762 |
"src/A.java int A.x(int).param [param] EXACT_MATCH\n" + |
7763 |
"src/A.java int A.x(int) [param] EXACT_MATCH\n" + |
7763 |
"src/A.java int A.x(int) [param] EXACT_MATCH\n" + |
7764 |
"src/A.java int A.x(int) [param] EXACT_MATCH\n" + |
7764 |
"src/A.java int A.x(int) [param] EXACT_MATCH\n" + |
7765 |
"src/A.java int A.x(int) [param] EXACT_MATCH" |
7765 |
"src/A.java int A.x(int) [param] EXACT_MATCH" |
7766 |
); |
7766 |
); |
7767 |
} |
7767 |
} |
Lines 7783-7789
Link Here
|
7783 |
collector.showAccuracy = true; |
7783 |
collector.showAccuracy = true; |
7784 |
search(type, REFERENCES, getJavaSearchScopeBugs(), collector); |
7784 |
search(type, REFERENCES, getJavaSearchScopeBugs(), collector); |
7785 |
assertSearchResults( |
7785 |
assertSearchResults( |
7786 |
"lib/b164791.jar test.<anonymous> EXACT_MATCH\n" + |
7786 |
"lib/b164791.jar test.<anonymous> EXACT_MATCH\n" + |
7787 |
"lib/b164791.jar test.<anonymous> EXACT_MATCH", |
7787 |
"lib/b164791.jar test.<anonymous> EXACT_MATCH", |
7788 |
collector |
7788 |
collector |
7789 |
); |
7789 |
); |
Lines 7797-7803
Link Here
|
7797 |
public void testBug166348() throws CoreException { |
7797 |
public void testBug166348() throws CoreException { |
7798 |
search("Test166348", TYPE, DECLARATIONS); |
7798 |
search("Test166348", TYPE, DECLARATIONS); |
7799 |
assertSearchResults( |
7799 |
assertSearchResults( |
7800 |
"lib/b166348.jar pack.Test166348 [No source] EXACT_MATCH\n" + |
7800 |
"lib/b166348.jar pack.Test166348 [No source] EXACT_MATCH\n" + |
7801 |
"lib/b166348.jar test.Test166348 [No source] EXACT_MATCH" |
7801 |
"lib/b166348.jar test.Test166348 [No source] EXACT_MATCH" |
7802 |
); |
7802 |
); |
7803 |
} |
7803 |
} |
Lines 7888-7902
Link Here
|
7888 |
createJavaProject("P2", new String[] {""}, new String[] {"JCL_LIB", "/P1/bin"}, ""); |
7888 |
createJavaProject("P2", new String[] {""}, new String[] {"JCL_LIB", "/P1/bin"}, ""); |
7889 |
workingCopies = new ICompilationUnit[2]; |
7889 |
workingCopies = new ICompilationUnit[2]; |
7890 |
workingCopies[0] = getWorkingCopy("/P2/Test1.java", |
7890 |
workingCopies[0] = getWorkingCopy("/P2/Test1.java", |
7891 |
"public class Test1 {\n" + |
7891 |
"public class Test1 {\n" + |
7892 |
" void bar() {\n" + |
7892 |
" void bar() {\n" + |
7893 |
" p.Y.foo();\n" + |
7893 |
" p.Y.foo();\n" + |
7894 |
" new p.X();\n" + // cause AbortCompilation here |
7894 |
" new p.X();\n" + // cause AbortCompilation here |
7895 |
" }\n" + |
7895 |
" }\n" + |
7896 |
"}" |
7896 |
"}" |
7897 |
); |
7897 |
); |
7898 |
workingCopies[1] = getWorkingCopy("/P2/Test2.java", |
7898 |
workingCopies[1] = getWorkingCopy("/P2/Test2.java", |
7899 |
"public class Test2 {\n" + |
7899 |
"public class Test2 {\n" + |
7900 |
" void foo() {}\n" + |
7900 |
" void foo() {}\n" + |
7901 |
" void bar() {\n" + |
7901 |
" void bar() {\n" + |
7902 |
" foo();\n" + |
7902 |
" foo();\n" + |
Lines 7914-7919
Link Here
|
7914 |
} |
7914 |
} |
7915 |
|
7915 |
|
7916 |
/** |
7916 |
/** |
|
|
7917 |
* @bug 178596: [search] Search for method references does not find references to interface method |
7918 |
* @test Ensure that searching method reference finds the interface method reference |
7919 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=178596" |
7920 |
*/ |
7921 |
public void testBug178596() throws CoreException { |
7922 |
workingCopies = new ICompilationUnit[5]; |
7923 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/ClassA.java", |
7924 |
"public class ClassA implements InterfaceA {\n" + |
7925 |
" public void setValue(int aValue) {\n" + |
7926 |
" }\n" + |
7927 |
"}\n" |
7928 |
); |
7929 |
workingCopies[1] = getWorkingCopy("/JavaSearchBugs/src/ClassB.java", |
7930 |
"public class ClassB extends ClassA implements InterfaceB {}\n" |
7931 |
); |
7932 |
workingCopies[2] = getWorkingCopy("/JavaSearchBugs/src/InterfaceA.java", |
7933 |
"public interface InterfaceA {\n" + |
7934 |
" public void setValue(int aValue);\n" + |
7935 |
"}\n" |
7936 |
); |
7937 |
workingCopies[3] = getWorkingCopy("/JavaSearchBugs/src/InterfaceB.java", |
7938 |
"public interface InterfaceB extends InterfaceA {}\n" |
7939 |
); |
7940 |
workingCopies[4] = getWorkingCopy("/JavaSearchBugs/src/Main.java", |
7941 |
"public class Main {\n" + |
7942 |
" public static void main(String[] args) {\n" + |
7943 |
" new Main().run();\n" + |
7944 |
" }\n" + |
7945 |
" private void run() {\n" + |
7946 |
" InterfaceB anB = new ClassB();\n" + |
7947 |
" anB.setValue(123);\n" + |
7948 |
" }\n" + |
7949 |
"}\n" |
7950 |
); |
7951 |
JavaSearchResultCollector testCollector = new JavaSearchResultCollector() { |
7952 |
public void acceptSearchMatch(SearchMatch searchMatch) throws CoreException { |
7953 |
super.acceptSearchMatch(searchMatch); |
7954 |
assertTrue("Method reference match should be super invocation one!", ((MethodReferenceMatch)searchMatch).isSuperInvocation()); |
7955 |
} |
7956 |
|
7957 |
}; |
7958 |
testCollector.showAccuracy = true; |
7959 |
IMethod method = workingCopies[0].getType("ClassA").getMethod("setValue", new String[] { "I" }); |
7960 |
search(method, REFERENCES, getJavaSearchScope(), testCollector); |
7961 |
assertSearchResults( |
7962 |
"src/Main.java void Main.run() [setValue(123)] EXACT_MATCH", |
7963 |
testCollector |
7964 |
); |
7965 |
} |
7966 |
|
7967 |
/** |
7917 |
* @bug 185452 [search] for all packages seems hung |
7968 |
* @bug 185452 [search] for all packages seems hung |
7918 |
* @test Ensure that all package declarations are found only once |
7969 |
* @test Ensure that all package declarations are found only once |
7919 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=185452" |
7970 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=185452" |
Lines 7921-8013
Link Here
|
7921 |
public void testBug185452() throws CoreException { |
7972 |
public void testBug185452() throws CoreException { |
7922 |
JavaSearchResultCollector packageCollector = new JavaSearchResultCollector(true); |
7973 |
JavaSearchResultCollector packageCollector = new JavaSearchResultCollector(true); |
7923 |
search( |
7974 |
search( |
7924 |
"*", |
7975 |
"*", |
7925 |
PACKAGE, |
7976 |
PACKAGE, |
7926 |
DECLARATIONS, |
7977 |
DECLARATIONS, |
7927 |
SearchEngine.createWorkspaceScope(), |
7978 |
SearchEngine.createWorkspaceScope(), |
7928 |
packageCollector); |
7979 |
packageCollector); |
7929 |
assertSearchResults( |
7980 |
assertSearchResults( |
7930 |
""+ getExternalJCLPathString("1.5") + " \n" + |
7981 |
""+ getExternalJCLPathString("1.5") + " \n" + |
7931 |
""+ getExternalJCLPathString("1.5") + " java\n" + |
7982 |
""+ getExternalJCLPathString("1.5") + " java\n" + |
7932 |
""+ getExternalJCLPathString("1.5") + " java.io\n" + |
7983 |
""+ getExternalJCLPathString("1.5") + " java.io\n" + |
7933 |
""+ getExternalJCLPathString("1.5") + " java.lang\n" + |
7984 |
""+ getExternalJCLPathString("1.5") + " java.lang\n" + |
7934 |
""+ getExternalJCLPathString("1.5") + " java.lang.annotation\n" + |
7985 |
""+ getExternalJCLPathString("1.5") + " java.lang.annotation\n" + |
7935 |
"lib \n" + |
7986 |
"lib \n" + |
7936 |
"lib/JavaSearch15.jar [No source]\n" + |
7987 |
"lib/JavaSearch15.jar [No source]\n" + |
7937 |
"lib/JavaSearch15.jar g1 [No source]\n" + |
7988 |
"lib/JavaSearch15.jar g1 [No source]\n" + |
7938 |
"lib/JavaSearch15.jar g1.t [No source]\n" + |
7989 |
"lib/JavaSearch15.jar g1.t [No source]\n" + |
7939 |
"lib/JavaSearch15.jar g1.t.s [No source]\n" + |
7990 |
"lib/JavaSearch15.jar g1.t.s [No source]\n" + |
7940 |
"lib/JavaSearch15.jar g1.t.s.def [No source]\n" + |
7991 |
"lib/JavaSearch15.jar g1.t.s.def [No source]\n" + |
7941 |
"lib/JavaSearch15.jar g5 [No source]\n" + |
7992 |
"lib/JavaSearch15.jar g5 [No source]\n" + |
7942 |
"lib/JavaSearch15.jar g5.c [No source]\n" + |
7993 |
"lib/JavaSearch15.jar g5.c [No source]\n" + |
7943 |
"lib/JavaSearch15.jar g5.c.def [No source]\n" + |
7994 |
"lib/JavaSearch15.jar g5.c.def [No source]\n" + |
7944 |
"lib/JavaSearch15.jar g5.m [No source]\n" + |
7995 |
"lib/JavaSearch15.jar g5.m [No source]\n" + |
7945 |
"lib/JavaSearch15.jar g5.m.def [No source]\n" + |
7996 |
"lib/JavaSearch15.jar g5.m.def [No source]\n" + |
7946 |
"lib/b110422.jar [No source]\n" + |
7997 |
"lib/b110422.jar [No source]\n" + |
7947 |
"lib/b110422.jar b110422 [No source]\n" + |
7998 |
"lib/b110422.jar b110422 [No source]\n" + |
7948 |
"lib/b123679.jar [No source]\n" + |
7999 |
"lib/b123679.jar [No source]\n" + |
7949 |
"lib/b123679.jar pack [No source]\n" + |
8000 |
"lib/b123679.jar pack [No source]\n" + |
7950 |
"lib/b123679.jar test [No source]\n" + |
8001 |
"lib/b123679.jar test [No source]\n" + |
7951 |
"lib/b124469.jar [No source]\n" + |
8002 |
"lib/b124469.jar [No source]\n" + |
7952 |
"lib/b124469.jar pack [No source]\n" + |
8003 |
"lib/b124469.jar pack [No source]\n" + |
7953 |
"lib/b124469.jar test [No source]\n" + |
8004 |
"lib/b124469.jar test [No source]\n" + |
7954 |
"lib/b124645.jar [No source]\n" + |
8005 |
"lib/b124645.jar [No source]\n" + |
7955 |
"lib/b124645.jar test [No source]\n" + |
8006 |
"lib/b124645.jar test [No source]\n" + |
7956 |
"lib/b124645.jar xy [No source]\n" + |
8007 |
"lib/b124645.jar xy [No source]\n" + |
7957 |
"lib/b125178.jar [No source]\n" + |
8008 |
"lib/b125178.jar [No source]\n" + |
7958 |
"lib/b125178.jar pack [No source]\n" + |
8009 |
"lib/b125178.jar pack [No source]\n" + |
7959 |
"lib/b125178.jar pack.age [No source]\n" + |
8010 |
"lib/b125178.jar pack.age [No source]\n" + |
7960 |
"lib/b126330.jar [No source]\n" + |
8011 |
"lib/b126330.jar [No source]\n" + |
7961 |
"lib/b128877.jar [No source]\n" + |
8012 |
"lib/b128877.jar [No source]\n" + |
7962 |
"lib/b128877.jar pack [No source]\n" + |
8013 |
"lib/b128877.jar pack [No source]\n" + |
7963 |
"lib/b137984.jar [No source]\n" + |
8014 |
"lib/b137984.jar [No source]\n" + |
7964 |
"lib/b140156.jar [No source]\n" + |
8015 |
"lib/b140156.jar [No source]\n" + |
7965 |
"lib/b164791.jar [No source]\n" + |
8016 |
"lib/b164791.jar [No source]\n" + |
7966 |
"lib/b164791.jar pack [No source]\n" + |
8017 |
"lib/b164791.jar pack [No source]\n" + |
7967 |
"lib/b164791.jar test [No source]\n" + |
8018 |
"lib/b164791.jar test [No source]\n" + |
7968 |
"lib/b166348.jar [No source]\n" + |
8019 |
"lib/b166348.jar [No source]\n" + |
7969 |
"lib/b166348.jar pack [No source]\n" + |
8020 |
"lib/b166348.jar pack [No source]\n" + |
7970 |
"lib/b166348.jar test [No source]\n" + |
8021 |
"lib/b166348.jar test [No source]\n" + |
7971 |
"lib/b86293.jar [No source]\n" + |
8022 |
"lib/b86293.jar [No source]\n" + |
7972 |
"lib/b87627.jar [No source]\n" + |
8023 |
"lib/b87627.jar [No source]\n" + |
7973 |
"lib/b87627.jar b87627 [No source]\n" + |
8024 |
"lib/b87627.jar b87627 [No source]\n" + |
7974 |
"lib/b89848 b89848\n" + |
8025 |
"lib/b89848 b89848\n" + |
7975 |
"lib/b95152.jar [No source]\n" + |
8026 |
"lib/b95152.jar [No source]\n" + |
7976 |
"lib/b95152.jar b95152 [No source]\n" + |
8027 |
"lib/b95152.jar b95152 [No source]\n" + |
7977 |
"lib/test75816.jar [No source]\n" + |
8028 |
"lib/test75816.jar [No source]\n" + |
7978 |
"lib/test81556.jar [No source]\n" + |
8029 |
"lib/test81556.jar [No source]\n" + |
7979 |
"lib/test81556.jar b81556 [No source]\n" + |
8030 |
"lib/test81556.jar b81556 [No source]\n" + |
7980 |
"lib/test81556.jar b81556.b [No source]\n" + |
8031 |
"lib/test81556.jar b81556.b [No source]\n" + |
7981 |
"src \n" + |
8032 |
"src \n" + |
7982 |
"src/b108088 b108088\n" + |
8033 |
"src/b108088 b108088\n" + |
7983 |
"src/b123679 b123679\n" + |
8034 |
"src/b123679 b123679\n" + |
7984 |
"src/b123679/pack b123679.pack\n" + |
8035 |
"src/b123679/pack b123679.pack\n" + |
7985 |
"src/b123679/test b123679.test\n" + |
8036 |
"src/b123679/test b123679.test\n" + |
7986 |
"src/b124645 b124645\n" + |
8037 |
"src/b124645 b124645\n" + |
7987 |
"src/b124645/test b124645.test\n" + |
8038 |
"src/b124645/test b124645.test\n" + |
7988 |
"src/b124645/xy b124645.xy\n" + |
8039 |
"src/b124645/xy b124645.xy\n" + |
7989 |
"src/b127628 b127628\n" + |
8040 |
"src/b127628 b127628\n" + |
7990 |
"src/b137984 b137984\n" + |
8041 |
"src/b137984 b137984\n" + |
7991 |
"src/b163984 b163984\n" + |
8042 |
"src/b163984 b163984\n" + |
7992 |
"src/b81556 b81556\n" + |
8043 |
"src/b81556 b81556\n" + |
7993 |
"src/b81556/a b81556.a\n" + |
8044 |
"src/b81556/a b81556.a\n" + |
7994 |
"src/b86380 b86380\n" + |
8045 |
"src/b86380 b86380\n" + |
7995 |
"src/b95794 b95794", |
8046 |
"src/b95794 b95794", |
7996 |
packageCollector); |
8047 |
packageCollector); |
7997 |
} |
8048 |
} |
7998 |
|
8049 |
|
7999 |
/** |
8050 |
/** |
8000 |
* @bug 194185 [search] for package declarations finds also subpackages |
8051 |
* @bug 194185 [search] for package declarations finds also subpackages |
8001 |
* @test Ensure that exact package is found when no |
8052 |
* @test Ensure that exact package is found when no |
8002 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=194185" |
8053 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=194185" |
8003 |
*/ |
8054 |
*/ |
8004 |
public void testBug194185() throws CoreException { |
8055 |
public void testBug194185() throws CoreException { |
8005 |
JavaSearchResultCollector packageCollector = new JavaSearchResultCollector(true); |
8056 |
JavaSearchResultCollector packageCollector = new JavaSearchResultCollector(true); |
8006 |
search( |
8057 |
search( |
8007 |
"java", |
8058 |
"java", |
8008 |
PACKAGE, |
8059 |
PACKAGE, |
8009 |
DECLARATIONS, |
8060 |
DECLARATIONS, |
8010 |
SearchEngine.createWorkspaceScope(), |
8061 |
SearchEngine.createWorkspaceScope(), |
8011 |
packageCollector); |
8062 |
packageCollector); |
8012 |
assertSearchResults( |
8063 |
assertSearchResults( |
8013 |
""+ getExternalJCLPathString("1.5") + " java", |
8064 |
""+ getExternalJCLPathString("1.5") + " java", |
Lines 8016-8022
Link Here
|
8016 |
|
8067 |
|
8017 |
/** |
8068 |
/** |
8018 |
* @bug 204652 "Open Type": ClassCastException in conjunction with a class folder |
8069 |
* @bug 204652 "Open Type": ClassCastException in conjunction with a class folder |
8019 |
* @test Ensure that no ClassCastException is thrown for a library folder with a jar like name |
8070 |
* @test Ensure that no ClassCastException is thrown for a library folder with a jar like name |
8020 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=204652" |
8071 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=204652" |
8021 |
*/ |
8072 |
*/ |
8022 |
public void testBug204652() throws CoreException { |
8073 |
public void testBug204652() throws CoreException { |
Lines 8044-8047
Link Here
|
8044 |
} |
8095 |
} |
8045 |
} |
8096 |
} |
8046 |
|
8097 |
|
|
|
8098 |
/** |
8099 |
* @bug 209054: [search] for references to method finds wrong interface call |
8100 |
* @test Ensure that searching method reference does not find wrong interface call |
8101 |
* @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=209054" |
8102 |
*/ |
8103 |
public void testBug209054() throws CoreException { |
8104 |
workingCopies = new ICompilationUnit[1]; |
8105 |
workingCopies[0] = getWorkingCopy("/JavaSearchBugs/src/xy/Try.java", |
8106 |
"package xy;\n" + |
8107 |
"public class Try implements IReferenceUpdating {\n" + |
8108 |
" IMovePolicy fInter;\n" + |
8109 |
" boolean canDo() { // find references\n" + |
8110 |
" return fInter.canDo(); // not a reference\n" + |
8111 |
" }\n" + |
8112 |
"}\n" + |
8113 |
"interface IMovePolicy extends IReferenceUpdating {\n" + |
8114 |
" boolean canDo();\n" + |
8115 |
"}\n" + |
8116 |
"interface IReferenceUpdating {}" |
8117 |
); |
8118 |
IMethod method = workingCopies[0].getType("Try").getMethod("canDo", new String[0]); |
8119 |
search(method, REFERENCES); |
8120 |
assertSearchResults(""); |
8121 |
} |
8122 |
|
8047 |
} |
8123 |
} |