...
| Code Block |
|---|
def ant = new AntBuilder()
def taskContainer = ant.parallel(){ // "Parallel" serves as a sample TaskContainer
ant.echo() // "Echo" without message to keep tests silent
}
// not very elegant, but the easiest way to get the ant internals...
assert taskContainer.dump() =~ /nestedTasks=\[org.apache.tools.ant.taskdefs.Echo@\w+\]/
|
Compiling and running a Java file:
| Code Block |
|---|
def ant = new AntBuilder()
ant.echo(file:'Temp.java', '''
class Temp { public static void main(String[] args) { System.out.println("Hello"); }}
''')
ant.javac(srcdir:'.', includes:'Temp.java', fork:'true')
ant.java(classpath:'.', classname:'Temp', fork:'true')
ant.echo('Done')
// =>
// [javac] Compiling 1 source file
// [java] Hello
// [echo] Done
|
Sniffing around ...
| Code Block |
|---|
def ant = new AntBuilder()
SpoofTaskContainer.spoof.length = 0
def PATH = 'task.path'
ant.path(id:PATH){ant.pathelement(location:'classes')}
['spoofcontainer':'SpoofTaskContainer', 'spoof':'SpoofTask'].each{ pair ->
ant.taskdef(name:pair.key, classname:'groovy.util.'+pair.value, classpathref:PATH)
}
ant.spoofcontainer(){
ant.spoof()
}
expectedSpoof =
"SpoofTaskContainer ctor\n"+
"SpoofTask ctor\n"+
"in addTask\n"+
"begin SpoofTaskContainer execute\n"+
"begin SpoofTask execute\n"+
"end SpoofTask execute\n"+
"end SpoofTaskContainer execute\n"
assertEquals expectedSpoof, SpoofTaskContainer.spoof.toString()
|