1 /******************************************************************************* 2 * Copyright (c) 2000, 2009 IBM Corporation and others. 3 * 4 * This program and the accompanying materials 5 * are made available under the terms of the Eclipse Public License 2.0 6 * which accompanies this distribution, and is available at 7 * https://www.eclipse.org/legal/epl-2.0/ 8 * 9 * SPDX-License-Identifier: EPL-2.0 10 * 11 * Contributors: 12 * IBM Corporation - initial API and implementation 13 *******************************************************************************/ 14 package org.eclipse.jdt.core.tests.model; 15 16 import junit.framework.Test; 17 18 import org.eclipse.core.runtime.CoreException; 19 import org.eclipse.jdt.core.ICompilationUnit; 20 import org.eclipse.jdt.core.IType; 21 import org.eclipse.jdt.core.search.IJavaSearchScope; 22 import org.eclipse.jdt.core.search.SearchEngine; 23 import org.eclipse.jdt.internal.core.ResolvedSourceType; 24 25 26 /** 27 * Test for generic types search using R_ERASURE_MATCH rule. 28 */ 29 public class JavaSearchGenericTypeTests extends AbstractJavaSearchGenericTests { 30 JavaSearchGenericTypeTests(String name)31 public JavaSearchGenericTypeTests(String name) { 32 super(name, ERASURE_RULE); 33 } 34 // defined for sub-classes JavaSearchGenericTypeTests(String name, int matchRule)35 JavaSearchGenericTypeTests(String name, int matchRule) { 36 super(name, matchRule); 37 } 38 // Use this static initializer to specify subset for tests 39 // All specified tests which do not belong to the class are skipped... 40 static { 41 // org.eclipse.jdt.internal.core.search.matching.MatchLocator.PRINT_BUFFER = false; 42 // TESTS_PREFIX = "testArray"; 43 // TESTS_NAMES = new String[] { "testParameterizedTypeMultipleArguments01" }; 44 // TESTS_NUMBERS = new int[] { 8 }; 45 // TESTS_RANGE = new int[] { 6, -1 }; 46 } suite()47 public static Test suite() { 48 return buildModelTestSuite(JavaSearchGenericTypeTests.class); 49 } 50 51 @Override setUp()52 protected void setUp () throws Exception { 53 super.setUp(); 54 this.resultCollector.showAccuracy(true); 55 this.resultCollector.showRule(); 56 } 57 58 /* 59 * Remove last type arguments from a line of an expected result. 60 * This line contains one search match print out. 61 */ removeLastTypeArgument(char[] line)62 int[] removeLastTypeArgument(char[] line) { 63 int idx=line.length-1; 64 while (line[idx] != ']') { 65 idx--; 66 if (idx == 0) return null; 67 } 68 if (line[--idx] != '>') return null; 69 int n = 1; 70 int end = idx+1; 71 while(idx>=0 && n!= 0) { 72 switch (line[--idx]) { 73 case '<': n--; break; 74 case '>': n++; break; 75 } 76 } 77 if (n!= 0) { 78 // something wrong here... 79 return null; 80 } 81 int start = idx; 82 while (idx>=0 && line[idx] != '[') idx--; 83 if (idx > 0) 84 return new int[] { start, end }; 85 // We should have opened a bracket! 86 return null; 87 } 88 89 @Override addResultLine(StringBuffer buffer, char[] line)90 void addResultLine(StringBuffer buffer, char[] line) { 91 int[] positions = removeLastTypeArgument(line); 92 if (buffer.length() > 0) buffer.append('\n'); 93 if (positions != null) { 94 int stop = positions[0]; 95 int restart = positions[1]; 96 buffer.append(line, 0, stop); 97 buffer.append(line, restart, line.length-restart); 98 } else { 99 buffer.append(line); 100 } 101 } 102 103 /** 104 * Bug 75641: [1.5][Search] Types search does not work with generics 105 * (see bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=75641) 106 */ 107 /* 108 * Following functionalities are tested: 109 * A) Search using an IJavaElement 110 * a) single parameter generic types 111 * b) multiple parameters generic types 112 * B) Search using a not parameterized string pattern 113 * a) simple name 114 * b) any string characters 115 * C) Search using a single parameterized string pattern 116 * a) no wildcard 117 * b) wildcard extends 118 * c) wildcard super 119 * d) wildcard unbound 120 * D) Search using a multiple parameterized string pattern 121 * a) no wildcard 122 * b) wildcard extends 123 * c) wildcard super 124 * d) wildcard unbound 125 */ 126 // Source type pattern on single type argument testTypeSingleArgument01()127 public void testTypeSingleArgument01() throws CoreException { 128 IType type = getCompilationUnit("JavaSearch15/src/g1/t/s/def/Generic.java").getType("Generic"); 129 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 130 search(type, REFERENCES, scope, this.resultCollector); 131 assertSearchResults( 132 "src/g1/t/s/ref/R1.java [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + 133 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen [Generic] ERASURE_RAW_MATCH\n" + 134 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_obj [Generic] ERASURE_MATCH\n" + 135 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_exc [Generic] ERASURE_MATCH\n" + 136 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_wld [Generic] ERASURE_MATCH\n" + 137 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_thr [Generic] ERASURE_MATCH\n" + 138 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_run [Generic] ERASURE_MATCH\n" + 139 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen [g1.t.s.def.Generic] ERASURE_RAW_MATCH\n" + 140 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_obj [g1.t.s.def.Generic] ERASURE_MATCH\n" + 141 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_exc [g1.t.s.def.Generic] ERASURE_MATCH\n" + 142 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_wld [g1.t.s.def.Generic] ERASURE_MATCH\n" + 143 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_thr [g1.t.s.def.Generic] ERASURE_MATCH\n" + 144 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_run [g1.t.s.def.Generic] ERASURE_MATCH\n" + 145 "src/g1/t/s/ref/R3.java [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + 146 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic] ERASURE_RAW_MATCH\n" + 147 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [Generic] ERASURE_MATCH\n" + 148 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [Generic] ERASURE_MATCH\n" + 149 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [Generic] ERASURE_MATCH\n" + 150 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [Generic] ERASURE_MATCH\n" + 151 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [Generic] ERASURE_MATCH\n" + 152 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [g1.t.s.def.Generic] ERASURE_RAW_MATCH\n" + 153 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [g1.t.s.def.Generic] ERASURE_MATCH\n" + 154 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [g1.t.s.def.Generic] ERASURE_MATCH\n" + 155 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [g1.t.s.def.Generic] ERASURE_MATCH\n" + 156 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [g1.t.s.def.Generic] ERASURE_MATCH\n" + 157 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [g1.t.s.def.Generic] ERASURE_MATCH\n" + 158 "src/g1/t/s/ref/R4.java [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + 159 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic] ERASURE_RAW_MATCH\n" + 160 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Generic] ERASURE_MATCH\n" + 161 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Generic] ERASURE_MATCH\n" + 162 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Generic] ERASURE_MATCH\n" + 163 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Generic] ERASURE_MATCH\n" + 164 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Generic] ERASURE_MATCH\n" + 165 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [g1.t.s.def.Generic] ERASURE_RAW_MATCH\n" + 166 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [g1.t.s.def.Generic] ERASURE_MATCH\n" + 167 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [g1.t.s.def.Generic] ERASURE_MATCH\n" + 168 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [g1.t.s.def.Generic] ERASURE_MATCH\n" + 169 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [g1.t.s.def.Generic] ERASURE_MATCH\n" + 170 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [g1.t.s.def.Generic] ERASURE_MATCH", 171 this.resultCollector); 172 } testTypeSingleArgument02()173 public void testTypeSingleArgument02() throws CoreException { 174 IType type = getCompilationUnit("JavaSearch15/src/g1/t/s/def/Generic.java").getType("Generic").getType("Member"); 175 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 176 search(type, REFERENCES, scope, this.resultCollector); 177 assertSearchResults( 178 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic.Member] ERASURE_RAW_MATCH\n" + 179 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Generic<Object>.Member] ERASURE_MATCH\n" + 180 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Generic<Exception>.Member] ERASURE_MATCH\n" + 181 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Generic<?>.Member] ERASURE_MATCH\n" + 182 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Generic<? extends Throwable>.Member] ERASURE_MATCH\n" + 183 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Generic<? super RuntimeException>.Member] ERASURE_MATCH\n" + 184 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [g1.t.s.def.Generic.Member] ERASURE_RAW_MATCH\n" + 185 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [g1.t.s.def.Generic<Object>.Member] ERASURE_MATCH\n" + 186 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [g1.t.s.def.Generic<Exception>.Member] ERASURE_MATCH\n" + 187 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [g1.t.s.def.Generic<?>.Member] ERASURE_MATCH\n" + 188 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [g1.t.s.def.Generic<? extends Throwable>.Member] ERASURE_MATCH\n" + 189 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [g1.t.s.def.Generic<? super RuntimeException>.Member] ERASURE_MATCH", 190 this.resultCollector); 191 } testTypeSingleArgument03()192 public void testTypeSingleArgument03() throws CoreException { 193 IType type = getCompilationUnit("JavaSearch15/src/g1/t/s/def/Generic.java").getType("Generic").getType("MemberGeneric"); 194 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 195 search(type, REFERENCES, scope, this.resultCollector); 196 assertSearchResults( 197 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic.MemberGeneric] ERASURE_RAW_MATCH\n" + 198 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [Generic<Object>.MemberGeneric] ERASURE_MATCH\n" + 199 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [Generic<Exception>.MemberGeneric] ERASURE_MATCH\n" + 200 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [Generic<?>.MemberGeneric] ERASURE_MATCH\n" + 201 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [Generic<? extends Throwable>.MemberGeneric] ERASURE_MATCH\n" + 202 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [Generic<? super RuntimeException>.MemberGeneric] ERASURE_MATCH\n" + 203 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [g1.t.s.def.Generic.MemberGeneric] ERASURE_RAW_MATCH\n" + 204 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [g1.t.s.def.Generic<Object>.MemberGeneric] ERASURE_MATCH\n" + 205 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [g1.t.s.def.Generic<Exception>.MemberGeneric] ERASURE_MATCH\n" + 206 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [g1.t.s.def.Generic<?>.MemberGeneric] ERASURE_MATCH\n" + 207 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [g1.t.s.def.Generic<? extends Throwable>.MemberGeneric] ERASURE_MATCH\n" + 208 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [g1.t.s.def.Generic<? super RuntimeException>.MemberGeneric] ERASURE_MATCH", 209 this.resultCollector); 210 } testTypeSingleArgument04()211 public void testTypeSingleArgument04() throws CoreException { 212 IType type = getCompilationUnit("JavaSearch15/src/g1/t/s/def/NonGeneric.java").getType("NonGeneric").getType("GenericMember"); 213 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 214 search(type, REFERENCES, scope, this.resultCollector); 215 assertSearchResults( 216 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen [NonGeneric.GenericMember] ERASURE_RAW_MATCH\n" + 217 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_obj [NonGeneric.GenericMember] ERASURE_MATCH\n" + 218 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_exc [NonGeneric.GenericMember] ERASURE_MATCH\n" + 219 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_wld [NonGeneric.GenericMember] ERASURE_MATCH\n" + 220 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_thr [NonGeneric.GenericMember] ERASURE_MATCH\n" + 221 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_run [NonGeneric.GenericMember] ERASURE_MATCH\n" + 222 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen [g1.t.s.def.NonGeneric.GenericMember] ERASURE_RAW_MATCH\n" + 223 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_obj [g1.t.s.def.NonGeneric.GenericMember] ERASURE_MATCH\n" + 224 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_exc [g1.t.s.def.NonGeneric.GenericMember] ERASURE_MATCH\n" + 225 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_wld [g1.t.s.def.NonGeneric.GenericMember] ERASURE_MATCH\n" + 226 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_thr [g1.t.s.def.NonGeneric.GenericMember] ERASURE_MATCH\n" + 227 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_run [g1.t.s.def.NonGeneric.GenericMember] ERASURE_MATCH", 228 this.resultCollector); 229 } 230 231 // Source type pattern on multiple type arguments testTypeMultipleArguments01()232 public void testTypeMultipleArguments01() throws CoreException { 233 IType type = getCompilationUnit("JavaSearch15/src/g1/t/m/def/Generic.java").getType("Generic"); 234 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 235 search(type, REFERENCES, scope, this.resultCollector); 236 assertSearchResults( 237 "src/g1/t/m/ref/R1.java [g1.t.m.def.Generic] EQUIVALENT_RAW_MATCH\n" + 238 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen [Generic] ERASURE_RAW_MATCH\n" + 239 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_obj [Generic] ERASURE_MATCH\n" + 240 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_exc [Generic] ERASURE_MATCH\n" + 241 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_wld [Generic] ERASURE_MATCH\n" + 242 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_thr [Generic] ERASURE_MATCH\n" + 243 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_run [Generic] ERASURE_MATCH\n" + 244 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen [g1.t.m.def.Generic] ERASURE_RAW_MATCH\n" + 245 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_obj [g1.t.m.def.Generic] ERASURE_MATCH\n" + 246 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_exc [g1.t.m.def.Generic] ERASURE_MATCH\n" + 247 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_wld [g1.t.m.def.Generic] ERASURE_MATCH\n" + 248 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_thr [g1.t.m.def.Generic] ERASURE_MATCH\n" + 249 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_run [g1.t.m.def.Generic] ERASURE_MATCH\n" + 250 "src/g1/t/m/ref/R3.java [g1.t.m.def.Generic] EQUIVALENT_RAW_MATCH\n" + 251 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [Generic] ERASURE_RAW_MATCH\n" + 252 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [Generic] ERASURE_MATCH\n" + 253 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [Generic] ERASURE_MATCH\n" + 254 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [Generic] ERASURE_MATCH\n" + 255 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [Generic] ERASURE_MATCH\n" + 256 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [Generic] ERASURE_MATCH\n" + 257 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [g1.t.m.def.Generic] ERASURE_RAW_MATCH\n" + 258 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [g1.t.m.def.Generic] ERASURE_MATCH\n" + 259 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [g1.t.m.def.Generic] ERASURE_MATCH\n" + 260 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [g1.t.m.def.Generic] ERASURE_MATCH\n" + 261 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [g1.t.m.def.Generic] ERASURE_MATCH\n" + 262 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [g1.t.m.def.Generic] ERASURE_MATCH\n" + 263 "src/g1/t/m/ref/R4.java [g1.t.m.def.Generic] EQUIVALENT_RAW_MATCH\n" + 264 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Generic] ERASURE_RAW_MATCH\n" + 265 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_obj [Generic] ERASURE_MATCH\n" + 266 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_exc [Generic] ERASURE_MATCH\n" + 267 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_wld [Generic] ERASURE_MATCH\n" + 268 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_thr [Generic] ERASURE_MATCH\n" + 269 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_run [Generic] ERASURE_MATCH\n" + 270 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [g1.t.m.def.Generic] ERASURE_RAW_MATCH\n" + 271 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_obj [g1.t.m.def.Generic] ERASURE_MATCH\n" + 272 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_exc [g1.t.m.def.Generic] ERASURE_MATCH\n" + 273 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_wld [g1.t.m.def.Generic] ERASURE_MATCH\n" + 274 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_thr [g1.t.m.def.Generic] ERASURE_MATCH\n" + 275 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_run [g1.t.m.def.Generic] ERASURE_MATCH", 276 this.resultCollector); 277 } testTypeMultipleArguments02()278 public void testTypeMultipleArguments02() throws CoreException { 279 IType type = getCompilationUnit("JavaSearch15/src/g1/t/m/def/Generic.java").getType("Generic").getType("Member"); 280 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 281 search(type, REFERENCES, scope, this.resultCollector); 282 assertSearchResults( 283 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Generic.Member] ERASURE_RAW_MATCH\n" + 284 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_obj [Generic<Object, Exception, RuntimeException>.Member] ERASURE_MATCH\n" + 285 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_exc [Generic<Exception, Exception, RuntimeException>.Member] ERASURE_MATCH\n" + 286 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_wld [Generic<?, ?, ?>.Member] ERASURE_MATCH\n" + 287 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.Member] ERASURE_MATCH\n" + 288 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.Member] ERASURE_MATCH\n" + 289 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [g1.t.m.def.Generic.Member] ERASURE_RAW_MATCH\n" + 290 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_obj [g1.t.m.def.Generic<Object, Exception, RuntimeException>.Member] ERASURE_MATCH\n" + 291 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_exc [g1.t.m.def.Generic<Exception, Exception, RuntimeException>.Member] ERASURE_MATCH\n" + 292 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_wld [g1.t.m.def.Generic<?, ?, ?>.Member] ERASURE_MATCH\n" + 293 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_thr [g1.t.m.def.Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.Member] ERASURE_MATCH\n" + 294 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_run [g1.t.m.def.Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.Member] ERASURE_MATCH", 295 this.resultCollector); 296 } testTypeMultipleArguments03()297 public void testTypeMultipleArguments03() throws CoreException { 298 IType type = getCompilationUnit("JavaSearch15/src/g1/t/m/def/Generic.java").getType("Generic").getType("MemberGeneric"); 299 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 300 search(type, REFERENCES, scope, this.resultCollector); 301 assertSearchResults( 302 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [Generic.MemberGeneric] ERASURE_RAW_MATCH\n" + 303 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [Generic<Object, Exception, RuntimeException>.MemberGeneric] ERASURE_MATCH\n" + 304 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [Generic<Exception, Exception, RuntimeException>.MemberGeneric] ERASURE_MATCH\n" + 305 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [Generic<?, ?, ?>.MemberGeneric] ERASURE_MATCH\n" + 306 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.MemberGeneric] ERASURE_MATCH\n" + 307 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.MemberGeneric] ERASURE_MATCH\n" + 308 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [g1.t.m.def.Generic.MemberGeneric] ERASURE_RAW_MATCH\n" + 309 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [g1.t.m.def.Generic<Object, Exception, RuntimeException>.MemberGeneric] ERASURE_MATCH\n" + 310 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [g1.t.m.def.Generic<Exception, Exception, RuntimeException>.MemberGeneric] ERASURE_MATCH\n" + 311 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [g1.t.m.def.Generic<?, ?, ?>.MemberGeneric] ERASURE_MATCH\n" + 312 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [g1.t.m.def.Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.MemberGeneric] ERASURE_MATCH\n" + 313 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [g1.t.m.def.Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.MemberGeneric] ERASURE_MATCH", 314 this.resultCollector); 315 } testTypeMultipleArguments04()316 public void testTypeMultipleArguments04() throws CoreException { 317 IType type = getCompilationUnit("JavaSearch15/src/g1/t/m/def/NonGeneric.java").getType("NonGeneric").getType("GenericMember"); 318 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 319 search(type, REFERENCES, scope, this.resultCollector); 320 assertSearchResults( 321 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen [NonGeneric.GenericMember] ERASURE_RAW_MATCH\n" + 322 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_obj [NonGeneric.GenericMember] ERASURE_MATCH\n" + 323 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_exc [NonGeneric.GenericMember] ERASURE_MATCH\n" + 324 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_wld [NonGeneric.GenericMember] ERASURE_MATCH\n" + 325 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_thr [NonGeneric.GenericMember] ERASURE_MATCH\n" + 326 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_run [NonGeneric.GenericMember] ERASURE_MATCH\n" + 327 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen [g1.t.m.def.NonGeneric.GenericMember] ERASURE_RAW_MATCH\n" + 328 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_obj [g1.t.m.def.NonGeneric.GenericMember] ERASURE_MATCH\n" + 329 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_exc [g1.t.m.def.NonGeneric.GenericMember] ERASURE_MATCH\n" + 330 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_wld [g1.t.m.def.NonGeneric.GenericMember] ERASURE_MATCH\n" + 331 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_thr [g1.t.m.def.NonGeneric.GenericMember] ERASURE_MATCH\n" + 332 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_run [g1.t.m.def.NonGeneric.GenericMember] ERASURE_MATCH", 333 this.resultCollector); 334 } 335 336 // Source type pattern on nested single type argument testTypeNestedSingleArgument01()337 public void testTypeNestedSingleArgument01() throws CoreException { 338 IType type = getCompilationUnit("JavaSearch15/src/g3/t/def/GS.java").getType("GS"); 339 ICompilationUnit ref = getCompilationUnit("JavaSearch15/src/g3/t/ref/R1.java"); 340 IJavaSearchScope scope = SearchEngine.createJavaSearchScope(new ICompilationUnit[] {ref}); 341 search(type, REFERENCES, scope, this.resultCollector); 342 assertSearchResults( 343 "src/g3/t/ref/R1.java [g3.t.def.GS] EQUIVALENT_RAW_MATCH\n" + 344 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_wld [GS] ERASURE_MATCH\n" + 345 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_www [GS] ERASURE_MATCH\n" + 346 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_obj [GS] ERASURE_MATCH\n" + 347 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_wld [GS] ERASURE_MATCH\n" + 348 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_wld [GS] ERASURE_MATCH\n" + 349 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_wld [GS] ERASURE_MATCH\n" + 350 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS] ERASURE_MATCH\n" + 351 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS] ERASURE_MATCH\n" + 352 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS] ERASURE_MATCH\n" + 353 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS] ERASURE_MATCH\n" + 354 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS] ERASURE_MATCH\n" + 355 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS] ERASURE_MATCH\n" + 356 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_obj [GS] ERASURE_MATCH\n" + 357 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_obj [GS] ERASURE_MATCH\n" + 358 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_obj [GS] ERASURE_MATCH\n" + 359 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_wld [g3.t.def.GS] ERASURE_MATCH\n" + 360 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_www [g3.t.def.GS] ERASURE_MATCH\n" + 361 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_obj [g3.t.def.GS] ERASURE_MATCH\n" + 362 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_wld [g3.t.def.GS] ERASURE_MATCH\n" + 363 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_wld [g3.t.def.GS] ERASURE_MATCH\n" + 364 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_wld [g3.t.def.GS] ERASURE_MATCH\n" + 365 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [g3.t.def.GS] ERASURE_MATCH\n" + 366 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [g3.t.def.GS] ERASURE_MATCH\n" + 367 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [g3.t.def.GS] ERASURE_MATCH\n" + 368 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [g3.t.def.GS] ERASURE_MATCH\n" + 369 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [g3.t.def.GS] ERASURE_MATCH\n" + 370 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [g3.t.def.GS] ERASURE_MATCH\n" + 371 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_obj [g3.t.def.GS] ERASURE_MATCH\n" + 372 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_obj [g3.t.def.GS] ERASURE_MATCH\n" + 373 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_obj [g3.t.def.GS] ERASURE_MATCH", 374 this.resultCollector); 375 } testTypeNestedSingleArgument02()376 public void testTypeNestedSingleArgument02() throws CoreException { 377 IType type = getCompilationUnit("JavaSearch15/src/g3/t/def/GS.java").getType("GS").getType("Member"); 378 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 379 search(type, REFERENCES, scope, this.resultCollector); 380 assertSearchResults( 381 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_wld [GS<GM<?, ?, ?>.Member>.Member] ERASURE_MATCH\n" + 382 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GS<GM<GM<?, ?, ?>.Member,GM<?, ?, ?>.Member,GM<?, ?, ?>.Member>.Member>.Member] ERASURE_MATCH\n" + 383 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_obj [GS<GM<Object, Exception, RuntimeException>.Member>.Member] ERASURE_MATCH\n" + 384 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_wld [GS<?>.Member] ERASURE_MATCH\n" + 385 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_wld [GS<?>.Member] ERASURE_MATCH\n" + 386 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_wld [GS<?>.Member] ERASURE_MATCH\n" + 387 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<?>.Member] ERASURE_MATCH\n" + 388 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<GS<?>.Member>.Member] ERASURE_MATCH\n" + 389 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<?>.Member] ERASURE_MATCH\n" + 390 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<GS<GS<?>.Member>.Member>.Member] ERASURE_MATCH\n" + 391 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<GS<?>.Member>.Member] ERASURE_MATCH\n" + 392 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<?>.Member] ERASURE_MATCH\n" + 393 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_obj [GS<Object>.Member] ERASURE_MATCH\n" + 394 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_obj [GS<? extends Throwable>.Member] ERASURE_MATCH\n" + 395 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_obj [GS<? super RuntimeException>.Member] ERASURE_MATCH\n" + 396 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_wld [g3.t.def.GS<g3.t.def.GM<?, ?, ?>.Member>.Member] ERASURE_MATCH\n" + 397 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [g3.t.def.GS<g3.t.def.GM<g3.t.def.GM<?, ?, ?>.Member, g3.t.def.GM<?, ?, ?>.Member, g3.t.def.GM<?, ?, ?>.Member>.Member>.Member] ERASURE_MATCH\n" + 398 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_obj [g3.t.def.GS<g3.t.def.GM<java.lang.Object, java.lang.Exception, java.lang.RuntimeException>.Member>.Member] ERASURE_MATCH\n" + 399 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_wld [g3.t.def.GS<?>.Member] ERASURE_MATCH\n" + 400 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_wld [g3.t.def.GS<?>.Member] ERASURE_MATCH\n" + 401 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_wld [g3.t.def.GS<?>.Member] ERASURE_MATCH\n" + 402 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [g3.t.def.GS<?>.Member] ERASURE_MATCH\n" + 403 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [g3.t.def.GS<g3.t.def.GS<?>.Member>.Member] ERASURE_MATCH\n" + 404 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [g3.t.def.GS<?>.Member] ERASURE_MATCH\n" + 405 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [g3.t.def.GS<g3.t.def.GS<g3.t.def.GS<?>.Member>.Member>.Member] ERASURE_MATCH\n" + 406 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [g3.t.def.GS<g3.t.def.GS<?>.Member>.Member] ERASURE_MATCH\n" + 407 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [g3.t.def.GS<?>.Member] ERASURE_MATCH\n" + 408 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_obj [g3.t.def.GS<java.lang.Object>.Member] ERASURE_MATCH\n" + 409 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_obj [g3.t.def.GS<? extends java.lang.Throwable>.Member] ERASURE_MATCH\n" + 410 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_obj [g3.t.def.GS<? super java.lang.RuntimeException>.Member] ERASURE_MATCH", 411 this.resultCollector); 412 } testTypeNestedSingleArgument03()413 public void testTypeNestedSingleArgument03() throws CoreException { 414 IType type = getCompilationUnit("JavaSearch15/src/g3/t/def/GS.java").getType("GS").getType("Generic"); 415 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 416 search(type, REFERENCES, scope, this.resultCollector); 417 assertSearchResults( 418 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_wld [GS<GM<?, ?, ?>.Generic<?, ?, ?>>.Generic] ERASURE_MATCH\n" + 419 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_www [GS<GM<GM<?, ?, ?>.Generic<?,?,?>,GM<?, ?, ?>.Generic<?,?,?>,GM<?, ?, ?>.Generic<?,?,?>>.Generic<?,?,?>>.Generic] ERASURE_MATCH\n" + 420 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_obj [GS<GM<Object, Exception, RuntimeException>.Generic<Object, Exception, RuntimeException>>.Generic] ERASURE_MATCH\n" + 421 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_wld [GS<?>.Generic] ERASURE_MATCH\n" + 422 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_wld [GS<?>.Generic] ERASURE_MATCH\n" + 423 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_wld [GS<?>.Generic] ERASURE_MATCH\n" + 424 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<?>.Generic] ERASURE_MATCH\n" + 425 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<GS<?>.Generic<?>>.Generic] ERASURE_MATCH\n" + 426 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<?>.Generic] ERASURE_MATCH\n" + 427 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<GS<GS<?>.Generic<?>>.Generic<?>>.Generic] ERASURE_MATCH\n" + 428 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<GS<?>.Generic<?>>.Generic] ERASURE_MATCH\n" + 429 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<?>.Generic] ERASURE_MATCH\n" + 430 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_obj [GS<Object>.Generic] ERASURE_MATCH\n" + 431 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_obj [GS<? extends Throwable>.Generic] ERASURE_MATCH\n" + 432 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_obj [GS<? super RuntimeException>.Generic] ERASURE_MATCH\n" + 433 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_wld [g3.t.def.GS<g3.t.def.GM<?, ?, ?>.Generic<?, ?, ?>>.Generic] ERASURE_MATCH\n" + 434 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_www [g3.t.def.GS<g3.t.def.GM<g3.t.def.GM<?, ?, ?>.Generic<?,?,?>,g3.t.def.GM<?, ?, ?>.Generic<?,?,?>,g3.t.def.GM<?, ?, ?>.Generic<?,?,?>>.Generic<?,?,?>>.Generic] ERASURE_MATCH\n" + 435 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_obj [g3.t.def.GS<g3.t.def.GM<Object, Exception, RuntimeException>.Generic<Object, Exception, RuntimeException>>.Generic] ERASURE_MATCH\n" + 436 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_wld [g3.t.def.GS<?>.Generic] ERASURE_MATCH\n" + 437 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_wld [g3.t.def.GS<?>.Generic] ERASURE_MATCH\n" + 438 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_wld [g3.t.def.GS<?>.Generic] ERASURE_MATCH\n" + 439 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [g3.t.def.GS<?>.Generic] ERASURE_MATCH\n" + 440 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [g3.t.def.GS<g3.t.def.GS<?>.Generic<?>>.Generic] ERASURE_MATCH\n" + 441 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [g3.t.def.GS<?>.Generic] ERASURE_MATCH\n" + 442 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [g3.t.def.GS<g3.t.def.GS<g3.t.def.GS<?>.Generic<?>>.Generic<?>>.Generic] ERASURE_MATCH\n" + 443 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [g3.t.def.GS<g3.t.def.GS<?>.Generic<?>>.Generic] ERASURE_MATCH\n" + 444 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [g3.t.def.GS<?>.Generic] ERASURE_MATCH\n" + 445 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_obj [g3.t.def.GS<Object>.Generic] ERASURE_MATCH\n" + 446 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_obj [g3.t.def.GS<? extends Throwable>.Generic] ERASURE_MATCH\n" + 447 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_obj [g3.t.def.GS<? super RuntimeException>.Generic] ERASURE_MATCH", 448 this.resultCollector); 449 } testTypeNestedSingleArgument04()450 public void testTypeNestedSingleArgument04() throws CoreException { 451 IType type = getCompilationUnit("JavaSearch15/src/g3/t/def/NGS.java").getType("NGS").getType("Generic"); 452 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 453 search(type, REFERENCES, scope, this.resultCollector); 454 assertSearchResults( 455 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_wld [NGS.Generic] ERASURE_MATCH\n" + 456 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_www [NGS.Generic] ERASURE_MATCH\n" + 457 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_obj [NGS.Generic] ERASURE_MATCH\n" + 458 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_wld [NGS.Generic] ERASURE_MATCH\n" + 459 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_wld [NGS.Generic] ERASURE_MATCH\n" + 460 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_wld [NGS.Generic] ERASURE_MATCH\n" + 461 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic] ERASURE_MATCH\n" + 462 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic] ERASURE_MATCH\n" + 463 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic] ERASURE_MATCH\n" + 464 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic] ERASURE_MATCH\n" + 465 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic] ERASURE_MATCH\n" + 466 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic] ERASURE_MATCH\n" + 467 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_obj [NGS.Generic] ERASURE_MATCH\n" + 468 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_obj [NGS.Generic] ERASURE_MATCH\n" + 469 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_obj [NGS.Generic] ERASURE_MATCH\n" + 470 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_wld [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 471 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_www [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 472 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_obj [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 473 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_wld [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 474 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_wld [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 475 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_wld [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 476 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 477 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 478 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 479 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 480 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 481 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 482 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_obj [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 483 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_obj [g3.t.def.NGS.Generic] ERASURE_MATCH\n" + 484 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_obj [g3.t.def.NGS.Generic] ERASURE_MATCH", 485 this.resultCollector); 486 } 487 488 // Source type pattern on nested multiple type arguments testTypeNestedMultipleArguments01()489 public void testTypeNestedMultipleArguments01() throws CoreException { 490 IType type = getCompilationUnit("JavaSearch15/src/g3/t/def/GM.java").getType("GM"); 491 ICompilationUnit ref = getCompilationUnit("JavaSearch15/src/g3/t/ref/R1.java"); 492 IJavaSearchScope scope = SearchEngine.createJavaSearchScope(new ICompilationUnit[] {ref}); 493 search(type, REFERENCES, scope, this.resultCollector); 494 assertSearchResults( 495 "src/g3/t/ref/R1.java [g3.t.def.GM] EQUIVALENT_RAW_MATCH\n" + 496 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_wld [GM] ERASURE_MATCH\n" + 497 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_www [GM] ERASURE_MATCH\n" + 498 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_www [GM] ERASURE_MATCH\n" + 499 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_www [GM] ERASURE_MATCH\n" + 500 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_www [GM] ERASURE_MATCH\n" + 501 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_obj [GM] ERASURE_MATCH\n" + 502 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_wld [GM] ERASURE_MATCH\n" + 503 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GM] ERASURE_MATCH\n" + 504 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_obj [GM] ERASURE_MATCH\n" + 505 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_wld [g3.t.def.GM] ERASURE_MATCH\n" + 506 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_www [g3.t.def.GM] ERASURE_MATCH\n" + 507 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_www [g3.t.def.GM] ERASURE_MATCH\n" + 508 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_www [g3.t.def.GM] ERASURE_MATCH\n" + 509 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_www [g3.t.def.GM] ERASURE_MATCH\n" + 510 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_obj [g3.t.def.GM] ERASURE_MATCH\n" + 511 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_wld [g3.t.def.GM] ERASURE_MATCH\n" + 512 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [g3.t.def.GM] ERASURE_MATCH\n" + 513 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_obj [g3.t.def.GM] ERASURE_MATCH", 514 this.resultCollector); 515 } testTypeNestedMultipleArguments02()516 public void testTypeNestedMultipleArguments02() throws CoreException { 517 IType type = getCompilationUnit("JavaSearch15/src/g3/t/def/GM.java").getType("GM").getType("Member"); 518 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 519 search(type, REFERENCES, scope, this.resultCollector); 520 assertSearchResults( 521 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_wld [GM<?, ?, ?>.Member] ERASURE_MATCH\n" + 522 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<GM<?, ?, ?>.Member,GM<?, ?, ?>.Member,GM<?, ?, ?>.Member>.Member] ERASURE_MATCH\n" + 523 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<?, ?, ?>.Member] ERASURE_MATCH\n" + 524 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<?, ?, ?>.Member] ERASURE_MATCH\n" + 525 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<?, ?, ?>.Member] ERASURE_MATCH\n" + 526 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_obj [GM<Object, Exception, RuntimeException>.Member] ERASURE_MATCH\n" + 527 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_wld [GM<GS<?>.Member, GS<?>.Member, GS<?>.Member>.Member] ERASURE_MATCH\n" + 528 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GM<GS<?>.Member, GS<GS<?>.Member>.Member, GS<GS<GS<?>.Member>.Member>.Member>.Member] ERASURE_MATCH\n" + 529 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_obj [GM<GS<Object>.Member, GS<? extends Throwable>.Member, GS<? super RuntimeException>.Member>.Member] ERASURE_MATCH\n" + 530 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_wld [g3.t.def.GM<?, ?, ?>.Member] ERASURE_MATCH\n" + 531 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [g3.t.def.GM<g3.t.def.GM<?, ?, ?>.Member, g3.t.def.GM<?, ?, ?>.Member, g3.t.def.GM<?, ?, ?>.Member>.Member] ERASURE_MATCH\n" + 532 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [g3.t.def.GM<?, ?, ?>.Member] ERASURE_MATCH\n" + 533 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [g3.t.def.GM<?, ?, ?>.Member] ERASURE_MATCH\n" + 534 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [g3.t.def.GM<?, ?, ?>.Member] ERASURE_MATCH\n" + 535 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_obj [g3.t.def.GM<java.lang.Object, java.lang.Exception, java.lang.RuntimeException>.Member] ERASURE_MATCH\n" + 536 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_wld [g3.t.def.GM<g3.t.def.GS<?>.Member, g3.t.def.GS<?>.Member, g3.t.def.GS<?>.Member>.Member] ERASURE_MATCH\n" + 537 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [g3.t.def.GM<g3.t.def.GS<?>.Member, g3.t.def.GS<g3.t.def.GS<?>.Member>.Member, g3.t.def.GS<g3.t.def.GS<g3.t.def.GS<?>.Member>.Member>.Member>.Member] ERASURE_MATCH\n" + 538 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_obj [g3.t.def.GM<g3.t.def.GS<java.lang.Object>.Member, g3.t.def.GS<? extends java.lang.Throwable>.Member, g3.t.def.GS<? super java.lang.RuntimeException>.Member>.Member] ERASURE_MATCH", 539 this.resultCollector); 540 } testTypeNestedMultipleArguments03()541 public void testTypeNestedMultipleArguments03() throws CoreException { 542 IType type = getCompilationUnit("JavaSearch15/src/g3/t/def/GM.java").getType("GM").getType("Generic"); 543 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 544 search(type, REFERENCES, scope, this.resultCollector); 545 assertSearchResults( 546 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_wld [GM<?, ?, ?>.Generic] ERASURE_MATCH\n" + 547 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_www [GM<GM<?, ?, ?>.Generic<?,?,?>,GM<?, ?, ?>.Generic<?,?,?>,GM<?, ?, ?>.Generic<?,?,?>>.Generic] ERASURE_MATCH\n" + 548 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_www [GM<?, ?, ?>.Generic] ERASURE_MATCH\n" + 549 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_www [GM<?, ?, ?>.Generic] ERASURE_MATCH\n" + 550 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_www [GM<?, ?, ?>.Generic] ERASURE_MATCH\n" + 551 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_obj [GM<Object, Exception, RuntimeException>.Generic] ERASURE_MATCH\n" + 552 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_wld [GM<GS<?>.Generic<?>, GS<?>.Generic<?>, GS<?>.Generic<?>>.Generic] ERASURE_MATCH\n" + 553 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GM<GS<?>.Generic<?>, GS<GS<?>.Generic<?>>.Generic<?>, GS<GS<GS<?>.Generic<?>>.Generic<?>>.Generic<?>>.Generic] ERASURE_MATCH\n" + 554 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_obj [GM<GS<Object>.Generic<?>, GS<? extends Throwable>.Generic<?>, GS<? super RuntimeException>.Generic<?>>.Generic] ERASURE_MATCH\n" + 555 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_wld [g3.t.def.GM<?, ?, ?>.Generic] ERASURE_MATCH\n" + 556 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_www [g3.t.def.GM<g3.t.def.GM<?, ?, ?>.Generic<?,?,?>,g3.t.def.GM<?, ?, ?>.Generic<?,?,?>,g3.t.def.GM<?, ?, ?>.Generic<?,?,?>>.Generic] ERASURE_MATCH\n" + 557 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_www [g3.t.def.GM<?, ?, ?>.Generic] ERASURE_MATCH\n" + 558 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_www [g3.t.def.GM<?, ?, ?>.Generic] ERASURE_MATCH\n" + 559 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_www [g3.t.def.GM<?, ?, ?>.Generic] ERASURE_MATCH\n" + 560 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_obj [g3.t.def.GM<Object, Exception, RuntimeException>.Generic] ERASURE_MATCH\n" + 561 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_wld [g3.t.def.GM<g3.t.def.GS<?>.Generic<?>, g3.t.def.GS<?>.Generic<?>, g3.t.def.GS<?>.Generic<?>>.Generic] ERASURE_MATCH\n" + 562 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [g3.t.def.GM<g3.t.def.GS<?>.Generic<?>, g3.t.def.GS<g3.t.def.GS<?>.Generic<?>>.Generic<?>, g3.t.def.GS<g3.t.def.GS<g3.t.def.GS<?>.Generic<?>>.Generic<?>>.Generic<?>>.Generic] ERASURE_MATCH\n" + 563 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_obj [g3.t.def.GM<g3.t.def.GS<Object>.Generic<?>, g3.t.def.GS<? extends Throwable>.Generic<?>, g3.t.def.GS<? super RuntimeException>.Generic<?>>.Generic] ERASURE_MATCH", 564 this.resultCollector); 565 } testTypeNestedMultipleArguments04()566 public void testTypeNestedMultipleArguments04() throws CoreException { 567 IType type = getCompilationUnit("JavaSearch15/src/g3/t/def/NGM.java").getType("NGM").getType("Generic"); 568 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 569 search(type, REFERENCES, scope, this.resultCollector); 570 assertSearchResults( 571 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_wld [NGM.Generic] ERASURE_MATCH\n" + 572 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_www [NGM.Generic] ERASURE_MATCH\n" + 573 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_www [NGM.Generic] ERASURE_MATCH\n" + 574 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_www [NGM.Generic] ERASURE_MATCH\n" + 575 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_www [NGM.Generic] ERASURE_MATCH\n" + 576 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_obj [NGM.Generic] ERASURE_MATCH\n" + 577 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_wld [NGM.Generic] ERASURE_MATCH\n" + 578 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGM.Generic] ERASURE_MATCH\n" + 579 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_obj [NGM.Generic] ERASURE_MATCH\n" + 580 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_wld [g3.t.def.NGM.Generic] ERASURE_MATCH\n" + 581 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_www [g3.t.def.NGM.Generic] ERASURE_MATCH\n" + 582 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_www [g3.t.def.NGM.Generic] ERASURE_MATCH\n" + 583 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_www [g3.t.def.NGM.Generic] ERASURE_MATCH\n" + 584 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_www [g3.t.def.NGM.Generic] ERASURE_MATCH\n" + 585 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_obj [g3.t.def.NGM.Generic] ERASURE_MATCH\n" + 586 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_wld [g3.t.def.NGM.Generic] ERASURE_MATCH\n" + 587 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [g3.t.def.NGM.Generic] ERASURE_MATCH\n" + 588 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_obj [g3.t.def.NGM.Generic] ERASURE_MATCH", 589 this.resultCollector); 590 } 591 592 // String pattern with no type argument testStringNoArgument01()593 public void testStringNoArgument01() throws CoreException { 594 IJavaSearchScope scope = getJavaSearchScope15("g1.t.s.ref", false /* only this package */); 595 search("Generic", TYPE, REFERENCES, scope, this.resultCollector); 596 assertSearchResults( 597 "src/g1/t/s/ref/R1.java [Generic] EXACT_RAW_MATCH\n" + 598 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen [Generic] EXACT_RAW_MATCH\n" + 599 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_obj [Generic] EQUIVALENT_MATCH\n" + 600 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_exc [Generic] EQUIVALENT_MATCH\n" + 601 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_wld [Generic] EQUIVALENT_MATCH\n" + 602 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_thr [Generic] EQUIVALENT_MATCH\n" + 603 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_run [Generic] EQUIVALENT_MATCH\n" + 604 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen [Generic] EXACT_RAW_MATCH\n" + 605 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_obj [Generic] EQUIVALENT_MATCH\n" + 606 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_exc [Generic] EQUIVALENT_MATCH\n" + 607 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_wld [Generic] EQUIVALENT_MATCH\n" + 608 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_thr [Generic] EQUIVALENT_MATCH\n" + 609 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_run [Generic] EQUIVALENT_MATCH\n" + 610 "src/g1/t/s/ref/R3.java [Generic] EXACT_RAW_MATCH\n" + 611 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic] EXACT_RAW_MATCH\n" + 612 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [Generic] EQUIVALENT_MATCH\n" + 613 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [Generic] EQUIVALENT_MATCH\n" + 614 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [Generic] EQUIVALENT_MATCH\n" + 615 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [Generic] EQUIVALENT_MATCH\n" + 616 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [Generic] EQUIVALENT_MATCH\n" + 617 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [Generic] EXACT_RAW_MATCH\n" + 618 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [Generic] EQUIVALENT_MATCH\n" + 619 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [Generic] EQUIVALENT_MATCH\n" + 620 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [Generic] EQUIVALENT_MATCH\n" + 621 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [Generic] EQUIVALENT_MATCH\n" + 622 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [Generic] EQUIVALENT_MATCH\n" + 623 "src/g1/t/s/ref/R4.java [Generic] EXACT_RAW_MATCH\n" + 624 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic] EXACT_RAW_MATCH\n" + 625 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Generic] EQUIVALENT_MATCH\n" + 626 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Generic] EQUIVALENT_MATCH\n" + 627 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Generic] EQUIVALENT_MATCH\n" + 628 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Generic] EQUIVALENT_MATCH\n" + 629 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Generic] EQUIVALENT_MATCH\n" + 630 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [Generic] EXACT_RAW_MATCH\n" + 631 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [Generic] EQUIVALENT_MATCH\n" + 632 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [Generic] EQUIVALENT_MATCH\n" + 633 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [Generic] EQUIVALENT_MATCH\n" + 634 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [Generic] EQUIVALENT_MATCH\n" + 635 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [Generic] EQUIVALENT_MATCH", 636 this.resultCollector); 637 } testStringNoArgument02()638 public void testStringNoArgument02() throws CoreException { 639 IJavaSearchScope scope = getJavaSearchScope15("g1.t.m.ref", false /* only this package */); 640 search("Generic", TYPE, REFERENCES, scope, this.resultCollector); 641 assertSearchResults( 642 "src/g1/t/m/ref/R1.java [Generic] EXACT_RAW_MATCH\n" + 643 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen [Generic] EXACT_RAW_MATCH\n" + 644 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_obj [Generic] EQUIVALENT_MATCH\n" + 645 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_exc [Generic] EQUIVALENT_MATCH\n" + 646 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_wld [Generic] EQUIVALENT_MATCH\n" + 647 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_thr [Generic] EQUIVALENT_MATCH\n" + 648 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_run [Generic] EQUIVALENT_MATCH\n" + 649 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen [Generic] EXACT_RAW_MATCH\n" + 650 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_obj [Generic] EQUIVALENT_MATCH\n" + 651 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_exc [Generic] EQUIVALENT_MATCH\n" + 652 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_wld [Generic] EQUIVALENT_MATCH\n" + 653 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_thr [Generic] EQUIVALENT_MATCH\n" + 654 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_run [Generic] EQUIVALENT_MATCH\n" + 655 "src/g1/t/m/ref/R3.java [Generic] EXACT_RAW_MATCH\n" + 656 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [Generic] EXACT_RAW_MATCH\n" + 657 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [Generic] EQUIVALENT_MATCH\n" + 658 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [Generic] EQUIVALENT_MATCH\n" + 659 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [Generic] EQUIVALENT_MATCH\n" + 660 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [Generic] EQUIVALENT_MATCH\n" + 661 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [Generic] EQUIVALENT_MATCH\n" + 662 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [Generic] EXACT_RAW_MATCH\n" + 663 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [Generic] EQUIVALENT_MATCH\n" + 664 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [Generic] EQUIVALENT_MATCH\n" + 665 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [Generic] EQUIVALENT_MATCH\n" + 666 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [Generic] EQUIVALENT_MATCH\n" + 667 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [Generic] EQUIVALENT_MATCH\n" + 668 "src/g1/t/m/ref/R4.java [Generic] EXACT_RAW_MATCH\n" + 669 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Generic] EXACT_RAW_MATCH\n" + 670 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_obj [Generic] EQUIVALENT_MATCH\n" + 671 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_exc [Generic] EQUIVALENT_MATCH\n" + 672 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_wld [Generic] EQUIVALENT_MATCH\n" + 673 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_thr [Generic] EQUIVALENT_MATCH\n" + 674 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_run [Generic] EQUIVALENT_MATCH\n" + 675 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [Generic] EXACT_RAW_MATCH\n" + 676 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_obj [Generic] EQUIVALENT_MATCH\n" + 677 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_exc [Generic] EQUIVALENT_MATCH\n" + 678 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_wld [Generic] EQUIVALENT_MATCH\n" + 679 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_thr [Generic] EQUIVALENT_MATCH\n" + 680 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_run [Generic] EQUIVALENT_MATCH", 681 this.resultCollector); 682 } testStringNoArgument03()683 public void testStringNoArgument03() throws CoreException { 684 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 685 search("Member", TYPE, REFERENCES, scope, this.resultCollector); 686 assertSearchResults( 687 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Member] EXACT_RAW_MATCH\n" + 688 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_obj [Member] EXACT_MATCH\n" + 689 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_exc [Member] EXACT_MATCH\n" + 690 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_wld [Member] EXACT_MATCH\n" + 691 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_thr [Member] EXACT_MATCH\n" + 692 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_run [Member] EXACT_MATCH\n" + 693 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [Member] EXACT_RAW_MATCH\n" + 694 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_obj [Member] EXACT_MATCH\n" + 695 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_exc [Member] EXACT_MATCH\n" + 696 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_wld [Member] EXACT_MATCH\n" + 697 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_thr [Member] EXACT_MATCH\n" + 698 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_run [Member] EXACT_MATCH\n" + 699 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Member] EXACT_RAW_MATCH\n" + 700 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Member] EXACT_MATCH\n" + 701 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Member] EXACT_MATCH\n" + 702 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Member] EXACT_MATCH\n" + 703 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Member] EXACT_MATCH\n" + 704 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Member] EXACT_MATCH\n" + 705 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [Member] EXACT_RAW_MATCH\n" + 706 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [Member] EXACT_MATCH\n" + 707 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [Member] EXACT_MATCH\n" + 708 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [Member] EXACT_MATCH\n" + 709 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [Member] EXACT_MATCH\n" + 710 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [Member] EXACT_MATCH", 711 this.resultCollector); 712 } testStringNoArgument04()713 public void testStringNoArgument04() throws CoreException { 714 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 715 search("MemberGeneric", TYPE, REFERENCES, scope, this.resultCollector); 716 assertSearchResults( 717 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [MemberGeneric] EXACT_RAW_MATCH\n" + 718 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [MemberGeneric] EQUIVALENT_MATCH\n" + 719 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [MemberGeneric] EQUIVALENT_MATCH\n" + 720 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [MemberGeneric] EQUIVALENT_MATCH\n" + 721 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [MemberGeneric] EQUIVALENT_MATCH\n" + 722 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [MemberGeneric] EQUIVALENT_MATCH\n" + 723 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [MemberGeneric] EXACT_RAW_MATCH\n" + 724 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [MemberGeneric] EQUIVALENT_MATCH\n" + 725 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [MemberGeneric] EQUIVALENT_MATCH\n" + 726 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [MemberGeneric] EQUIVALENT_MATCH\n" + 727 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [MemberGeneric] EQUIVALENT_MATCH\n" + 728 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [MemberGeneric] EQUIVALENT_MATCH\n" + 729 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [MemberGeneric] EXACT_RAW_MATCH\n" + 730 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [MemberGeneric] EQUIVALENT_MATCH\n" + 731 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [MemberGeneric] EQUIVALENT_MATCH\n" + 732 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [MemberGeneric] EQUIVALENT_MATCH\n" + 733 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [MemberGeneric] EQUIVALENT_MATCH\n" + 734 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [MemberGeneric] EQUIVALENT_MATCH\n" + 735 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [MemberGeneric] EXACT_RAW_MATCH\n" + 736 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [MemberGeneric] EQUIVALENT_MATCH\n" + 737 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [MemberGeneric] EQUIVALENT_MATCH\n" + 738 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [MemberGeneric] EQUIVALENT_MATCH\n" + 739 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [MemberGeneric] EQUIVALENT_MATCH\n" + 740 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [MemberGeneric] EQUIVALENT_MATCH", 741 this.resultCollector); 742 } testStringNoArgument05()743 public void testStringNoArgument05() throws CoreException { 744 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 745 search("GenericMember", TYPE, REFERENCES, scope, this.resultCollector); 746 assertSearchResults( 747 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen [GenericMember] EXACT_RAW_MATCH\n" + 748 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_obj [GenericMember] EQUIVALENT_MATCH\n" + 749 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_exc [GenericMember] EQUIVALENT_MATCH\n" + 750 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_wld [GenericMember] EQUIVALENT_MATCH\n" + 751 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_thr [GenericMember] EQUIVALENT_MATCH\n" + 752 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_run [GenericMember] EQUIVALENT_MATCH\n" + 753 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen [GenericMember] EXACT_RAW_MATCH\n" + 754 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_obj [GenericMember] EQUIVALENT_MATCH\n" + 755 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_exc [GenericMember] EQUIVALENT_MATCH\n" + 756 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_wld [GenericMember] EQUIVALENT_MATCH\n" + 757 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_thr [GenericMember] EQUIVALENT_MATCH\n" + 758 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_run [GenericMember] EQUIVALENT_MATCH\n" + 759 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen [GenericMember] EXACT_RAW_MATCH\n" + 760 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_obj [GenericMember] EQUIVALENT_MATCH\n" + 761 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_exc [GenericMember] EQUIVALENT_MATCH\n" + 762 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_wld [GenericMember] EQUIVALENT_MATCH\n" + 763 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_thr [GenericMember] EQUIVALENT_MATCH\n" + 764 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_run [GenericMember] EQUIVALENT_MATCH\n" + 765 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen [GenericMember] EXACT_RAW_MATCH\n" + 766 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_obj [GenericMember] EQUIVALENT_MATCH\n" + 767 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_exc [GenericMember] EQUIVALENT_MATCH\n" + 768 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_wld [GenericMember] EQUIVALENT_MATCH\n" + 769 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_thr [GenericMember] EQUIVALENT_MATCH\n" + 770 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_run [GenericMember] EQUIVALENT_MATCH", 771 this.resultCollector); 772 } testStringNoArgument06()773 public void testStringNoArgument06() throws CoreException { 774 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 775 search("Generic.Member", TYPE, REFERENCES, scope, this.resultCollector); 776 assertSearchResults( 777 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Generic.Member] EXACT_RAW_MATCH\n" + 778 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_obj [Generic<Object, Exception, RuntimeException>.Member] EQUIVALENT_MATCH\n" + 779 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_exc [Generic<Exception, Exception, RuntimeException>.Member] EQUIVALENT_MATCH\n" + 780 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_wld [Generic<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 781 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.Member] EQUIVALENT_MATCH\n" + 782 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.Member] EQUIVALENT_MATCH\n" + 783 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [Generic.Member] EXACT_RAW_MATCH\n" + 784 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_obj [Generic<Object, Exception, RuntimeException>.Member] EQUIVALENT_MATCH\n" + 785 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_exc [Generic<Exception, Exception, RuntimeException>.Member] EQUIVALENT_MATCH\n" + 786 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_wld [Generic<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 787 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.Member] EQUIVALENT_MATCH\n" + 788 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.Member] EQUIVALENT_MATCH\n" + 789 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic.Member] EXACT_RAW_MATCH\n" + 790 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Generic<Object>.Member] EQUIVALENT_MATCH\n" + 791 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Generic<Exception>.Member] EQUIVALENT_MATCH\n" + 792 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Generic<?>.Member] EQUIVALENT_MATCH\n" + 793 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Generic<? extends Throwable>.Member] EQUIVALENT_MATCH\n" + 794 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Generic<? super RuntimeException>.Member] EQUIVALENT_MATCH\n" + 795 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [Generic.Member] EXACT_RAW_MATCH\n" + 796 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [Generic<Object>.Member] EQUIVALENT_MATCH\n" + 797 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [Generic<Exception>.Member] EQUIVALENT_MATCH\n" + 798 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [Generic<?>.Member] EQUIVALENT_MATCH\n" + 799 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [Generic<? extends Throwable>.Member] EQUIVALENT_MATCH\n" + 800 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [Generic<? super RuntimeException>.Member] EQUIVALENT_MATCH", 801 this.resultCollector); 802 } testStringNoArgument07()803 public void testStringNoArgument07() throws CoreException { 804 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 805 search("Generic.MemberGeneric", TYPE, REFERENCES, scope, this.resultCollector); 806 assertSearchResults( 807 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [Generic.MemberGeneric] EXACT_RAW_MATCH\n" + 808 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [Generic<Object, Exception, RuntimeException>.MemberGeneric] EQUIVALENT_MATCH\n" + 809 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [Generic<Exception, Exception, RuntimeException>.MemberGeneric] EQUIVALENT_MATCH\n" + 810 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [Generic<?, ?, ?>.MemberGeneric] EQUIVALENT_MATCH\n" + 811 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.MemberGeneric] EQUIVALENT_MATCH\n" + 812 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.MemberGeneric] EQUIVALENT_MATCH\n" + 813 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [Generic.MemberGeneric] EXACT_RAW_MATCH\n" + 814 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [Generic<Object, Exception, RuntimeException>.MemberGeneric] EQUIVALENT_MATCH\n" + 815 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [Generic<Exception, Exception, RuntimeException>.MemberGeneric] EQUIVALENT_MATCH\n" + 816 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [Generic<?, ?, ?>.MemberGeneric] EQUIVALENT_MATCH\n" + 817 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.MemberGeneric] EQUIVALENT_MATCH\n" + 818 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.MemberGeneric] EQUIVALENT_MATCH\n" + 819 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic.MemberGeneric] EXACT_RAW_MATCH\n" + 820 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [Generic<Object>.MemberGeneric] EQUIVALENT_MATCH\n" + 821 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [Generic<Exception>.MemberGeneric] EQUIVALENT_MATCH\n" + 822 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [Generic<?>.MemberGeneric] EQUIVALENT_MATCH\n" + 823 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [Generic<? extends Throwable>.MemberGeneric] EQUIVALENT_MATCH\n" + 824 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [Generic<? super RuntimeException>.MemberGeneric] EQUIVALENT_MATCH\n" + 825 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [Generic.MemberGeneric] EXACT_RAW_MATCH\n" + 826 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [Generic<Object>.MemberGeneric] EQUIVALENT_MATCH\n" + 827 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [Generic<Exception>.MemberGeneric] EQUIVALENT_MATCH\n" + 828 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [Generic<?>.MemberGeneric] EQUIVALENT_MATCH\n" + 829 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [Generic<? extends Throwable>.MemberGeneric] EQUIVALENT_MATCH\n" + 830 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [Generic<? super RuntimeException>.MemberGeneric] EQUIVALENT_MATCH", 831 this.resultCollector); 832 } testStringNoArgument08()833 public void testStringNoArgument08() throws CoreException { 834 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 835 search("NonGeneric.GenericMember", TYPE, REFERENCES, scope, this.resultCollector); 836 assertSearchResults( 837 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen [NonGeneric.GenericMember] EXACT_RAW_MATCH\n" + 838 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_obj [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 839 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_exc [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 840 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_wld [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 841 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_thr [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 842 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_run [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 843 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen [NonGeneric.GenericMember] EXACT_RAW_MATCH\n" + 844 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_obj [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 845 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_exc [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 846 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_wld [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 847 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_thr [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 848 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_run [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 849 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen [NonGeneric.GenericMember] EXACT_RAW_MATCH\n" + 850 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_obj [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 851 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_exc [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 852 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_wld [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 853 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_thr [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 854 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_run [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 855 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen [NonGeneric.GenericMember] EXACT_RAW_MATCH\n" + 856 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_obj [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 857 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_exc [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 858 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_wld [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 859 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_thr [NonGeneric.GenericMember] EQUIVALENT_MATCH\n" + 860 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_run [NonGeneric.GenericMember] EQUIVALENT_MATCH", 861 this.resultCollector); 862 } 863 864 // Parameterized Source type pattern on single type argument testParameterizedTypeSingleArgument01()865 public void testParameterizedTypeSingleArgument01() throws CoreException { 866 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g1/t/s/ref/R1.java"); 867 ResolvedSourceType type = selectParameterizedType(unit, "Generic<Exception>"); //$NON-NLS-1$ 868 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 869 search(type, REFERENCES, scope, this.resultCollector); 870 assertSearchResults( 871 "src/g1/t/s/ref/R1.java [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + 872 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 873 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_obj [Generic<Object>] ERASURE_MATCH\n" + 874 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_exc [Generic<Exception>] EXACT_MATCH\n" + 875 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 876 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_thr [Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 877 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 878 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + 879 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_obj [g1.t.s.def.Generic<Object>] ERASURE_MATCH\n" + 880 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_exc [g1.t.s.def.Generic<Exception>] EXACT_MATCH\n" + 881 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_wld [g1.t.s.def.Generic<?>] EQUIVALENT_MATCH\n" + 882 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_thr [g1.t.s.def.Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 883 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_run [g1.t.s.def.Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 884 "src/g1/t/s/ref/R3.java [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + 885 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 886 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [Generic<Object>] ERASURE_MATCH\n" + 887 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [Generic<Exception>] EXACT_MATCH\n" + 888 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 889 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 890 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 891 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + 892 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [g1.t.s.def.Generic<Object>] ERASURE_MATCH\n" + 893 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [g1.t.s.def.Generic<Exception>] EXACT_MATCH\n" + 894 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [g1.t.s.def.Generic<?>] EQUIVALENT_MATCH\n" + 895 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [g1.t.s.def.Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 896 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [g1.t.s.def.Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 897 "src/g1/t/s/ref/R4.java [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + 898 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 899 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Generic<Object>] ERASURE_MATCH\n" + 900 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Generic<Exception>] EXACT_MATCH\n" + 901 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 902 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 903 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 904 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [g1.t.s.def.Generic] EQUIVALENT_RAW_MATCH\n" + 905 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [g1.t.s.def.Generic<Object>] ERASURE_MATCH\n" + 906 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [g1.t.s.def.Generic<Exception>] EXACT_MATCH\n" + 907 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [g1.t.s.def.Generic<?>] EQUIVALENT_MATCH\n" + 908 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [g1.t.s.def.Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 909 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [g1.t.s.def.Generic<? super RuntimeException>] EQUIVALENT_MATCH", 910 this.resultCollector); 911 } testParameterizedTypeSingleArgument02()912 public void testParameterizedTypeSingleArgument02() throws CoreException { 913 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g1/t/s/ref/R4.java"); 914 ResolvedSourceType type = selectParameterizedType(unit, "g1.t.s.def.Generic<Exception>.Member"); //$NON-NLS-1$ 915 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 916 search(type, REFERENCES, scope, this.resultCollector); 917 assertSearchResults( 918 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic.Member] EQUIVALENT_RAW_MATCH\n" + 919 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Generic<Object>.Member] ERASURE_MATCH\n" + 920 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Generic<Exception>.Member] EXACT_MATCH\n" + 921 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Generic<?>.Member] EQUIVALENT_MATCH\n" + 922 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Generic<? extends Throwable>.Member] EQUIVALENT_MATCH\n" + 923 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Generic<? super RuntimeException>.Member] EQUIVALENT_MATCH\n" + 924 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [g1.t.s.def.Generic.Member] EQUIVALENT_RAW_MATCH\n" + 925 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [g1.t.s.def.Generic<Object>.Member] ERASURE_MATCH\n" + 926 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [g1.t.s.def.Generic<Exception>.Member] EXACT_MATCH\n" + 927 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [g1.t.s.def.Generic<?>.Member] EQUIVALENT_MATCH\n" + 928 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [g1.t.s.def.Generic<? extends Throwable>.Member] EQUIVALENT_MATCH\n" + 929 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [g1.t.s.def.Generic<? super RuntimeException>.Member] EQUIVALENT_MATCH", 930 this.resultCollector); 931 } testParameterizedTypeSingleArgument03()932 public void testParameterizedTypeSingleArgument03() throws CoreException { 933 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g1/t/s/ref/R2.java"); 934 ResolvedSourceType type = selectParameterizedType(unit, "NonGeneric.GenericMember<Exception>"); //$NON-NLS-1$ 935 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 936 search(type, REFERENCES, scope, this.resultCollector); 937 assertSearchResults( 938 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen [NonGeneric.GenericMember] EQUIVALENT_RAW_MATCH\n" + 939 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_obj [NonGeneric.GenericMember<Object>] ERASURE_MATCH\n" + 940 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_exc [NonGeneric.GenericMember<Exception>] EXACT_MATCH\n" + 941 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_wld [NonGeneric.GenericMember<?>] EQUIVALENT_MATCH\n" + 942 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_thr [NonGeneric.GenericMember<? extends Throwable>] EQUIVALENT_MATCH\n" + 943 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_run [NonGeneric.GenericMember<? super RuntimeException>] EQUIVALENT_MATCH\n" + 944 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen [g1.t.s.def.NonGeneric.GenericMember] EQUIVALENT_RAW_MATCH\n" + 945 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_obj [g1.t.s.def.NonGeneric.GenericMember<Object>] ERASURE_MATCH\n" + 946 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_exc [g1.t.s.def.NonGeneric.GenericMember<Exception>] EXACT_MATCH\n" + 947 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_wld [g1.t.s.def.NonGeneric.GenericMember<?>] EQUIVALENT_MATCH\n" + 948 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_thr [g1.t.s.def.NonGeneric.GenericMember<? extends Throwable>] EQUIVALENT_MATCH\n" + 949 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_run [g1.t.s.def.NonGeneric.GenericMember<? super RuntimeException>] EQUIVALENT_MATCH", 950 this.resultCollector); 951 } testParameterizedTypeSingleArgument04()952 public void testParameterizedTypeSingleArgument04() throws CoreException { 953 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g1/t/s/ref/R3.java"); 954 ResolvedSourceType type = selectParameterizedType(unit, "g1.t.s.def.Generic<Exception>.MemberGeneric<Exception>"); //$NON-NLS-1$ 955 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 956 search(type, REFERENCES, scope, this.resultCollector); 957 assertSearchResults( 958 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic.MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 959 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [Generic<Object>.MemberGeneric<Object>] ERASURE_MATCH\n" + 960 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [Generic<Exception>.MemberGeneric<Exception>] EXACT_MATCH\n" + 961 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [Generic<?>.MemberGeneric<?>] EQUIVALENT_MATCH\n" + 962 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [Generic<? extends Throwable>.MemberGeneric<? super RuntimeException>] EQUIVALENT_MATCH\n" + 963 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [Generic<? super RuntimeException>.MemberGeneric<? extends Throwable>] EQUIVALENT_MATCH\n" + 964 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [g1.t.s.def.Generic.MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 965 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [g1.t.s.def.Generic<Object>.MemberGeneric<Object>] ERASURE_MATCH\n" + 966 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [g1.t.s.def.Generic<Exception>.MemberGeneric<Exception>] EXACT_MATCH\n" + 967 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [g1.t.s.def.Generic<?>.MemberGeneric<?>] EQUIVALENT_MATCH\n" + 968 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [g1.t.s.def.Generic<? extends Throwable>.MemberGeneric<? super RuntimeException>] EQUIVALENT_MATCH\n" + 969 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [g1.t.s.def.Generic<? super RuntimeException>.MemberGeneric<? extends Throwable>] EQUIVALENT_MATCH", 970 this.resultCollector); 971 } 972 973 // Parameterized Source type pattern on multiple type arguments testParameterizedTypeMultipleArguments01()974 public void testParameterizedTypeMultipleArguments01() throws CoreException { 975 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g1/t/m/ref/R1.java"); 976 ResolvedSourceType type = selectParameterizedType(unit, "g1.t.m.def.Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>"); //$NON-NLS-1$ 977 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 978 search(type, REFERENCES, scope, this.resultCollector); 979 assertSearchResults( 980 "src/g1/t/m/ref/R1.java [g1.t.m.def.Generic] EQUIVALENT_RAW_MATCH\n" + 981 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 982 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_obj [Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 983 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_exc [Generic<Exception, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 984 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_wld [Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 985 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] EXACT_MATCH\n" + 986 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 987 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen [g1.t.m.def.Generic] EQUIVALENT_RAW_MATCH\n" + 988 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_obj [g1.t.m.def.Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 989 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_exc [g1.t.m.def.Generic<Exception, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 990 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_wld [g1.t.m.def.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 991 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_thr [g1.t.m.def.Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] EXACT_MATCH\n" + 992 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_run [g1.t.m.def.Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 993 "src/g1/t/m/ref/R3.java [g1.t.m.def.Generic] EQUIVALENT_RAW_MATCH\n" + 994 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 995 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 996 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [Generic<Exception, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 997 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 998 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] EXACT_MATCH\n" + 999 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1000 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [g1.t.m.def.Generic] EQUIVALENT_RAW_MATCH\n" + 1001 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [g1.t.m.def.Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1002 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [g1.t.m.def.Generic<Exception, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1003 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [g1.t.m.def.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1004 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [g1.t.m.def.Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] EXACT_MATCH\n" + 1005 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [g1.t.m.def.Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1006 "src/g1/t/m/ref/R4.java [g1.t.m.def.Generic] EQUIVALENT_RAW_MATCH\n" + 1007 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1008 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_obj [Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1009 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_exc [Generic<Exception, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1010 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_wld [Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1011 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] EXACT_MATCH\n" + 1012 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1013 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [g1.t.m.def.Generic] EQUIVALENT_RAW_MATCH\n" + 1014 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_obj [g1.t.m.def.Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1015 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_exc [g1.t.m.def.Generic<Exception, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1016 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_wld [g1.t.m.def.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1017 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_thr [g1.t.m.def.Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] EXACT_MATCH\n" + 1018 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_run [g1.t.m.def.Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH", 1019 this.resultCollector); 1020 } testParameterizedTypeMultipleArguments02()1021 public void testParameterizedTypeMultipleArguments02() throws CoreException { 1022 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g1/t/m/ref/R4.java"); 1023 ResolvedSourceType type = selectParameterizedType(unit, "Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.Member"); //$NON-NLS-1$ 1024 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1025 search(type, REFERENCES, scope, this.resultCollector); 1026 assertSearchResults( 1027 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Generic.Member] EQUIVALENT_RAW_MATCH\n" + 1028 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_obj [Generic<Object, Exception, RuntimeException>.Member] ERASURE_MATCH\n" + 1029 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_exc [Generic<Exception, Exception, RuntimeException>.Member] EQUIVALENT_MATCH\n" + 1030 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_wld [Generic<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1031 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.Member] EXACT_MATCH\n" + 1032 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.Member] ERASURE_MATCH\n" + 1033 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [g1.t.m.def.Generic.Member] EQUIVALENT_RAW_MATCH\n" + 1034 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_obj [g1.t.m.def.Generic<Object, Exception, RuntimeException>.Member] ERASURE_MATCH\n" + 1035 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_exc [g1.t.m.def.Generic<Exception, Exception, RuntimeException>.Member] EQUIVALENT_MATCH\n" + 1036 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_wld [g1.t.m.def.Generic<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1037 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_thr [g1.t.m.def.Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.Member] EXACT_MATCH\n" + 1038 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_run [g1.t.m.def.Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.Member] ERASURE_MATCH", 1039 this.resultCollector); 1040 } testParameterizedTypeMultipleArguments03()1041 public void testParameterizedTypeMultipleArguments03() throws CoreException { 1042 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g1/t/m/ref/R2.java"); 1043 ResolvedSourceType type = selectParameterizedType(unit, "NonGeneric.GenericMember<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>"); //$NON-NLS-1$ 1044 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1045 search(type, REFERENCES, scope, this.resultCollector); 1046 assertSearchResults( 1047 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen [NonGeneric.GenericMember] EQUIVALENT_RAW_MATCH\n" + 1048 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_obj [NonGeneric.GenericMember<Object, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1049 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_exc [NonGeneric.GenericMember<Exception, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1050 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_wld [NonGeneric.GenericMember<?, ?, ?>] EQUIVALENT_MATCH\n" + 1051 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_thr [NonGeneric.GenericMember<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1052 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_run [NonGeneric.GenericMember<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] EXACT_MATCH\n" + 1053 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen [g1.t.m.def.NonGeneric.GenericMember] EQUIVALENT_RAW_MATCH\n" + 1054 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_obj [g1.t.m.def.NonGeneric.GenericMember<Object, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1055 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_exc [g1.t.m.def.NonGeneric.GenericMember<Exception, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1056 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_wld [g1.t.m.def.NonGeneric.GenericMember<?, ?, ?>] EQUIVALENT_MATCH\n" + 1057 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_thr [g1.t.m.def.NonGeneric.GenericMember<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1058 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_run [g1.t.m.def.NonGeneric.GenericMember<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] EXACT_MATCH", 1059 this.resultCollector); 1060 } testParameterizedTypeMultipleArguments04()1061 public void testParameterizedTypeMultipleArguments04() throws CoreException { 1062 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g1/t/m/ref/R3.java"); 1063 ResolvedSourceType type = selectParameterizedType(unit, "g1.t.m.def.Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.MemberGeneric<? extends Throwable, ? extends Exception, ? extends RuntimeException>"); //$NON-NLS-1$ 1064 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1065 search(type, REFERENCES, scope, this.resultCollector); 1066 assertSearchResults( 1067 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [Generic.MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1068 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [Generic<Object, Exception, RuntimeException>.MemberGeneric<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1069 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [Generic<Exception, Exception, RuntimeException>.MemberGeneric<Exception, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1070 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [Generic<?, ?, ?>.MemberGeneric<?, ?, ?>] EQUIVALENT_MATCH\n" + 1071 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.MemberGeneric<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1072 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.MemberGeneric<? extends Throwable, ? extends Exception, ? extends RuntimeException>] EXACT_MATCH\n" + 1073 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [g1.t.m.def.Generic.MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1074 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [g1.t.m.def.Generic<Object, Exception, RuntimeException>.MemberGeneric<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1075 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [g1.t.m.def.Generic<Exception, Exception, RuntimeException>.MemberGeneric<Exception, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1076 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [g1.t.m.def.Generic<?, ?, ?>.MemberGeneric<?, ?, ?>] EQUIVALENT_MATCH\n" + 1077 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [g1.t.m.def.Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.MemberGeneric<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1078 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [g1.t.m.def.Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.MemberGeneric<? extends Throwable, ? extends Exception, ? extends RuntimeException>] EXACT_MATCH", 1079 this.resultCollector); 1080 } 1081 1082 // String pattern with Single type argument testStringParameterizedSingleArgument01()1083 public void testStringParameterizedSingleArgument01() throws CoreException { 1084 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1085 search("Generic<?>", TYPE, REFERENCES, scope, this.resultCollector); 1086 assertSearchResults( 1087 "src/g1/t/m/ref/R1.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1088 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1089 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1090 "src/g1/t/m/ref/R3.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1091 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1092 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1093 "src/g1/t/m/ref/R4.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1094 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1095 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1096 "src/g1/t/s/ref/R1.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1097 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1098 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_obj [Generic<Object>] EQUIVALENT_MATCH\n" + 1099 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_exc [Generic<Exception>] EQUIVALENT_MATCH\n" + 1100 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_wld [Generic<?>] EXACT_MATCH\n" + 1101 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_thr [Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 1102 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1103 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1104 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_obj [Generic<Object>] EQUIVALENT_MATCH\n" + 1105 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_exc [Generic<Exception>] EQUIVALENT_MATCH\n" + 1106 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_wld [Generic<?>] EXACT_MATCH\n" + 1107 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_thr [Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 1108 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1109 "src/g1/t/s/ref/R3.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1110 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1111 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [Generic<Object>] EQUIVALENT_MATCH\n" + 1112 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [Generic<Exception>] EQUIVALENT_MATCH\n" + 1113 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [Generic<?>] EXACT_MATCH\n" + 1114 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 1115 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1116 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1117 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [Generic<Object>] EQUIVALENT_MATCH\n" + 1118 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [Generic<Exception>] EQUIVALENT_MATCH\n" + 1119 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [Generic<?>] EXACT_MATCH\n" + 1120 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 1121 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1122 "src/g1/t/s/ref/R4.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1123 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1124 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Generic<Object>] EQUIVALENT_MATCH\n" + 1125 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Generic<Exception>] EQUIVALENT_MATCH\n" + 1126 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Generic<?>] EXACT_MATCH\n" + 1127 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 1128 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1129 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1130 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [Generic<Object>] EQUIVALENT_MATCH\n" + 1131 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [Generic<Exception>] EQUIVALENT_MATCH\n" + 1132 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [Generic<?>] EXACT_MATCH\n" + 1133 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [Generic<? extends Throwable>] EQUIVALENT_MATCH\n" + 1134 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH", 1135 this.resultCollector); 1136 } testStringParameterizedSingleArgument02()1137 public void testStringParameterizedSingleArgument02() throws CoreException { 1138 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1139 search("Generic<?>.Member", TYPE, REFERENCES, scope, this.resultCollector); 1140 assertSearchResults( 1141 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Generic.Member] EQUIVALENT_RAW_MATCH\n" + 1142 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [Generic.Member] EQUIVALENT_RAW_MATCH\n" + 1143 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic.Member] EQUIVALENT_RAW_MATCH\n" + 1144 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Generic<Object>.Member] EQUIVALENT_MATCH\n" + 1145 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Generic<Exception>.Member] EQUIVALENT_MATCH\n" + 1146 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Generic<?>.Member] EXACT_MATCH\n" + 1147 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Generic<? extends Throwable>.Member] EQUIVALENT_MATCH\n" + 1148 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Generic<? super RuntimeException>.Member] EQUIVALENT_MATCH\n" + 1149 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [Generic.Member] EQUIVALENT_RAW_MATCH\n" + 1150 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [Generic<Object>.Member] EQUIVALENT_MATCH\n" + 1151 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [Generic<Exception>.Member] EQUIVALENT_MATCH\n" + 1152 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [Generic<?>.Member] EXACT_MATCH\n" + 1153 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [Generic<? extends Throwable>.Member] EQUIVALENT_MATCH\n" + 1154 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [Generic<? super RuntimeException>.Member] EQUIVALENT_MATCH", 1155 this.resultCollector); 1156 } testStringParameterizedSingleArgument03()1157 public void testStringParameterizedSingleArgument03() throws CoreException { 1158 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1159 search("GenericMember<?>", TYPE, REFERENCES, scope, this.resultCollector); 1160 assertSearchResults( 1161 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen [GenericMember] EQUIVALENT_RAW_MATCH\n" + 1162 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen [GenericMember] EQUIVALENT_RAW_MATCH\n" + 1163 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen [GenericMember] EQUIVALENT_RAW_MATCH\n" + 1164 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_obj [GenericMember<Object>] EQUIVALENT_MATCH\n" + 1165 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_exc [GenericMember<Exception>] EQUIVALENT_MATCH\n" + 1166 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_wld [GenericMember<?>] EXACT_MATCH\n" + 1167 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_thr [GenericMember<? extends Throwable>] EQUIVALENT_MATCH\n" + 1168 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_run [GenericMember<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1169 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen [GenericMember] EQUIVALENT_RAW_MATCH\n" + 1170 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_obj [GenericMember<Object>] EQUIVALENT_MATCH\n" + 1171 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_exc [GenericMember<Exception>] EQUIVALENT_MATCH\n" + 1172 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_wld [GenericMember<?>] EXACT_MATCH\n" + 1173 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_thr [GenericMember<? extends Throwable>] EQUIVALENT_MATCH\n" + 1174 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_run [GenericMember<? super RuntimeException>] EQUIVALENT_MATCH", 1175 this.resultCollector); 1176 } testStringParameterizedSingleArgument04()1177 public void testStringParameterizedSingleArgument04() throws CoreException { 1178 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1179 search("MemberGeneric<?>", TYPE, REFERENCES, scope, this.resultCollector); 1180 assertSearchResults( 1181 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1182 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1183 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1184 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [MemberGeneric<Object>] EQUIVALENT_MATCH\n" + 1185 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [MemberGeneric<Exception>] EQUIVALENT_MATCH\n" + 1186 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [MemberGeneric<?>] EXACT_MATCH\n" + 1187 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [MemberGeneric<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1188 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [MemberGeneric<? extends Throwable>] EQUIVALENT_MATCH\n" + 1189 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1190 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [MemberGeneric<Object>] EQUIVALENT_MATCH\n" + 1191 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [MemberGeneric<Exception>] EQUIVALENT_MATCH\n" + 1192 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [MemberGeneric<?>] EXACT_MATCH\n" + 1193 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [MemberGeneric<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1194 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [MemberGeneric<? extends Throwable>] EQUIVALENT_MATCH", 1195 this.resultCollector); 1196 } testStringParameterizedSingleArgument05()1197 public void testStringParameterizedSingleArgument05() throws CoreException { 1198 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1199 search("Generic<?>.MemberGeneric<?>", TYPE, REFERENCES, scope, this.resultCollector); 1200 assertSearchResults( 1201 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [Generic.MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1202 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [Generic.MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1203 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic.MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1204 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [Generic<Object>.MemberGeneric<Object>] EQUIVALENT_MATCH\n" + 1205 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [Generic<Exception>.MemberGeneric<Exception>] EQUIVALENT_MATCH\n" + 1206 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [Generic<?>.MemberGeneric<?>] EXACT_MATCH\n" + 1207 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [Generic<? extends Throwable>.MemberGeneric<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1208 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [Generic<? super RuntimeException>.MemberGeneric<? extends Throwable>] EQUIVALENT_MATCH\n" + 1209 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [Generic.MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1210 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [Generic<Object>.MemberGeneric<Object>] EQUIVALENT_MATCH\n" + 1211 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [Generic<Exception>.MemberGeneric<Exception>] EQUIVALENT_MATCH\n" + 1212 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [Generic<?>.MemberGeneric<?>] EXACT_MATCH\n" + 1213 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [Generic<? extends Throwable>.MemberGeneric<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1214 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [Generic<? super RuntimeException>.MemberGeneric<? extends Throwable>] EQUIVALENT_MATCH", 1215 this.resultCollector); 1216 } 1217 1218 // Multiple type arguments in string pattern testStringParameterizedMultipleArguments01()1219 public void testStringParameterizedMultipleArguments01() throws CoreException { 1220 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1221 search("Generic<Unresolved1, Unresolved2, Unresolved3>", TYPE, REFERENCES, scope, this.resultCollector); 1222 assertSearchResults( 1223 "src/g1/t/m/ref/R1.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1224 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1225 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_obj [Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1226 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_exc [Generic<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1227 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_wld [Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1228 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1229 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1230 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1231 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_obj [Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1232 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_exc [Generic<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1233 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_wld [Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1234 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1235 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1236 "src/g1/t/m/ref/R3.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1237 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1238 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1239 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [Generic<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1240 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1241 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1242 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1243 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1244 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1245 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [Generic<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1246 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1247 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1248 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1249 "src/g1/t/m/ref/R4.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1250 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1251 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_obj [Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1252 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_exc [Generic<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1253 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_wld [Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1254 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1255 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1256 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1257 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_obj [Generic<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1258 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_exc [Generic<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1259 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_wld [Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1260 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1261 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1262 "src/g1/t/s/ref/R1.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1263 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1264 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1265 "src/g1/t/s/ref/R3.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1266 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1267 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1268 "src/g1/t/s/ref/R4.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1269 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1270 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [Generic] EQUIVALENT_RAW_MATCH", 1271 this.resultCollector); 1272 } testStringParameterizedMultipleArguments02()1273 public void testStringParameterizedMultipleArguments02() throws CoreException { 1274 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1275 search("Generic<Unresolved1, Unresolved2, Unresolved3>.Member", TYPE, REFERENCES, scope, this.resultCollector); 1276 assertSearchResults( 1277 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Generic.Member] EQUIVALENT_RAW_MATCH\n" + 1278 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_obj [Generic<Object, Exception, RuntimeException>.Member] ERASURE_MATCH\n" + 1279 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_exc [Generic<Exception, Exception, RuntimeException>.Member] ERASURE_MATCH\n" + 1280 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_wld [Generic<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1281 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.Member] ERASURE_MATCH\n" + 1282 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.Member] ERASURE_MATCH\n" + 1283 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [Generic.Member] EQUIVALENT_RAW_MATCH\n" + 1284 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_obj [Generic<Object, Exception, RuntimeException>.Member] ERASURE_MATCH\n" + 1285 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_exc [Generic<Exception, Exception, RuntimeException>.Member] ERASURE_MATCH\n" + 1286 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_wld [Generic<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1287 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.Member] ERASURE_MATCH\n" + 1288 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.Member] ERASURE_MATCH\n" + 1289 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic.Member] EQUIVALENT_RAW_MATCH\n" + 1290 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [Generic.Member] EQUIVALENT_RAW_MATCH", 1291 this.resultCollector); 1292 } testStringParameterizedMultipleArguments03()1293 public void testStringParameterizedMultipleArguments03() throws CoreException { 1294 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1295 search("GenericMember<Unresolved1, Unresolved2, Unresolved3>", TYPE, REFERENCES, scope, this.resultCollector); 1296 assertSearchResults( 1297 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen [GenericMember] EQUIVALENT_RAW_MATCH\n" + 1298 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_obj [GenericMember<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1299 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_exc [GenericMember<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1300 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_wld [GenericMember<?, ?, ?>] EQUIVALENT_MATCH\n" + 1301 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_thr [GenericMember<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1302 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.gen_run [GenericMember<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1303 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen [GenericMember] EQUIVALENT_RAW_MATCH\n" + 1304 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_obj [GenericMember<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1305 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_exc [GenericMember<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1306 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_wld [GenericMember<?, ?, ?>] EQUIVALENT_MATCH\n" + 1307 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_thr [GenericMember<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1308 "src/g1/t/m/ref/R2.java g1.t.m.ref.R2.qgen_run [GenericMember<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1309 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen [GenericMember] EQUIVALENT_RAW_MATCH\n" + 1310 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen [GenericMember] EQUIVALENT_RAW_MATCH", 1311 this.resultCollector); 1312 } testStringParameterizedMultipleArguments04()1313 public void testStringParameterizedMultipleArguments04() throws CoreException { 1314 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1315 search("MemberGeneric<Unresolved1, Unresolved2, Unresolved3>", TYPE, REFERENCES, scope, this.resultCollector); 1316 assertSearchResults( 1317 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1318 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [MemberGeneric<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1319 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [MemberGeneric<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1320 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [MemberGeneric<?, ?, ?>] EQUIVALENT_MATCH\n" + 1321 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [MemberGeneric<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1322 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [MemberGeneric<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1323 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1324 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [MemberGeneric<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1325 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [MemberGeneric<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1326 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [MemberGeneric<?, ?, ?>] EQUIVALENT_MATCH\n" + 1327 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [MemberGeneric<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1328 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [MemberGeneric<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1329 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1330 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [MemberGeneric] EQUIVALENT_RAW_MATCH", 1331 this.resultCollector); 1332 } testStringParameterizedMultipleArguments05()1333 public void testStringParameterizedMultipleArguments05() throws CoreException { 1334 IJavaSearchScope scope = getJavaSearchScope15("g1.t", true /* add all subpackages */); 1335 search("Generic<Unresolved1, Unresolved2, Unresolved3>.MemberGeneric<Unresolved1, Unresolved2, Unresolved3>", TYPE, REFERENCES, scope, this.resultCollector); 1336 assertSearchResults( 1337 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [Generic.MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1338 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [Generic<Object, Exception, RuntimeException>.MemberGeneric<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1339 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [Generic<Exception, Exception, RuntimeException>.MemberGeneric<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1340 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [Generic<?, ?, ?>.MemberGeneric<?, ?, ?>] EQUIVALENT_MATCH\n" + 1341 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.MemberGeneric<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1342 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.MemberGeneric<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1343 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [Generic.MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1344 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [Generic<Object, Exception, RuntimeException>.MemberGeneric<Object, Exception, RuntimeException>] ERASURE_MATCH\n" + 1345 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [Generic<Exception, Exception, RuntimeException>.MemberGeneric<Exception, Exception, RuntimeException>] ERASURE_MATCH\n" + 1346 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [Generic<?, ?, ?>.MemberGeneric<?, ?, ?>] EQUIVALENT_MATCH\n" + 1347 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [Generic<? extends Throwable, ? extends Exception, ? extends RuntimeException>.MemberGeneric<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>] ERASURE_MATCH\n" + 1348 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [Generic<? super RuntimeException, ? super IllegalMonitorStateException, ? super IllegalMonitorStateException>.MemberGeneric<? extends Throwable, ? extends Exception, ? extends RuntimeException>] ERASURE_MATCH\n" + 1349 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic.MemberGeneric] EQUIVALENT_RAW_MATCH\n" + 1350 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [Generic.MemberGeneric] EQUIVALENT_RAW_MATCH", 1351 this.resultCollector); 1352 } 1353 1354 // String pattern with any strings characters ('*' or '?') testStringAnyStrings01()1355 public void testStringAnyStrings01() throws CoreException { 1356 IJavaSearchScope scope = getJavaSearchScope15("g1.t.s.ref", false /* only this package */); 1357 search("*Generic", TYPE, REFERENCES, scope, this.resultCollector); 1358 assertSearchResults( 1359 "src/g1/t/s/ref/R1.java [Generic] EXACT_RAW_MATCH\n" + 1360 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen [Generic] EXACT_RAW_MATCH\n" + 1361 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_obj [Generic] EQUIVALENT_MATCH\n" + 1362 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_exc [Generic] EQUIVALENT_MATCH\n" + 1363 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_wld [Generic] EQUIVALENT_MATCH\n" + 1364 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_thr [Generic] EQUIVALENT_MATCH\n" + 1365 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_run [Generic] EQUIVALENT_MATCH\n" + 1366 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen [Generic] EXACT_RAW_MATCH\n" + 1367 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_obj [Generic] EQUIVALENT_MATCH\n" + 1368 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_exc [Generic] EQUIVALENT_MATCH\n" + 1369 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_wld [Generic] EQUIVALENT_MATCH\n" + 1370 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_thr [Generic] EQUIVALENT_MATCH\n" + 1371 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_run [Generic] EQUIVALENT_MATCH\n" + 1372 "src/g1/t/s/ref/R2.java [NonGeneric] EXACT_RAW_MATCH\n" + 1373 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen [NonGeneric] EXACT_MATCH\n" + 1374 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_obj [NonGeneric] EXACT_MATCH\n" + 1375 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_exc [NonGeneric] EXACT_MATCH\n" + 1376 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_wld [NonGeneric] EXACT_MATCH\n" + 1377 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_thr [NonGeneric] EXACT_MATCH\n" + 1378 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_run [NonGeneric] EXACT_MATCH\n" + 1379 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen [NonGeneric] EXACT_MATCH\n" + 1380 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_obj [NonGeneric] EXACT_MATCH\n" + 1381 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_exc [NonGeneric] EXACT_MATCH\n" + 1382 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_wld [NonGeneric] EXACT_MATCH\n" + 1383 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_thr [NonGeneric] EXACT_MATCH\n" + 1384 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_run [NonGeneric] EXACT_MATCH\n" + 1385 "src/g1/t/s/ref/R3.java [Generic] EXACT_RAW_MATCH\n" + 1386 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [MemberGeneric] EXACT_RAW_MATCH\n" + 1387 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [MemberGeneric] EQUIVALENT_MATCH\n" + 1388 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [MemberGeneric] EQUIVALENT_MATCH\n" + 1389 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [MemberGeneric] EQUIVALENT_MATCH\n" + 1390 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [MemberGeneric] EQUIVALENT_MATCH\n" + 1391 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [MemberGeneric] EQUIVALENT_MATCH\n" + 1392 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [MemberGeneric] EXACT_RAW_MATCH\n" + 1393 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [MemberGeneric] EQUIVALENT_MATCH\n" + 1394 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [MemberGeneric] EQUIVALENT_MATCH\n" + 1395 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [MemberGeneric] EQUIVALENT_MATCH\n" + 1396 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [MemberGeneric] EQUIVALENT_MATCH\n" + 1397 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [MemberGeneric] EQUIVALENT_MATCH\n" + 1398 "src/g1/t/s/ref/R4.java [Generic] EXACT_RAW_MATCH\n" + 1399 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic] EXACT_RAW_MATCH\n" + 1400 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Generic] EQUIVALENT_MATCH\n" + 1401 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Generic] EQUIVALENT_MATCH\n" + 1402 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Generic] EQUIVALENT_MATCH\n" + 1403 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Generic] EQUIVALENT_MATCH\n" + 1404 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Generic] EQUIVALENT_MATCH\n" + 1405 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [Generic] EXACT_RAW_MATCH\n" + 1406 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [Generic] EQUIVALENT_MATCH\n" + 1407 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [Generic] EQUIVALENT_MATCH\n" + 1408 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [Generic] EQUIVALENT_MATCH\n" + 1409 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [Generic] EQUIVALENT_MATCH\n" + 1410 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [Generic] EQUIVALENT_MATCH", 1411 this.resultCollector); 1412 } testStringAnyStrings02()1413 public void testStringAnyStrings02() throws CoreException { 1414 IJavaSearchScope scope = getJavaSearchScope15("g1.t.m.ref", false /* only this package */); 1415 search("G?ner?c", TYPE, REFERENCES, scope, this.resultCollector); 1416 assertSearchResults( 1417 "src/g1/t/m/ref/R1.java [Generic] EXACT_RAW_MATCH\n" + 1418 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen [Generic] EXACT_RAW_MATCH\n" + 1419 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_obj [Generic] EQUIVALENT_MATCH\n" + 1420 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_exc [Generic] EQUIVALENT_MATCH\n" + 1421 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_wld [Generic] EQUIVALENT_MATCH\n" + 1422 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_thr [Generic] EQUIVALENT_MATCH\n" + 1423 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.gen_run [Generic] EQUIVALENT_MATCH\n" + 1424 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen [Generic] EXACT_RAW_MATCH\n" + 1425 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_obj [Generic] EQUIVALENT_MATCH\n" + 1426 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_exc [Generic] EQUIVALENT_MATCH\n" + 1427 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_wld [Generic] EQUIVALENT_MATCH\n" + 1428 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_thr [Generic] EQUIVALENT_MATCH\n" + 1429 "src/g1/t/m/ref/R1.java g1.t.m.ref.R1.qgen_run [Generic] EQUIVALENT_MATCH\n" + 1430 "src/g1/t/m/ref/R3.java [Generic] EXACT_RAW_MATCH\n" + 1431 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [Generic] EXACT_RAW_MATCH\n" + 1432 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [Generic] EQUIVALENT_MATCH\n" + 1433 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [Generic] EQUIVALENT_MATCH\n" + 1434 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [Generic] EQUIVALENT_MATCH\n" + 1435 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [Generic] EQUIVALENT_MATCH\n" + 1436 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [Generic] EQUIVALENT_MATCH\n" + 1437 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [Generic] EXACT_RAW_MATCH\n" + 1438 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [Generic] EQUIVALENT_MATCH\n" + 1439 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [Generic] EQUIVALENT_MATCH\n" + 1440 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [Generic] EQUIVALENT_MATCH\n" + 1441 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [Generic] EQUIVALENT_MATCH\n" + 1442 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [Generic] EQUIVALENT_MATCH\n" + 1443 "src/g1/t/m/ref/R4.java [Generic] EXACT_RAW_MATCH\n" + 1444 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Generic] EXACT_RAW_MATCH\n" + 1445 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_obj [Generic] EQUIVALENT_MATCH\n" + 1446 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_exc [Generic] EQUIVALENT_MATCH\n" + 1447 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_wld [Generic] EQUIVALENT_MATCH\n" + 1448 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_thr [Generic] EQUIVALENT_MATCH\n" + 1449 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_run [Generic] EQUIVALENT_MATCH\n" + 1450 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [Generic] EXACT_RAW_MATCH\n" + 1451 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_obj [Generic] EQUIVALENT_MATCH\n" + 1452 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_exc [Generic] EQUIVALENT_MATCH\n" + 1453 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_wld [Generic] EQUIVALENT_MATCH\n" + 1454 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_thr [Generic] EQUIVALENT_MATCH\n" + 1455 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_run [Generic] EQUIVALENT_MATCH", 1456 this.resultCollector); 1457 } testStringAnyStrings03()1458 public void testStringAnyStrings03() throws CoreException { 1459 IJavaSearchScope scope = getJavaSearchScope15("g1.t.s.ref", false /* only this package */); 1460 search("*Member*", TYPE, REFERENCES, scope, this.resultCollector); 1461 assertSearchResults( 1462 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen [GenericMember] EXACT_RAW_MATCH\n" + 1463 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_obj [GenericMember] EQUIVALENT_MATCH\n" + 1464 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_exc [GenericMember] EQUIVALENT_MATCH\n" + 1465 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_wld [GenericMember] EQUIVALENT_MATCH\n" + 1466 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_thr [GenericMember] EQUIVALENT_MATCH\n" + 1467 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_run [GenericMember] EQUIVALENT_MATCH\n" + 1468 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen [GenericMember] EXACT_RAW_MATCH\n" + 1469 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_obj [GenericMember] EQUIVALENT_MATCH\n" + 1470 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_exc [GenericMember] EQUIVALENT_MATCH\n" + 1471 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_wld [GenericMember] EQUIVALENT_MATCH\n" + 1472 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_thr [GenericMember] EQUIVALENT_MATCH\n" + 1473 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_run [GenericMember] EQUIVALENT_MATCH\n" + 1474 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [MemberGeneric] EXACT_RAW_MATCH\n" + 1475 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [MemberGeneric] EQUIVALENT_MATCH\n" + 1476 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [MemberGeneric] EQUIVALENT_MATCH\n" + 1477 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [MemberGeneric] EQUIVALENT_MATCH\n" + 1478 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [MemberGeneric] EQUIVALENT_MATCH\n" + 1479 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [MemberGeneric] EQUIVALENT_MATCH\n" + 1480 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [MemberGeneric] EXACT_RAW_MATCH\n" + 1481 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [MemberGeneric] EQUIVALENT_MATCH\n" + 1482 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [MemberGeneric] EQUIVALENT_MATCH\n" + 1483 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [MemberGeneric] EQUIVALENT_MATCH\n" + 1484 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [MemberGeneric] EQUIVALENT_MATCH\n" + 1485 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [MemberGeneric] EQUIVALENT_MATCH\n" + 1486 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Member] EXACT_RAW_MATCH\n" + 1487 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Member] EXACT_MATCH\n" + 1488 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Member] EXACT_MATCH\n" + 1489 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Member] EXACT_MATCH\n" + 1490 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Member] EXACT_MATCH\n" + 1491 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Member] EXACT_MATCH\n" + 1492 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [Member] EXACT_RAW_MATCH\n" + 1493 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [Member] EXACT_MATCH\n" + 1494 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [Member] EXACT_MATCH\n" + 1495 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [Member] EXACT_MATCH\n" + 1496 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [Member] EXACT_MATCH\n" + 1497 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [Member] EXACT_MATCH", 1498 this.resultCollector); 1499 } testStringAnyStrings04()1500 public void testStringAnyStrings04() throws CoreException { 1501 IJavaSearchScope scope = getJavaSearchScope15("g1.t.m.ref", false /* only this package */); 1502 search("Member*", TYPE, REFERENCES, scope, this.resultCollector); 1503 assertSearchResults( 1504 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen [MemberGeneric] EXACT_RAW_MATCH\n" + 1505 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_obj [MemberGeneric] EQUIVALENT_MATCH\n" + 1506 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_exc [MemberGeneric] EQUIVALENT_MATCH\n" + 1507 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_wld [MemberGeneric] EQUIVALENT_MATCH\n" + 1508 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_thr [MemberGeneric] EQUIVALENT_MATCH\n" + 1509 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.gen_run [MemberGeneric] EQUIVALENT_MATCH\n" + 1510 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen [MemberGeneric] EXACT_RAW_MATCH\n" + 1511 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_obj [MemberGeneric] EQUIVALENT_MATCH\n" + 1512 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_exc [MemberGeneric] EQUIVALENT_MATCH\n" + 1513 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_wld [MemberGeneric] EQUIVALENT_MATCH\n" + 1514 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_thr [MemberGeneric] EQUIVALENT_MATCH\n" + 1515 "src/g1/t/m/ref/R3.java g1.t.m.ref.R3.qgen_run [MemberGeneric] EQUIVALENT_MATCH\n" + 1516 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen [Member] EXACT_RAW_MATCH\n" + 1517 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_obj [Member] EXACT_MATCH\n" + 1518 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_exc [Member] EXACT_MATCH\n" + 1519 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_wld [Member] EXACT_MATCH\n" + 1520 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_thr [Member] EXACT_MATCH\n" + 1521 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.gen_run [Member] EXACT_MATCH\n" + 1522 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen [Member] EXACT_RAW_MATCH\n" + 1523 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_obj [Member] EXACT_MATCH\n" + 1524 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_exc [Member] EXACT_MATCH\n" + 1525 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_wld [Member] EXACT_MATCH\n" + 1526 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_thr [Member] EXACT_MATCH\n" + 1527 "src/g1/t/m/ref/R4.java g1.t.m.ref.R4.qgen_run [Member] EXACT_MATCH", 1528 this.resultCollector); 1529 } testStringAnyStrings05()1530 public void testStringAnyStrings05() throws CoreException { 1531 IJavaSearchScope scope = getJavaSearchScope15("g1.t.s.ref", true); 1532 search("Generic*<Object>", TYPE, REFERENCES, scope, this.resultCollector); 1533 assertSearchResults( 1534 "src/g1/t/s/ref/R1.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1535 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1536 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_obj [Generic<Object>] EXACT_MATCH\n" + 1537 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1538 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1539 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1540 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1541 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1542 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_obj [Generic<Object>] EXACT_MATCH\n" + 1543 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1544 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1545 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1546 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1547 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen [GenericMember] EQUIVALENT_RAW_MATCH\n" + 1548 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_obj [GenericMember<Object>] EXACT_MATCH\n" + 1549 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_exc [GenericMember<Exception>] ERASURE_MATCH\n" + 1550 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_wld [GenericMember<?>] EQUIVALENT_MATCH\n" + 1551 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_thr [GenericMember<? extends Throwable>] ERASURE_MATCH\n" + 1552 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.gen_run [GenericMember<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1553 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen [GenericMember] EQUIVALENT_RAW_MATCH\n" + 1554 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_obj [GenericMember<Object>] EXACT_MATCH\n" + 1555 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_exc [GenericMember<Exception>] ERASURE_MATCH\n" + 1556 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_wld [GenericMember<?>] EQUIVALENT_MATCH\n" + 1557 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_thr [GenericMember<? extends Throwable>] ERASURE_MATCH\n" + 1558 "src/g1/t/s/ref/R2.java g1.t.s.ref.R2.qgen_run [GenericMember<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1559 "src/g1/t/s/ref/R3.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1560 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1561 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [Generic<Object>] EXACT_MATCH\n" + 1562 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1563 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1564 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1565 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1566 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1567 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [Generic<Object>] EXACT_MATCH\n" + 1568 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1569 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1570 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1571 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1572 "src/g1/t/s/ref/R4.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1573 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1574 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Generic<Object>] EXACT_MATCH\n" + 1575 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1576 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1577 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1578 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1579 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1580 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [Generic<Object>] EXACT_MATCH\n" + 1581 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1582 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1583 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1584 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [Generic<? super RuntimeException>] EQUIVALENT_MATCH", 1585 this.resultCollector); 1586 } testStringAnyStrings06()1587 public void testStringAnyStrings06() throws CoreException { 1588 IJavaSearchScope scope = getJavaSearchScope15("g1.t.s.ref", true); 1589 search("Generic<Obj*>", TYPE, REFERENCES, scope, this.resultCollector); 1590 assertSearchResults( 1591 "src/g1/t/s/ref/R1.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1592 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1593 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_obj [Generic<Object>] EXACT_MATCH\n" + 1594 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1595 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1596 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1597 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.gen_run [Generic<? super RuntimeException>] ERASURE_MATCH\n" + 1598 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1599 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_obj [Generic<Object>] EXACT_MATCH\n" + 1600 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1601 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1602 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1603 "src/g1/t/s/ref/R1.java g1.t.s.ref.R1.qgen_run [Generic<? super RuntimeException>] ERASURE_MATCH\n" + 1604 "src/g1/t/s/ref/R3.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1605 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1606 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_obj [Generic<Object>] EXACT_MATCH\n" + 1607 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1608 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1609 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1610 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.gen_run [Generic<? super RuntimeException>] ERASURE_MATCH\n" + 1611 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1612 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_obj [Generic<Object>] EXACT_MATCH\n" + 1613 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1614 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1615 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1616 "src/g1/t/s/ref/R3.java g1.t.s.ref.R3.qgen_run [Generic<? super RuntimeException>] ERASURE_MATCH\n" + 1617 "src/g1/t/s/ref/R4.java [Generic] EQUIVALENT_RAW_MATCH\n" + 1618 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen [Generic] EQUIVALENT_RAW_MATCH\n" + 1619 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_obj [Generic<Object>] EXACT_MATCH\n" + 1620 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1621 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1622 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1623 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.gen_run [Generic<? super RuntimeException>] ERASURE_MATCH\n" + 1624 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen [Generic] EQUIVALENT_RAW_MATCH\n" + 1625 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_obj [Generic<Object>] EXACT_MATCH\n" + 1626 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_exc [Generic<Exception>] ERASURE_MATCH\n" + 1627 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_wld [Generic<?>] EQUIVALENT_MATCH\n" + 1628 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_thr [Generic<? extends Throwable>] ERASURE_MATCH\n" + 1629 "src/g1/t/s/ref/R4.java g1.t.s.ref.R4.qgen_run [Generic<? super RuntimeException>] ERASURE_MATCH", 1630 this.resultCollector); 1631 } 1632 1633 // String pattern with nested single type argument testStringNestedSingleArgument01()1634 public void testStringNestedSingleArgument01() throws CoreException { 1635 IJavaSearchScope scope = getJavaSearchCUScope("JavaSearch15", "g3/t/ref", "R1.java"); 1636 search("GS<Exception>", TYPE, REFERENCES, scope, this.resultCollector); 1637 assertSearchResults( 1638 "src/g3/t/ref/R1.java [GS] EQUIVALENT_RAW_MATCH\n" + 1639 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_wld [GS<GM<?, ?, ?>>] ERASURE_MATCH\n" + 1640 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_www [GS<GM<GM<?, ?, ?>,GM<?, ?, ?>,GM<?, ?, ?>>>] ERASURE_MATCH\n" + 1641 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_obj [GS<GM<Object, Exception, RuntimeException>>] ERASURE_MATCH\n" + 1642 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_wld [GS<?>] EQUIVALENT_MATCH\n" + 1643 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_wld [GS<?>] EQUIVALENT_MATCH\n" + 1644 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_wld [GS<?>] EQUIVALENT_MATCH\n" + 1645 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS<?>] EQUIVALENT_MATCH\n" + 1646 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS<GS<?>>] ERASURE_MATCH\n" + 1647 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS<?>] EQUIVALENT_MATCH\n" + 1648 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS<GS<GS<?>>>] ERASURE_MATCH\n" + 1649 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS<GS<?>>] ERASURE_MATCH\n" + 1650 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GS<?>] EQUIVALENT_MATCH\n" + 1651 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_obj [GS<Object>] ERASURE_MATCH\n" + 1652 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_obj [GS<? extends Throwable>] EQUIVALENT_MATCH\n" + 1653 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_obj [GS<? super RuntimeException>] EQUIVALENT_MATCH\n" + 1654 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_wld [GS<g3.t.def.GM<?, ?, ?>>] ERASURE_MATCH\n" + 1655 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_www [GS<g3.t.def.GM<g3.t.def.GM<?, ?, ?>, g3.t.def.GM<?, ?, ?>, g3.t.def.GM<?, ?, ?>>>] ERASURE_MATCH\n" + 1656 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_obj [GS<g3.t.def.GM<java.lang.Object, java.lang.Exception, java.lang.RuntimeException>>] ERASURE_MATCH\n" + 1657 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_wld [GS<?>] EQUIVALENT_MATCH\n" + 1658 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_wld [GS<?>] EQUIVALENT_MATCH\n" + 1659 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_wld [GS<?>] EQUIVALENT_MATCH\n" + 1660 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [GS<?>] EQUIVALENT_MATCH\n" + 1661 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [GS<g3.t.def.GS<?>>] ERASURE_MATCH\n" + 1662 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [GS<?>] EQUIVALENT_MATCH\n" + 1663 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [GS<g3.t.def.GS<g3.t.def.GS<?>>>] ERASURE_MATCH\n" + 1664 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [GS<g3.t.def.GS<?>>] ERASURE_MATCH\n" + 1665 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [GS<?>] EQUIVALENT_MATCH\n" + 1666 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_obj [GS<java.lang.Object>] ERASURE_MATCH\n" + 1667 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_obj [GS<? extends java.lang.Throwable>] EQUIVALENT_MATCH\n" + 1668 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_obj [GS<? super java.lang.RuntimeException>] EQUIVALENT_MATCH", 1669 this.resultCollector); 1670 } testStringNestedSingleArgument02()1671 public void testStringNestedSingleArgument02() throws CoreException { 1672 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 1673 search("GS<? extends Exception>.Member", TYPE, REFERENCES, scope, this.resultCollector); 1674 assertSearchResults( 1675 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_wld [GS<GM<?, ?, ?>.Member>.Member] ERASURE_MATCH\n" + 1676 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GS<GM<GM<?, ?, ?>.Member,GM<?, ?, ?>.Member,GM<?, ?, ?>.Member>.Member>.Member] ERASURE_MATCH\n" + 1677 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_obj [GS<GM<Object, Exception, RuntimeException>.Member>.Member] ERASURE_MATCH\n" + 1678 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_wld [GS<?>.Member] EQUIVALENT_MATCH\n" + 1679 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_wld [GS<?>.Member] EQUIVALENT_MATCH\n" + 1680 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_wld [GS<?>.Member] EQUIVALENT_MATCH\n" + 1681 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<?>.Member] EQUIVALENT_MATCH\n" + 1682 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<GS<?>.Member>.Member] ERASURE_MATCH\n" + 1683 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<?>.Member] EQUIVALENT_MATCH\n" + 1684 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<GS<GS<?>.Member>.Member>.Member] ERASURE_MATCH\n" + 1685 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<GS<?>.Member>.Member] ERASURE_MATCH\n" + 1686 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GS<?>.Member] EQUIVALENT_MATCH\n" + 1687 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_obj [GS<Object>.Member] ERASURE_MATCH\n" + 1688 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_obj [GS<? extends Throwable>.Member] ERASURE_MATCH\n" + 1689 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_obj [GS<? super RuntimeException>.Member] ERASURE_MATCH\n" + 1690 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_wld [GS<g3.t.def.GM<?, ?, ?>.Member>.Member] ERASURE_MATCH\n" + 1691 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [GS<g3.t.def.GM<g3.t.def.GM<?, ?, ?>.Member, g3.t.def.GM<?, ?, ?>.Member, g3.t.def.GM<?, ?, ?>.Member>.Member>.Member] ERASURE_MATCH\n" + 1692 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_obj [GS<g3.t.def.GM<java.lang.Object, java.lang.Exception, java.lang.RuntimeException>.Member>.Member] ERASURE_MATCH\n" + 1693 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_wld [GS<?>.Member] EQUIVALENT_MATCH\n" + 1694 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_wld [GS<?>.Member] EQUIVALENT_MATCH\n" + 1695 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_wld [GS<?>.Member] EQUIVALENT_MATCH\n" + 1696 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [GS<?>.Member] EQUIVALENT_MATCH\n" + 1697 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [GS<g3.t.def.GS<?>.Member>.Member] ERASURE_MATCH\n" + 1698 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [GS<?>.Member] EQUIVALENT_MATCH\n" + 1699 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [GS<g3.t.def.GS<g3.t.def.GS<?>.Member>.Member>.Member] ERASURE_MATCH\n" + 1700 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [GS<g3.t.def.GS<?>.Member>.Member] ERASURE_MATCH\n" + 1701 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [GS<?>.Member] EQUIVALENT_MATCH\n" + 1702 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_obj [GS<java.lang.Object>.Member] ERASURE_MATCH\n" + 1703 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_obj [GS<? extends java.lang.Throwable>.Member] ERASURE_MATCH\n" + 1704 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_obj [GS<? super java.lang.RuntimeException>.Member] ERASURE_MATCH", 1705 this.resultCollector); 1706 } testStringNestedSingleArgument03()1707 public void testStringNestedSingleArgument03() throws CoreException { 1708 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 1709 search("GS<?>.Generic<? super RuntimeException>", TYPE, REFERENCES, scope, this.resultCollector); 1710 assertSearchResults( 1711 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_wld [GS<GM<?, ?, ?>.Generic<?, ?, ?>>.Generic<?>] EQUIVALENT_MATCH\n" + 1712 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_www [GS<GM<GM<?, ?, ?>.Generic<?,?,?>,GM<?, ?, ?>.Generic<?,?,?>,GM<?, ?, ?>.Generic<?,?,?>>.Generic<?,?,?>>.Generic<?>] EQUIVALENT_MATCH\n" + 1713 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_obj [GS<GM<Object, Exception, RuntimeException>.Generic<Object, Exception, RuntimeException>>.Generic<Exception>] EQUIVALENT_MATCH\n" + 1714 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_wld [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1715 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_wld [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1716 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_wld [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1717 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1718 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<GS<?>.Generic<?>>.Generic<?>] EQUIVALENT_MATCH\n" + 1719 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1720 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<GS<GS<?>.Generic<?>>.Generic<?>>.Generic<?>] EQUIVALENT_MATCH\n" + 1721 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<GS<?>.Generic<?>>.Generic<?>] EQUIVALENT_MATCH\n" + 1722 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1723 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_obj [GS<Object>.Generic<?>] EQUIVALENT_MATCH\n" + 1724 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_obj [GS<? extends Throwable>.Generic<?>] EQUIVALENT_MATCH\n" + 1725 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_obj [GS<? super RuntimeException>.Generic<?>] EQUIVALENT_MATCH\n" + 1726 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_wld [GS<g3.t.def.GM<?, ?, ?>.Generic<?, ?, ?>>.Generic<?>] EQUIVALENT_MATCH\n" + 1727 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_www [GS<g3.t.def.GM<g3.t.def.GM<?, ?, ?>.Generic<?,?,?>,g3.t.def.GM<?, ?, ?>.Generic<?,?,?>,g3.t.def.GM<?, ?, ?>.Generic<?,?,?>>.Generic<?,?,?>>.Generic<?>] EQUIVALENT_MATCH\n" + 1728 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_obj [GS<g3.t.def.GM<Object, Exception, RuntimeException>.Generic<Object, Exception, RuntimeException>>.Generic<Exception>] EQUIVALENT_MATCH\n" + 1729 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_wld [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1730 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_wld [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1731 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_wld [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1732 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1733 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [GS<g3.t.def.GS<?>.Generic<?>>.Generic<?>] EQUIVALENT_MATCH\n" + 1734 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1735 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [GS<g3.t.def.GS<g3.t.def.GS<?>.Generic<?>>.Generic<?>>.Generic<?>] EQUIVALENT_MATCH\n" + 1736 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [GS<g3.t.def.GS<?>.Generic<?>>.Generic<?>] EQUIVALENT_MATCH\n" + 1737 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [GS<?>.Generic<?>] EQUIVALENT_MATCH\n" + 1738 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_obj [GS<Object>.Generic<?>] EQUIVALENT_MATCH\n" + 1739 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_obj [GS<? extends Throwable>.Generic<?>] EQUIVALENT_MATCH\n" + 1740 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_obj [GS<? super RuntimeException>.Generic<?>] EQUIVALENT_MATCH", 1741 this.resultCollector); 1742 } testStringNestedSingleArgument04()1743 public void testStringNestedSingleArgument04() throws CoreException { 1744 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 1745 search("NGS.Generic<? extends Throwable>", TYPE, REFERENCES, scope, this.resultCollector); 1746 assertSearchResults( 1747 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_wld [NGS.Generic<NGM.Generic<?, ?, ?>>] ERASURE_MATCH\n" + 1748 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_www [NGS.Generic<NGM.Generic<NGM.Generic<?, ?, ?>,NGM.Generic<?, ?, ?>,NGM.Generic<?, ?, ?>>>] ERASURE_MATCH\n" + 1749 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_obj [NGS.Generic<NGM.Generic<Object, Exception, RuntimeException>>] ERASURE_MATCH\n" + 1750 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_wld [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1751 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_wld [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1752 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_wld [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1753 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1754 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic<NGS.Generic<?>>] ERASURE_MATCH\n" + 1755 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1756 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic<NGS.Generic<NGS.Generic<?>>>] ERASURE_MATCH\n" + 1757 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic<NGS.Generic<?>>] ERASURE_MATCH\n" + 1758 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1759 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_obj [NGS.Generic<Object>] ERASURE_MATCH\n" + 1760 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_obj [NGS.Generic<? extends Throwable>] EXACT_MATCH\n" + 1761 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_obj [NGS.Generic<? super RuntimeException>] ERASURE_MATCH\n" + 1762 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_wld [NGS.Generic<g3.t.def.NGM.Generic<?, ?, ?>>] ERASURE_MATCH\n" + 1763 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_www [NGS.Generic<g3.t.def.NGM.Generic<g3.t.def.NGM.Generic<?, ?, ?>, g3.t.def.NGM.Generic<?, ?, ?>, g3.t.def.NGM.Generic<?, ?, ?>>>] ERASURE_MATCH\n" + 1764 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_obj [NGS.Generic<g3.t.def.NGM.Generic<java.lang.Object, java.lang.Exception, java.lang.RuntimeException>>] ERASURE_MATCH\n" + 1765 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_wld [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1766 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_wld [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1767 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_wld [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1768 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1769 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [NGS.Generic<g3.t.def.NGS.Generic<?>>] ERASURE_MATCH\n" + 1770 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1771 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [NGS.Generic<g3.t.def.NGS.Generic<g3.t.def.NGS.Generic<?>>>] ERASURE_MATCH\n" + 1772 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [NGS.Generic<g3.t.def.NGS.Generic<?>>] ERASURE_MATCH\n" + 1773 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [NGS.Generic<?>] EQUIVALENT_MATCH\n" + 1774 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_obj [NGS.Generic<java.lang.Object>] ERASURE_MATCH\n" + 1775 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_obj [NGS.Generic<? extends java.lang.Throwable>] EXACT_MATCH\n" + 1776 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_obj [NGS.Generic<? super java.lang.RuntimeException>] ERASURE_MATCH", 1777 this.resultCollector); 1778 } 1779 1780 // String pattern with nested multiple type arguments testStringNestedMultipleArguments01()1781 public void testStringNestedMultipleArguments01() throws CoreException { 1782 IJavaSearchScope scope = getJavaSearchCUScope("JavaSearch15", "g3/t/ref", "R1.java"); 1783 search("GM<Object, Exception, RuntimeException>", TYPE, REFERENCES, scope, this.resultCollector); 1784 assertSearchResults( 1785 "src/g3/t/ref/R1.java [GM] EQUIVALENT_RAW_MATCH\n" + 1786 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_wld [GM<?, ?, ?>] EQUIVALENT_MATCH\n" + 1787 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_www [GM<GM<?, ?, ?>,GM<?, ?, ?>,GM<?, ?, ?>>] ERASURE_MATCH\n" + 1788 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_www [GM<?, ?, ?>] EQUIVALENT_MATCH\n" + 1789 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_www [GM<?, ?, ?>] EQUIVALENT_MATCH\n" + 1790 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_www [GM<?, ?, ?>] EQUIVALENT_MATCH\n" + 1791 "src/g3/t/ref/R1.java g3.t.ref.R1.sgsm_obj [GM<Object, Exception, RuntimeException>] EXACT_MATCH\n" + 1792 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_wld [GM<GS<?>, GS<?>, GS<?>>] ERASURE_MATCH\n" + 1793 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_www [GM<GS<?>, GS<GS<?>>, GS<GS<GS<?>>>>] ERASURE_MATCH\n" + 1794 "src/g3/t/ref/R1.java g3.t.ref.R1.sgms_obj [GM<GS<Object>, GS<? extends Throwable>, GS<? super RuntimeException>>] ERASURE_MATCH\n" + 1795 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_wld [GM<?, ?, ?>] EQUIVALENT_MATCH\n" + 1796 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_www [GM<g3.t.def.GM<?, ?, ?>, g3.t.def.GM<?, ?, ?>, g3.t.def.GM<?, ?, ?>>] ERASURE_MATCH\n" + 1797 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_www [GM<?, ?, ?>] EQUIVALENT_MATCH\n" + 1798 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_www [GM<?, ?, ?>] EQUIVALENT_MATCH\n" + 1799 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_www [GM<?, ?, ?>] EQUIVALENT_MATCH\n" + 1800 "src/g3/t/ref/R1.java g3.t.ref.R1.qgsm_obj [GM<java.lang.Object, java.lang.Exception, java.lang.RuntimeException>] EXACT_MATCH\n" + 1801 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_wld [GM<g3.t.def.GS<?>, g3.t.def.GS<?>, g3.t.def.GS<?>>] ERASURE_MATCH\n" + 1802 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_www [GM<g3.t.def.GS<?>, g3.t.def.GS<g3.t.def.GS<?>>, g3.t.def.GS<g3.t.def.GS<g3.t.def.GS<?>>>>] ERASURE_MATCH\n" + 1803 "src/g3/t/ref/R1.java g3.t.ref.R1.qgms_obj [GM<g3.t.def.GS<java.lang.Object>, g3.t.def.GS<? extends java.lang.Throwable>, g3.t.def.GS<? super java.lang.RuntimeException>>] ERASURE_MATCH", 1804 this.resultCollector); 1805 } testStringNestedMultipleArguments02()1806 public void testStringNestedMultipleArguments02() throws CoreException { 1807 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 1808 search("GM<java.lang.Object, ? extends java.lang.Exception, ? super java.lang.RuntimeException>.Member", TYPE, REFERENCES, scope, this.resultCollector); 1809 assertSearchResults( 1810 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_wld [GM<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1811 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<GM<?, ?, ?>.Member,GM<?, ?, ?>.Member,GM<?, ?, ?>.Member>.Member] ERASURE_MATCH\n" + 1812 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1813 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1814 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1815 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_obj [GM<Object, Exception, RuntimeException>.Member] EQUIVALENT_MATCH\n" + 1816 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_wld [GM<GS<?>.Member, GS<?>.Member, GS<?>.Member>.Member] ERASURE_MATCH\n" + 1817 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GM<GS<?>.Member, GS<GS<?>.Member>.Member, GS<GS<GS<?>.Member>.Member>.Member>.Member] ERASURE_MATCH\n" + 1818 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_obj [GM<GS<Object>.Member, GS<? extends Throwable>.Member, GS<? super RuntimeException>.Member>.Member] ERASURE_MATCH\n" + 1819 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_wld [GM<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1820 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [GM<g3.t.def.GM<?, ?, ?>.Member, g3.t.def.GM<?, ?, ?>.Member, g3.t.def.GM<?, ?, ?>.Member>.Member] ERASURE_MATCH\n" + 1821 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [GM<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1822 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [GM<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1823 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [GM<?, ?, ?>.Member] EQUIVALENT_MATCH\n" + 1824 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_obj [GM<java.lang.Object, java.lang.Exception, java.lang.RuntimeException>.Member] EQUIVALENT_MATCH\n" + 1825 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_wld [GM<g3.t.def.GS<?>.Member, g3.t.def.GS<?>.Member, g3.t.def.GS<?>.Member>.Member] ERASURE_MATCH\n" + 1826 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [GM<g3.t.def.GS<?>.Member, g3.t.def.GS<g3.t.def.GS<?>.Member>.Member, g3.t.def.GS<g3.t.def.GS<g3.t.def.GS<?>.Member>.Member>.Member>.Member] ERASURE_MATCH\n" + 1827 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_obj [GM<g3.t.def.GS<java.lang.Object>.Member, g3.t.def.GS<? extends java.lang.Throwable>.Member, g3.t.def.GS<? super java.lang.RuntimeException>.Member>.Member] ERASURE_MATCH", 1828 this.resultCollector); 1829 } testStringNestedMultipleArguments03()1830 public void testStringNestedMultipleArguments03() throws CoreException { 1831 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 1832 search("GM<Object, Exception, RuntimeException>.Generic<?, ?, ?>", TYPE, REFERENCES, scope, this.resultCollector); 1833 assertSearchResults( 1834 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_wld [GM<?, ?, ?>.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1835 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_www [GM<GM<?, ?, ?>.Generic<?,?,?>,GM<?, ?, ?>.Generic<?,?,?>,GM<?, ?, ?>.Generic<?,?,?>>.Generic<?,?,?>] ERASURE_MATCH\n" + 1836 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_www [GM<?, ?, ?>.Generic<?,?,?>] EQUIVALENT_MATCH\n" + 1837 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_www [GM<?, ?, ?>.Generic<?,?,?>] EQUIVALENT_MATCH\n" + 1838 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_www [GM<?, ?, ?>.Generic<?,?,?>] EQUIVALENT_MATCH\n" + 1839 "src/g3/t/ref/R3.java g3.t.ref.R3.sgsm_obj [GM<Object, Exception, RuntimeException>.Generic<Object, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1840 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_wld [GM<GS<?>.Generic<?>, GS<?>.Generic<?>, GS<?>.Generic<?>>.Generic<?,?,?>] ERASURE_MATCH\n" + 1841 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_www [GM<GS<?>.Generic<?>, GS<GS<?>.Generic<?>>.Generic<?>, GS<GS<GS<?>.Generic<?>>.Generic<?>>.Generic<?>>.Generic<?,?,?>] ERASURE_MATCH\n" + 1842 "src/g3/t/ref/R3.java g3.t.ref.R3.sgms_obj [GM<GS<Object>.Generic<?>, GS<? extends Throwable>.Generic<?>, GS<? super RuntimeException>.Generic<?>>.Generic<?,?,?>] ERASURE_MATCH\n" + 1843 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_wld [GM<?, ?, ?>.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1844 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_www [GM<g3.t.def.GM<?, ?, ?>.Generic<?,?,?>,g3.t.def.GM<?, ?, ?>.Generic<?,?,?>,g3.t.def.GM<?, ?, ?>.Generic<?,?,?>>.Generic<?,?,?>] ERASURE_MATCH\n" + 1845 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_www [GM<?, ?, ?>.Generic<?,?,?>] EQUIVALENT_MATCH\n" + 1846 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_www [GM<?, ?, ?>.Generic<?,?,?>] EQUIVALENT_MATCH\n" + 1847 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_www [GM<?, ?, ?>.Generic<?,?,?>] EQUIVALENT_MATCH\n" + 1848 "src/g3/t/ref/R3.java g3.t.ref.R3.qgsm_obj [GM<Object, Exception, RuntimeException>.Generic<Object, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1849 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_wld [GM<g3.t.def.GS<?>.Generic<?>, g3.t.def.GS<?>.Generic<?>, g3.t.def.GS<?>.Generic<?>>.Generic<?,?,?>] ERASURE_MATCH\n" + 1850 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_www [GM<g3.t.def.GS<?>.Generic<?>, g3.t.def.GS<g3.t.def.GS<?>.Generic<?>>.Generic<?>, g3.t.def.GS<g3.t.def.GS<g3.t.def.GS<?>.Generic<?>>.Generic<?>>.Generic<?>>.Generic<?,?,?>] ERASURE_MATCH\n" + 1851 "src/g3/t/ref/R3.java g3.t.ref.R3.qgms_obj [GM<g3.t.def.GS<Object>.Generic<?>, g3.t.def.GS<? extends Throwable>.Generic<?>, g3.t.def.GS<? super RuntimeException>.Generic<?>>.Generic<?,?,?>] ERASURE_MATCH", 1852 this.resultCollector); 1853 } testStringNestedMultipleArguments04()1854 public void testStringNestedMultipleArguments04() throws CoreException { 1855 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 1856 search("g3.t.def.GM<?, ?, ?>.Member", TYPE, REFERENCES, scope, this.resultCollector); 1857 assertSearchResults( 1858 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_wld [GM<?, ?, ?>.Member] EXACT_MATCH\n" + 1859 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<GM<?, ?, ?>.Member,GM<?, ?, ?>.Member,GM<?, ?, ?>.Member>.Member] EQUIVALENT_MATCH\n" + 1860 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<?, ?, ?>.Member] EXACT_MATCH\n" + 1861 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<?, ?, ?>.Member] EXACT_MATCH\n" + 1862 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_www [GM<?, ?, ?>.Member] EXACT_MATCH\n" + 1863 "src/g3/t/ref/R2.java g3.t.ref.R2.sgsm_obj [GM<Object, Exception, RuntimeException>.Member] EQUIVALENT_MATCH\n" + 1864 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_wld [GM<GS<?>.Member, GS<?>.Member, GS<?>.Member>.Member] EQUIVALENT_MATCH\n" + 1865 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_www [GM<GS<?>.Member, GS<GS<?>.Member>.Member, GS<GS<GS<?>.Member>.Member>.Member>.Member] EQUIVALENT_MATCH\n" + 1866 "src/g3/t/ref/R2.java g3.t.ref.R2.sgms_obj [GM<GS<Object>.Member, GS<? extends Throwable>.Member, GS<? super RuntimeException>.Member>.Member] EQUIVALENT_MATCH\n" + 1867 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_wld [g3.t.def.GM<?, ?, ?>.Member] EXACT_MATCH\n" + 1868 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [g3.t.def.GM<g3.t.def.GM<?, ?, ?>.Member, g3.t.def.GM<?, ?, ?>.Member, g3.t.def.GM<?, ?, ?>.Member>.Member] EQUIVALENT_MATCH\n" + 1869 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [g3.t.def.GM<?, ?, ?>.Member] EXACT_MATCH\n" + 1870 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [g3.t.def.GM<?, ?, ?>.Member] EXACT_MATCH\n" + 1871 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_www [g3.t.def.GM<?, ?, ?>.Member] EXACT_MATCH\n" + 1872 "src/g3/t/ref/R2.java g3.t.ref.R2.qgsm_obj [g3.t.def.GM<java.lang.Object, java.lang.Exception, java.lang.RuntimeException>.Member] EQUIVALENT_MATCH\n" + 1873 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_wld [g3.t.def.GM<g3.t.def.GS<?>.Member, g3.t.def.GS<?>.Member, g3.t.def.GS<?>.Member>.Member] EQUIVALENT_MATCH\n" + 1874 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_www [g3.t.def.GM<g3.t.def.GS<?>.Member, g3.t.def.GS<g3.t.def.GS<?>.Member>.Member, g3.t.def.GS<g3.t.def.GS<g3.t.def.GS<?>.Member>.Member>.Member>.Member] EQUIVALENT_MATCH\n" + 1875 "src/g3/t/ref/R2.java g3.t.ref.R2.qgms_obj [g3.t.def.GM<g3.t.def.GS<java.lang.Object>.Member, g3.t.def.GS<? extends java.lang.Throwable>.Member, g3.t.def.GS<? super java.lang.RuntimeException>.Member>.Member] EQUIVALENT_MATCH", 1876 this.resultCollector); 1877 } testStringNestedMultipleArguments05()1878 public void testStringNestedMultipleArguments05() throws CoreException { 1879 IJavaSearchScope scope = getJavaSearchScope15("g3.t", true /* add all subpackages */); 1880 search("NGM.Generic<? extends java.lang.Object, ? extends java.lang.Object, ? extends java.lang.Object>", TYPE, REFERENCES, scope, this.resultCollector); 1881 assertSearchResults( 1882 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_wld [NGM.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1883 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_www [NGM.Generic<NGM.Generic<?, ?, ?>,NGM.Generic<?, ?, ?>,NGM.Generic<?, ?, ?>>] EQUIVALENT_MATCH\n" + 1884 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_www [NGM.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1885 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_www [NGM.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1886 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_www [NGM.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1887 "src/g3/t/ref/R4.java g3.t.ref.R4.sgsm_obj [NGM.Generic<Object, Exception, RuntimeException>] EQUIVALENT_MATCH\n" + 1888 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_wld [NGM.Generic<NGS.Generic<?>, NGS.Generic<?>, NGS.Generic<?>>] EQUIVALENT_MATCH\n" + 1889 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_www [NGM.Generic<NGS.Generic<?>, NGS.Generic<NGS.Generic<?>>, NGS.Generic<NGS.Generic<NGS.Generic<?>>>>] EQUIVALENT_MATCH\n" + 1890 "src/g3/t/ref/R4.java g3.t.ref.R4.sgms_obj [NGM.Generic<NGS.Generic<Object>, NGS.Generic<? extends Throwable>, NGS.Generic<? super RuntimeException>>] EQUIVALENT_MATCH\n" + 1891 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_wld [NGM.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1892 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_www [NGM.Generic<g3.t.def.NGM.Generic<?, ?, ?>, g3.t.def.NGM.Generic<?, ?, ?>, g3.t.def.NGM.Generic<?, ?, ?>>] EQUIVALENT_MATCH\n" + 1893 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_www [NGM.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1894 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_www [NGM.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1895 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_www [NGM.Generic<?, ?, ?>] EQUIVALENT_MATCH\n" + 1896 "src/g3/t/ref/R4.java g3.t.ref.R4.qgsm_obj [NGM.Generic<java.lang.Object, java.lang.Exception, java.lang.RuntimeException>] EQUIVALENT_MATCH\n" + 1897 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_wld [NGM.Generic<g3.t.def.NGS.Generic<?>, g3.t.def.NGS.Generic<?>, g3.t.def.NGS.Generic<?>>] EQUIVALENT_MATCH\n" + 1898 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_www [NGM.Generic<g3.t.def.NGS.Generic<?>, g3.t.def.NGS.Generic<g3.t.def.NGS.Generic<?>>, g3.t.def.NGS.Generic<g3.t.def.NGS.Generic<g3.t.def.NGS.Generic<?>>>>] EQUIVALENT_MATCH\n" + 1899 "src/g3/t/ref/R4.java g3.t.ref.R4.qgms_obj [NGM.Generic<g3.t.def.NGS.Generic<java.lang.Object>, g3.t.def.NGS.Generic<? extends java.lang.Throwable>, g3.t.def.NGS.Generic<? super java.lang.RuntimeException>>] EQUIVALENT_MATCH", 1900 this.resultCollector); 1901 } 1902 1903 // Parameterized array type with single type argument testParameterizedArrayTypeSingleArgument01()1904 public void testParameterizedArrayTypeSingleArgument01() throws CoreException { 1905 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g6/t/ref/Single.java"); 1906 IType type = selectType(unit, "List", 2 /* 2nd occurence*/); //$NON-NLS-1$ 1907 IJavaSearchScope scope = getJavaSearchScope15("g6", true /* add all subpackages */); 1908 search(type, REFERENCES, scope, this.resultCollector); 1909 assertSearchResults( 1910 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionList [g6.t.def.List] EQUIVALENT_MATCH\n" + 1911 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArray [g6.t.def.List] EQUIVALENT_MATCH\n" + 1912 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArrayList [g6.t.def.List] EQUIVALENT_MATCH\n" + 1913 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArrayList [g6.t.def.List] EQUIVALENT_MATCH\n" + 1914 "src/g6/t/ref/Single.java [g6.t.def.List] EXACT_RAW_MATCH\n" + 1915 "src/g6/t/ref/Single.java g6.t.ref.Single.list [List] EXACT_RAW_MATCH\n" + 1916 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionList [List] EQUIVALENT_MATCH\n" + 1917 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArray [List] EQUIVALENT_MATCH\n" + 1918 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArrayList [List] EQUIVALENT_MATCH\n" + 1919 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArrayList [List] EQUIVALENT_MATCH", 1920 this.resultCollector); 1921 } testParameterizedArrayTypeSingleArgument02()1922 public void testParameterizedArrayTypeSingleArgument02() throws CoreException { 1923 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g6/t/ref/Single.java"); 1924 IType type = selectType(unit, "List<Exception>"); //$NON-NLS-1$ 1925 IJavaSearchScope scope = getJavaSearchScope15("g6", true /* add all subpackages */); 1926 search(type, REFERENCES, scope, this.resultCollector); 1927 assertSearchResults( 1928 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionList [g6.t.def.List<Exception>] EXACT_MATCH\n" + 1929 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArray [g6.t.def.List<Exception>] EXACT_MATCH\n" + 1930 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArrayList [g6.t.def.List<g6.t.def.List<Exception>[]>] ERASURE_MATCH\n" + 1931 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArrayList [g6.t.def.List<Exception>] EXACT_MATCH\n" + 1932 "src/g6/t/ref/Single.java [g6.t.def.List] EQUIVALENT_RAW_MATCH\n" + 1933 "src/g6/t/ref/Single.java g6.t.ref.Single.list [List] EQUIVALENT_RAW_MATCH\n" + 1934 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionList [List<Exception>] EXACT_MATCH\n" + 1935 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArray [List<Exception>] EXACT_MATCH\n" + 1936 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArrayList [List<List<Exception>[]>] ERASURE_MATCH\n" + 1937 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArrayList [List<Exception>] EXACT_MATCH", 1938 1939 this.resultCollector); 1940 } testParameterizedArrayTypeSingleArgument03()1941 public void testParameterizedArrayTypeSingleArgument03() throws CoreException { 1942 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g6/t/ref/QualifSingle.java"); 1943 IType type = selectType(unit, "g6.t.def.List<Exception>", 2 /* 2nd occurence*/); //$NON-NLS-1$ 1944 IJavaSearchScope scope = getJavaSearchScope15("g6", true /* add all subpackages */); 1945 search(type, REFERENCES, scope, this.resultCollector); 1946 assertSearchResults( 1947 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionList [g6.t.def.List<Exception>] EXACT_MATCH\n" + 1948 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArray [g6.t.def.List<Exception>] EXACT_MATCH\n" + 1949 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArrayList [g6.t.def.List<g6.t.def.List<Exception>[]>] ERASURE_MATCH\n" + 1950 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArrayList [g6.t.def.List<Exception>] EXACT_MATCH\n" + 1951 "src/g6/t/ref/Single.java [g6.t.def.List] EQUIVALENT_RAW_MATCH\n" + 1952 "src/g6/t/ref/Single.java g6.t.ref.Single.list [List] EQUIVALENT_RAW_MATCH\n" + 1953 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionList [List<Exception>] EXACT_MATCH\n" + 1954 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArray [List<Exception>] EXACT_MATCH\n" + 1955 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArrayList [List<List<Exception>[]>] ERASURE_MATCH\n" + 1956 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArrayList [List<Exception>] EXACT_MATCH", 1957 this.resultCollector); 1958 } testParameterizedArrayTypeSingleArgument04()1959 public void testParameterizedArrayTypeSingleArgument04() throws CoreException { 1960 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g6/t/ref/QualifSingle.java"); 1961 IType type = selectType(unit, "g6.t.def.List<g6.t.def.List<Exception>[]>"); //$NON-NLS-1$ 1962 IJavaSearchScope scope = getJavaSearchScope15("g6", true /* add all subpackages */); 1963 search(type, REFERENCES, scope, this.resultCollector); 1964 assertSearchResults( 1965 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionList [g6.t.def.List<Exception>] ERASURE_MATCH\n" + 1966 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArray [g6.t.def.List<Exception>] ERASURE_MATCH\n" + 1967 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArrayList [g6.t.def.List<g6.t.def.List<Exception>[]>] EXACT_MATCH\n" + 1968 "src/g6/t/ref/QualifSingle.java g6.t.ref.QualifSingle.exceptionListArrayList [g6.t.def.List<Exception>] ERASURE_MATCH\n" + 1969 "src/g6/t/ref/Single.java [g6.t.def.List] EQUIVALENT_RAW_MATCH\n" + 1970 "src/g6/t/ref/Single.java g6.t.ref.Single.list [List] EQUIVALENT_RAW_MATCH\n" + 1971 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionList [List<Exception>] ERASURE_MATCH\n" + 1972 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArray [List<Exception>] ERASURE_MATCH\n" + 1973 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArrayList [List<List<Exception>[]>] EXACT_MATCH\n" + 1974 "src/g6/t/ref/Single.java g6.t.ref.Single.exceptionListArrayList [List<Exception>] ERASURE_MATCH", 1975 this.resultCollector); 1976 } 1977 1978 // Parameterized array type with multiple type arguments testParameterizedArrayTypeMultipleArguments01()1979 public void testParameterizedArrayTypeMultipleArguments01() throws CoreException { 1980 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g6/t/ref/Multiple.java"); 1981 IType type = selectType(unit, "Table.Entry"); //$NON-NLS-1$ 1982 IJavaSearchScope scope = getJavaSearchScope15("g6", true /* add all subpackages */); 1983 search(type, REFERENCES, scope, this.resultCollector); 1984 assertSearchResults( 1985 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entry [Table.Entry] EXACT_RAW_MATCH\n" + 1986 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entryException [Table<String, Exception>.Entry] EQUIVALENT_MATCH\n" + 1987 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entryExceptionArray [Table<String, Exception>.Entry] EQUIVALENT_MATCH\n" + 1988 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Table<String, Exception>.Entry<String, Exception>[]>.Entry] EQUIVALENT_MATCH\n" + 1989 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Exception>.Entry] EQUIVALENT_MATCH\n" + 1990 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Exception>.Entry] EQUIVALENT_MATCH\n" + 1991 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.entryException [g6.t.def.Table<String, Exception>.Entry] EQUIVALENT_MATCH\n" + 1992 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.entryExceptionArray [g6.t.def.Table<String, Exception>.Entry] EQUIVALENT_MATCH\n" + 1993 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, g6.t.def.Table<String, Exception>.Entry<String, Exception>[]>.Entry] EQUIVALENT_MATCH\n" + 1994 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, Exception>.Entry] EQUIVALENT_MATCH\n" + 1995 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, Exception>.Entry] EQUIVALENT_MATCH", 1996 this.resultCollector); 1997 } testParameterizedArrayTypeMultipleArguments02()1998 public void testParameterizedArrayTypeMultipleArguments02() throws CoreException { 1999 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g6/t/ref/QualifMultiple.java"); 2000 IType type = selectType(unit, "Table<String, Exception>.Entry<String, Exception>"); //$NON-NLS-1$ 2001 IJavaSearchScope scope = getJavaSearchScope15("g6", true /* add all subpackages */); 2002 search(type, REFERENCES, scope, this.resultCollector); 2003 assertSearchResults( 2004 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entry [Table.Entry] EQUIVALENT_RAW_MATCH\n" + 2005 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entryException [Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2006 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entryExceptionArray [Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2007 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Table<String, Exception>.Entry<String, Exception>[]>.Entry<String, Table<String, Exception>.Entry<String, Exception>[]>] ERASURE_MATCH\n" + 2008 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2009 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2010 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.entryException [g6.t.def.Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2011 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.entryExceptionArray [g6.t.def.Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2012 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, g6.t.def.Table<String, Exception>.Entry<String, Exception>[]>.Entry<String, g6.t.def.Table<String, Exception>.Entry<String, Exception>[]>] ERASURE_MATCH\n" + 2013 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2014 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH", 2015 this.resultCollector); 2016 } testParameterizedArrayTypeMultipleArguments03()2017 public void testParameterizedArrayTypeMultipleArguments03() throws CoreException { 2018 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g6/t/ref/Multiple.java"); 2019 IType type = selectType(unit, "Table<String, Exception>.Entry<String, Exception>", 2); //$NON-NLS-1$ 2020 IJavaSearchScope scope = getJavaSearchScope15("g6", true /* add all subpackages */); 2021 search(type, REFERENCES, scope, this.resultCollector); 2022 assertSearchResults( 2023 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entry [Table.Entry] EQUIVALENT_RAW_MATCH\n" + 2024 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entryException [Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2025 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entryExceptionArray [Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2026 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Table<String, Exception>.Entry<String, Exception>[]>.Entry<String, Table<String, Exception>.Entry<String, Exception>[]>] ERASURE_MATCH\n" + 2027 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2028 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2029 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.entryException [g6.t.def.Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2030 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.entryExceptionArray [g6.t.def.Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2031 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, g6.t.def.Table<String, Exception>.Entry<String, Exception>[]>.Entry<String, g6.t.def.Table<String, Exception>.Entry<String, Exception>[]>] ERASURE_MATCH\n" + 2032 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH\n" + 2033 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, Exception>.Entry<String, Exception>] EXACT_MATCH", 2034 this.resultCollector); 2035 } testParameterizedArrayTypeMultipleArguments04()2036 public void testParameterizedArrayTypeMultipleArguments04() throws CoreException { 2037 ICompilationUnit unit = getCompilationUnit("JavaSearch15/src/g6/t/ref/Multiple.java"); 2038 IType type = selectType(unit, "Table<String, Table<String, Exception>.Entry<String, Exception>[]>.Entry<String, Table<String, Exception>.Entry<String, Exception>[]>"); //$NON-NLS-1$ 2039 IJavaSearchScope scope = getJavaSearchScope15("g6", true /* add all subpackages */); 2040 search(type, REFERENCES, scope, this.resultCollector); 2041 assertSearchResults( 2042 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entry [Table.Entry] EQUIVALENT_RAW_MATCH\n" + 2043 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entryException [Table<String, Exception>.Entry<String, Exception>] ERASURE_MATCH\n" + 2044 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.entryExceptionArray [Table<String, Exception>.Entry<String, Exception>] ERASURE_MATCH\n" + 2045 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Table<String, Exception>.Entry<String, Exception>[]>.Entry<String, Table<String, Exception>.Entry<String, Exception>[]>] EXACT_MATCH\n" + 2046 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Exception>.Entry<String, Exception>] ERASURE_MATCH\n" + 2047 "src/g6/t/ref/Multiple.java g6.t.ref.Multiple.tableOfEntryExceptionArray [Table<String, Exception>.Entry<String, Exception>] ERASURE_MATCH\n" + 2048 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.entryException [g6.t.def.Table<String, Exception>.Entry<String, Exception>] ERASURE_MATCH\n" + 2049 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.entryExceptionArray [g6.t.def.Table<String, Exception>.Entry<String, Exception>] ERASURE_MATCH\n" + 2050 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, g6.t.def.Table<String, Exception>.Entry<String, Exception>[]>.Entry<String, g6.t.def.Table<String, Exception>.Entry<String, Exception>[]>] EXACT_MATCH\n" + 2051 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, Exception>.Entry<String, Exception>] ERASURE_MATCH\n" + 2052 "src/g6/t/ref/QualifMultiple.java g6.t.ref.QualifMultiple.tableOfEntryExceptionArray [g6.t.def.Table<String, Exception>.Entry<String, Exception>] ERASURE_MATCH", 2053 this.resultCollector); 2054 } 2055 2056 /** 2057 * Bug 83713: [search] IAE while searching reference to parameterized type 2058 * @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=83713" 2059 */ testParameterizedType_Bug83713()2060 public void testParameterizedType_Bug83713() throws CoreException { 2061 this.workingCopies = new ICompilationUnit[1]; 2062 this.workingCopies[0] = getWorkingCopy("/JavaSearch15/src/p/X.java", 2063 "package p;\n" + 2064 "public class X<T> {}\n" + 2065 "class Y<E> extends X<E> {\n" + 2066 " X<E> y1;\n" + 2067 " X<E> y2;\n" + 2068 "}\n" 2069 ); 2070 IJavaSearchScope scope = SearchEngine.createJavaSearchScope(this.workingCopies); 2071 IType type = selectParameterizedType(this.workingCopies[0], "X<E>", 2); 2072 search(type, REFERENCES, scope); 2073 assertSearchResults( 2074 "src/p/X.java p.Y [X<E>] EXACT_MATCH\n" + 2075 "src/p/X.java p.Y.y1 [X<E>] EXACT_MATCH\n" + 2076 "src/p/X.java p.Y.y2 [X<E>] EXACT_MATCH" 2077 ); 2078 } 2079 } 2080