|
Groovy example source code file (AmbiguousListOrMethodTest.groovy)
The Groovy AmbiguousListOrMethodTest.groovy source code
package groovy.bugs
class AmbiguousListOrMethodTest extends GroovyTestCase {
void testLocalVariableVersion() {
def foo = [3, 2, 3]
def val = foo [0]
println val
assert val == 3
}
void testUndefinedPropertyVersion() {
try {
def val = this.foo [0]
println val
}
catch (MissingPropertyException e) {
println "Worked! Caught missing property $e"
}
}
void testMethodCallVersion() {
def val = foo([0])
println val
assert val == 1
}
def foo(int val) {
println "Calling foo method with a int param of val"
println val
return null
}
def foo(List myList) {
println "Calling foo method with a list param of $myList"
return myList.size()
}
void testCanFindCorrectMethod() {
def e = new Example()
assert e["", ""] == 2
assert e[""] == 1
}
}
class Example {
def getAt(String a, String b) {return 2}
def getAt(String a) {return 1}
}
Other Groovy examples (source code examples)Here is a short list of links related to this Groovy AmbiguousListOrMethodTest.groovy source code file: |
Other websites by Alvin Alexander:
Life/living in Alaska (OneMansAlaska.com)
How I Sold My Business (HowISoldMyBusiness.com)
Copyright 1998-2011 Alvin Alexander, devdaily.com
All Rights Reserved.