Skip to content

Commit 2c70472

Browse files
committed
minor fix-ups
1 parent 2759818 commit 2c70472

File tree

17 files changed

+315
-441
lines changed

17 files changed

+315
-441
lines changed

base-test/org.eclipse.jdt.groovy.core.tests.compiler/src/org/eclipse/jdt/groovy/core/tests/xform/StaticCompilationTests.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5138,16 +5138,16 @@ public void testCompileStatic9771() {
51385138
"Main.groovy",
51395139
"@groovy.transform.CompileStatic\n" +
51405140
"class Main {\n" +
5141-
" private final Map<String, Boolean> map = [:]\n" +
5142-
" void test() {\n" +
5143-
" { ->\n" +
5144-
" map['key'] = true\n" +
5145-
" }.call()\n" +
5146-
" print map\n" +
5147-
" }\n" +
5148-
" static main(args) {\n" +
5149-
" newInstance().test()\n" +
5150-
" }\n" +
5141+
" private final Map<String, Boolean> map = [:]\n" +
5142+
" void test() {\n" +
5143+
" { ->\n" +
5144+
" map['key'] = true\n" +
5145+
" }.call()\n" +
5146+
" print map\n" +
5147+
" }\n" +
5148+
" static main(args) {\n" +
5149+
" newInstance().test()\n" +
5150+
" }\n" +
51515151
"}\n",
51525152
};
51535153
//@formatter:on

ide-test/org.codehaus.groovy.eclipse.codeassist.test/src/org/codehaus/groovy/eclipse/codeassist/tests/CompletionTestSuite.groovy

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
*/
1616
package org.codehaus.groovy.eclipse.codeassist.tests
1717

18+
import static org.eclipse.jdt.core.groovy.tests.search.SearchTestSuite.waitUntilReady
1819
import static org.junit.Assert.*
1920

2021
import java.util.regex.Pattern
@@ -25,7 +26,6 @@ import org.codehaus.groovy.eclipse.codeassist.completions.GroovyExtendedCompleti
2526
import org.codehaus.groovy.eclipse.codeassist.requestor.ContentAssistContext
2627
import org.codehaus.groovy.eclipse.codeassist.requestor.GroovyCompletionProposalComputer
2728
import org.codehaus.groovy.eclipse.test.GroovyEclipseTestSuite
28-
import org.codehaus.groovy.eclipse.test.SynchronizationUtils
2929
import org.codehaus.jdt.groovy.model.GroovyCompilationUnit
3030
import org.eclipse.jdt.core.ICompilationUnit
3131
import org.eclipse.jdt.core.IJavaElement
@@ -55,7 +55,6 @@ abstract class CompletionTestSuite extends GroovyEclipseTestSuite {
5555

5656
@Before
5757
final void setUpCompletionTestCase() {
58-
SynchronizationUtils.waitForDSLDProcessingToComplete()
5958
setJavaPreference(PreferenceConstants.CODEASSIST_ADDIMPORT, true)
6059
setJavaPreference(PreferenceConstants.CODEASSIST_INSERT_COMPLETION, true)
6160
setJavaPreference(PreferenceConstants.CODEASSIST_GUESS_METHOD_ARGUMENTS, false)
@@ -91,8 +90,7 @@ abstract class CompletionTestSuite extends GroovyEclipseTestSuite {
9190

9291
/** Use {@link #createProposalsAtOffset} if testing {@link GroovyCompletionProposalComputer}. */
9392
protected ICompletionProposal[] performContentAssist(ICompilationUnit unit, int offset, Class<? extends IJavaCompletionProposalComputer> computerClass) {
94-
JavaEditor editor = openInEditor(unit)
95-
SynchronizationUtils.waitForIndexingToComplete(unit)
93+
JavaEditor editor = openInEditor(unit); waitUntilReady(unit.javaProject)
9694
JavaSourceViewer viewer = editor.viewer
9795
viewer.setSelectedRange(offset, 0)
9896

ide-test/org.codehaus.groovy.eclipse.codebrowsing.test/src/org/codehaus/groovy/eclipse/codebrowsing/tests/CodeSelectGenericsTests.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ final class CodeSelectGenericsTests extends BrowsingTestSuite {
142142
String contents = '[a: Number].collect { k,v -> "" }'
143143
IJavaElement elem = assertCodeSelect([contents], 'collect')
144144
MethodNode method = ((GroovyResolvedBinaryMethod) elem).inferredElement
145-
assert method.returnType.toString(false) == 'java.util.List <java.lang.Object>'
145+
assert method.returnType.toString(false) == 'java.util.List <java.lang.String>'
146146
}
147147

148148
@Test

ide-test/org.codehaus.groovy.eclipse.core.test/src/org/codehaus/groovy/eclipse/core/test/SyntheticMemberSearchTests.groovy

Lines changed: 10 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import org.codehaus.groovy.eclipse.core.search.SyntheticAccessorSearchRequestor
2121
import org.codehaus.groovy.eclipse.test.GroovyEclipseTestSuite
2222
import org.eclipse.jdt.core.IJavaElement
2323
import org.eclipse.jdt.core.IType
24+
import org.eclipse.jdt.core.groovy.tests.search.SearchTestSuite
2425
import org.eclipse.jdt.core.search.IJavaSearchConstants
2526
import org.eclipse.jdt.core.search.SearchEngine
2627
import org.eclipse.jdt.core.search.SearchMatch
@@ -44,7 +45,7 @@ final class SyntheticMemberSearchTests extends GroovyEclipseTestSuite {
4445
| void setZzzz(boolean value) {}
4546
|}
4647
|'''.stripMargin(), 'G', 'p'
47-
48+
gUnit.discardWorkingCopy()
4849
gType = gUnit.getType('G')
4950
assert gType?.exists()
5051
}
@@ -235,7 +236,6 @@ final class SyntheticMemberSearchTests extends GroovyEclipseTestSuite {
235236
@Test
236237
void testSearchInJava5() {
237238
addJavaSource '''\
238-
|package p;
239239
|class C {
240240
| public boolean isXxxx() {
241241
| return false;
@@ -252,7 +252,7 @@ final class SyntheticMemberSearchTests extends GroovyEclipseTestSuite {
252252
List<SearchMatch> matches = []
253253
new SyntheticAccessorSearchRequestor().findSyntheticMatches(gType.children.find { it.elementName == 'xxxx' },
254254
IJavaSearchConstants.DECLARATIONS | IJavaSearchConstants.IGNORE_DECLARING_TYPE | IJavaSearchConstants.IGNORE_RETURN_TYPE,
255-
[SearchEngine.defaultSearchParticipant] as SearchParticipant[],
255+
[SearchEngine.getDefaultSearchParticipant()] as SearchParticipant[],
256256
SearchEngine.createWorkspaceScope(),
257257
matches.&add,
258258
null)
@@ -264,7 +264,8 @@ final class SyntheticMemberSearchTests extends GroovyEclipseTestSuite {
264264

265265
private List<SearchMatch> performSearch(String searchName, IType type = gType) {
266266
IJavaElement target = type.children.find { it.elementName == searchName }
267-
assert target != null : "child not found: $searchName"
267+
assert target?.exists() : "child not found: $searchName"
268+
SearchTestSuite.waitUntilReady(type.javaProject)
268269

269270
new LinkedList<SearchMatch>().tap {
270271
new SyntheticAccessorSearchRequestor().findSyntheticMatches(target, it.&add, null)
@@ -275,34 +276,20 @@ final class SyntheticMemberSearchTests extends GroovyEclipseTestSuite {
275276
assert matches.size() == expected : "Wrong number of matches found in:\n${ -> matches.join('\n')}"
276277
}
277278

278-
/**
279-
* Ensures that the given match exists at least once in the list.
280-
*/
281279
private void assertMatch(String enclosingName, String matchName, String contents, List<SearchMatch> matches) {
282-
int matchIndex = 0
283-
int matchStart = 0
284-
boolean matchFound = false
285-
for (match in matches) {
286-
if (isMatchOf(enclosingName, matchName, matchStart, contents, match)) {
287-
matchFound = true
288-
break
289-
}
290-
matchIndex += 1
291-
}
292-
assert matchFound : "Match name $matchName not found in\n${ -> matches.join('\n')}"
293-
294-
SearchMatch match = matches.remove(matchIndex)
280+
SearchMatch match = matches.find(this.&isMatchOf.curry(enclosingName, matchName, contents))
281+
assert match : "Match for '$matchName' not found in:\n${ -> matches.join('\n')}"
295282
assert (match.element as IJavaElement).exists()
296283
}
297284

298285
private void assertNoMatch(String enclosingName, String matchName, String contents, List<SearchMatch> matches) {
299286
boolean matchFound = matches.any(this.&isMatchOf.curry(enclosingName, matchName, contents))
300-
assert !matchFound : "Match name $matchName was found, but should not have been.\n${ -> matches.join('\n')}"
287+
assert !matchFound : "Match for '$matchName' was found in:\n${ -> matches.join('\n')}"
301288
}
302289

303-
private static boolean isMatchOf(String enclosingName, String matchName, int matchStart = 0, String contents, SearchMatch match) {
290+
private static boolean isMatchOf(String enclosingName, String matchName, String contents, SearchMatch match) {
304291
(match.element as IJavaElement).elementName == enclosingName &&
305-
contents.indexOf(matchName, matchStart) == match.offset &&
292+
contents.indexOf(matchName) == match.offset &&
306293
matchName.length() == match.length
307294
}
308295
}

ide-test/org.codehaus.groovy.eclipse.dsl.tests/src/org/codehaus/groovy/eclipse/dsl/tests/DSLInferencingTests.groovy

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515
*/
1616
package org.codehaus.groovy.eclipse.dsl.tests
1717

18+
import static org.eclipse.core.resources.IncrementalProjectBuilder.FULL_BUILD
19+
1820
import org.codehaus.groovy.eclipse.dsl.GroovyDSLCoreActivator
1921
import org.codehaus.groovy.eclipse.test.TestProject
2022
import org.eclipse.jdt.groovy.core.util.GroovyUtils
@@ -1800,7 +1802,7 @@ final class DSLInferencingTests extends DSLInferencingTestSuite {
18001802
| property name:'other', type:Integer
18011803
|}
18021804
|'''.stripMargin())
1803-
otherProject.fullBuild()
1805+
otherProject.project.build(FULL_BUILD, null)
18041806

18051807
addProjectReference(otherProject.javaProject)
18061808
GroovyDSLCoreActivator.default.contextStoreManager.initialize(project, true)

ide-test/org.codehaus.groovy.eclipse.dsl.tests/src/org/codehaus/groovy/eclipse/dsl/tests/DSLStoreTests.groovy

Lines changed: 25 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,6 @@ import org.eclipse.core.resources.IncrementalProjectBuilder
3232
import org.eclipse.core.runtime.FileLocator
3333
import org.eclipse.core.runtime.Path
3434
import org.eclipse.jdt.core.JavaCore
35-
import org.eclipse.jdt.core.groovy.tests.SimpleProgressMonitor
36-
import org.eclipse.jdt.internal.core.JavaModelManager
3735
import org.junit.Test
3836

3937
final class DSLStoreTests extends DSLInferencingTestSuite {
@@ -43,22 +41,12 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
4341
* @param allExpectedPointcuts map: dsl file name -> all pointcuts in that file
4442
* @param expectedContributionCounts map: pointcut name -> all contribution group associated with
4543
*/
46-
private void assertDSLStore(int expectedNumDslFiles, Map<String, List<String>> allExpectedPointcuts, Map<String, Integer> expectedContributionCounts) {
47-
// ensure DSLDs are refreshed
48-
// don't schedule. instead run in the same thread.
49-
println 'About to run RefreshDSLDJob'
50-
51-
SimpleProgressMonitor spm = new SimpleProgressMonitor('clean build')
52-
project.build(IncrementalProjectBuilder.CLEAN_BUILD, spm)
53-
spm.waitForCompletion()
54-
55-
JavaModelManager.indexManager.removeIndex(project.location)
56-
JavaModelManager.indexManager.cleanUpIndexes()
57-
SynchronizationUtils.waitForIndexingToComplete(javaProject)
44+
private void runTest(int expectedNumDslFiles, Map<String, List<String>> allExpectedPointcuts, Map<String, Integer> expectedContributionCounts) {
45+
project.build(IncrementalProjectBuilder.CLEAN_BUILD, null)
46+
SynchronizationUtils.waitForDSLDProcessingToComplete()
5847

5948
DSLDStoreManager manager = GroovyDSLCoreActivator.default.contextStoreManager
6049
manager.initialize(project, true)
61-
println 'Finished RefreshDSLDJob'
6250

6351
DSLDStore store = manager.getDSLDStore(project)
6452
Set<String> disabledScripts = DSLPreferences.disabledScriptsAsSet
@@ -131,14 +119,14 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
131119

132120
@Test
133121
void testNothing() {
134-
assertDSLStore(0, [:], [:])
122+
runTest(0, [:], [:])
135123
}
136124

137125
@Test
138126
void testSingleSimple() {
139127
createDsls('currentType().accept { }')
140128

141-
assertDSLStore(1,
129+
runTest(1,
142130
createExpectedPointcuts([
143131
createSemiUniqueName(CurrentTypePointcut, 0)
144132
]),
@@ -156,7 +144,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
156144
'g.accept { }\n' +
157145
'g.accept { }')
158146

159-
assertDSLStore(1,
147+
runTest(1,
160148
createExpectedPointcuts([
161149
createSemiUniqueName(CurrentTypePointcut, 0)
162150
]),
@@ -172,7 +160,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
172160
void testTwoPointcuts() {
173161
createDsls('currentType().accept { }\nfields().accept { }')
174162

175-
assertDSLStore(1,
163+
runTest(1,
176164
createExpectedPointcuts([
177165
createSemiUniqueName(CurrentTypePointcut, 0),
178166
createSemiUniqueName(FindFieldPointcut, 0)
@@ -190,7 +178,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
190178
void testTwoPointcutsTwoFiles() {
191179
createDsls('currentType().accept { }', 'fields().accept { }')
192180

193-
assertDSLStore(2,
181+
runTest(2,
194182
createExpectedPointcuts([
195183
createSemiUniqueName(CurrentTypePointcut, 0)
196184
], [
@@ -209,7 +197,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
209197
void testTwoFilesEachWith2Pointcuts() {
210198
createDsls('currentType().accept { }\nfields().accept { }', 'currentType().accept { }\nfields().accept { }')
211199

212-
assertDSLStore(2,
200+
runTest(2,
213201
createExpectedPointcuts([
214202
createSemiUniqueName(CurrentTypePointcut, 0),
215203
createSemiUniqueName(FindFieldPointcut, 0)
@@ -233,7 +221,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
233221
createDsls('def a = currentType()\ndef b = fields()\na.accept { }\na.accept { }\nb.accept { }\nb.accept { }',
234222
'def a = currentType()\ndef b = fields()\na.accept { }\na.accept { }\nb.accept { }\nb.accept { }')
235223

236-
assertDSLStore(2,
224+
runTest(2,
237225
createExpectedPointcuts([
238226
createSemiUniqueName(CurrentTypePointcut, 0),
239227
createSemiUniqueName(FindFieldPointcut, 0)
@@ -259,7 +247,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
259247
'def a = currentType()\na.accept { }\na.accept { }\na.accept { }\na.accept { }\na.accept { }',
260248
'') // not in store
261249

262-
assertDSLStore(3,
250+
runTest(3,
263251
createExpectedPointcuts([
264252
createSemiUniqueName(CurrentTypePointcut, 0),
265253
createSemiUniqueName(FindFieldPointcut, 0)
@@ -284,11 +272,11 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
284272

285273
@Test
286274
void testAddAndRemove() {
287-
assertDSLStore(0, [:], [:])
275+
runTest(0, [:], [:])
288276

289277
// add one
290278
createDsls('currentType().accept { }')
291-
assertDSLStore(1,
279+
runTest(1,
292280
createExpectedPointcuts([
293281
createSemiUniqueName(CurrentTypePointcut, 0)
294282
]),
@@ -302,7 +290,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
302290
// add another
303291
createDsls('currentType().accept { }')
304292

305-
assertDSLStore(2,
293+
runTest(2,
306294
createExpectedPointcuts([
307295
createSemiUniqueName(CurrentTypePointcut, 0)
308296
], [
@@ -318,7 +306,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
318306

319307
// remove second
320308
deleteDslFile(1)
321-
assertDSLStore(1,
309+
runTest(1,
322310
createExpectedPointcuts([
323311
createSemiUniqueName(CurrentTypePointcut, 0)
324312
]),
@@ -331,13 +319,13 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
331319

332320
// remove first
333321
deleteDslFile(0)
334-
assertDSLStore(0, [:], [:])
322+
runTest(0, [:], [:])
335323
}
336324

337325
@Test
338326
void testChange() {
339327
createDsls('currentType().accept { }')
340-
assertDSLStore(1,
328+
runTest(1,
341329
createExpectedPointcuts([
342330
createSemiUniqueName(CurrentTypePointcut, 0)
343331
]),
@@ -351,7 +339,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
351339
// overwrite the original
352340
deleteDslFile(0); index = 0
353341
createDsls('currentType().accept { }\nfields().accept { }')
354-
assertDSLStore(1,
342+
runTest(1,
355343
createExpectedPointcuts([
356344
createSemiUniqueName(CurrentTypePointcut, 0),
357345
createSemiUniqueName(FindFieldPointcut, 0)
@@ -368,7 +356,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
368356
@Test
369357
void testDisabledOfFile() {
370358
createDsls('currentType().accept { }', 'fields().accept { }')
371-
assertDSLStore(2,
359+
runTest(2,
372360
createExpectedPointcuts([
373361
createSemiUniqueName(CurrentTypePointcut, 0)
374362
], [
@@ -385,7 +373,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
385373
// disable script
386374
setDisabledScripts(DSLDStore.toUniqueString(project.getFile('dsl0.dsld')))
387375

388-
assertDSLStore(2,
376+
runTest(2,
389377
createExpectedPointcuts([], [
390378
createSemiUniqueName(FindFieldPointcut, 1)
391379
]),
@@ -402,7 +390,7 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
402390
deleteDslFile(0); deleteDslFile(1); index = 0
403391
createDsls('currentType().accept { }', 'fields().accept { }')
404392

405-
assertDSLStore(2,
393+
runTest(2,
406394
createExpectedPointcuts([
407395
createSemiUniqueName(CurrentTypePointcut, 0)
408396
], [
@@ -428,21 +416,21 @@ final class DSLStoreTests extends DSLInferencingTestSuite {
428416
IStorage storage = javaProject.getPackageFragmentRoot(jarPath).getPackageFragment('dsld').nonJavaResources[0]
429417
String dsld = DSLDStore.toUniqueString(storage), pcut = createSemiUniqueName(CurrentTypePointcut, storage)
430418

431-
assertDSLStore(1, [(dsld): [pcut]], [(pcut): 1])
419+
runTest(1, [(dsld): [pcut]], [(pcut): 1])
432420

433421
// disable script
434422
setDisabledScripts(dsld)
435-
assertDSLStore(1, [:], [:])
423+
runTest(1, [:], [:])
436424

437425
// re-enable
438426
setDisabledScripts()
439-
assertDSLStore(1, [(dsld): [pcut]], [(pcut): 1])
427+
runTest(1, [(dsld): [pcut]], [(pcut): 1])
440428

441429
// remove from classpath
442430
GroovyRuntime.removeClasspathEntry(javaProject, cpEntry)
443431
project.refreshLocal(IResource.DEPTH_INFINITE, null)
444432
buildProject()
445433

446-
assertDSLStore(0, [:], [:])
434+
runTest(0, [:], [:])
447435
}
448436
}

0 commit comments

Comments
 (0)