minor fix-ups
diff --git a/src/test/groovy/bugs/Groovy8361.groovy b/src/test/groovy/bugs/Groovy8361.groovy
index c3bee1d..35a3737 100644
--- a/src/test/groovy/bugs/Groovy8361.groovy
+++ b/src/test/groovy/bugs/Groovy8361.groovy
@@ -33,11 +33,11 @@
targetDirectory: File.createTempDir(),
jointCompilationOptions: [memStub: true]
)
-
def parentDir = File.createTempDir()
- new File(parentDir, 'p').mkdir()
- new File(parentDir, 'q').mkdir()
try {
+ new File(parentDir, 'p').mkdir()
+ new File(parentDir, 'q').mkdir()
+
def a = new File(parentDir, 'p/A.java')
a.write '''
package p;
@@ -65,22 +65,21 @@
}
assert err =~ /unable to resolve class AA/
} finally {
- parentDir.deleteDir()
config.targetDirectory.deleteDir()
+ parentDir.deleteDir()
}
}
@Test
void testAliasedImportNotUsed2() {
def config = new CompilerConfiguration(
- targetDirectory: File.createTempDir(),
- jointCompilationOptions: [memStub: true]
+ targetDirectory: File.createTempDir()
)
-
def parentDir = File.createTempDir()
- new File(parentDir, 'p').mkdir()
- new File(parentDir, 'q').mkdir()
try {
+ new File(parentDir, 'p').mkdir()
+ new File(parentDir, 'q').mkdir()
+
def a = new File(parentDir, 'p/A.groovy')
a.write '''
package p
@@ -108,8 +107,8 @@
}
assert err =~ /unable to resolve class AA/
} finally {
- parentDir.deleteDir()
config.targetDirectory.deleteDir()
+ parentDir.deleteDir()
}
}
}
diff --git a/src/test/groovy/bugs/Groovy9607.groovy b/src/test/groovy/bugs/Groovy9607.groovy
index 7f10357..c19cb78 100644
--- a/src/test/groovy/bugs/Groovy9607.groovy
+++ b/src/test/groovy/bugs/Groovy9607.groovy
@@ -35,7 +35,7 @@
def name = prop.name
help(new Runnable() {
void run() {
- assert item[name] == 'bar' // STC throws GBE if 'name' to infers as Object
+ assert item[name] == 'bar' // STC throws GBE if 'name' infers as Object
}
})
}
@@ -54,7 +54,7 @@
name = prop.name
help(new Runnable() {
void run() {
- assert item[name] == 'bar' // STC throws GBE if 'name' to infers as Object
+ assert item[name] == 'bar' // STC throws GBE if 'name' infers as Object
}
})
}
diff --git a/src/test/groovy/transform/stc/TypeInferenceSTCTest.groovy b/src/test/groovy/transform/stc/TypeInferenceSTCTest.groovy
index dcee926..18fb268 100644
--- a/src/test/groovy/transform/stc/TypeInferenceSTCTest.groovy
+++ b/src/test/groovy/transform/stc/TypeInferenceSTCTest.groovy
@@ -49,35 +49,32 @@
'''
}
- void testAnnotationOnSingleMethod() {
- GroovyShell shell = new GroovyShell()
- shell.evaluate '''
- // calling a method which has got some dynamic stuff in it
+ void testDynamicMethodWithinTypeCheckedClass() {
+ assertScript '''
+ import groovy.transform.*
- import groovy.transform.TypeChecked
- import groovy.xml.MarkupBuilder
-
- class Greeter {
- @TypeChecked
- String greeting(String name) {
- generateMarkup(name.toUpperCase())
+ class C {
+ String m(String s) {
+ generateMarkup(s.toUpperCase())
}
- // MarkupBuilder is dynamic so we won't do typechecking here
- String generateMarkup(String name) {
+ // MarkupBuilder is dynamic so skip type-checking
+ @TypeChecked(TypeCheckingMode.SKIP)
+ String generateMarkup(String s) {
def sw = new StringWriter()
- def mkp = new MarkupBuilder()
- mkp.html {
+ def mb = new groovy.xml.MarkupBuilder(sw)
+ mb.html {
body {
- div name
+ div s
}
}
- sw
+ sw.toString()
}
}
- def g = new Greeter()
- g.greeting("Guillaume")
+ def c = new C()
+ def xml = c.m('x')
+ // TODO: check XML
'''
}