GROOVY-7994: Anonymous inner class believes protected method in parent's superclass returns Object (required for port to branch: switch off on test for now)
Project: http://git-wip-us.apache.org/repos/asf/groovy/repo Commit: http://git-wip-us.apache.org/repos/asf/groovy/commit/8fbb4623 Tree: http://git-wip-us.apache.org/repos/asf/groovy/tree/8fbb4623 Diff: http://git-wip-us.apache.org/repos/asf/groovy/diff/8fbb4623 Branch: refs/heads/GROOVY_2_4_X Commit: 8fbb4623cc04442ff3bd92c2b9b009847e15ee6a Parents: 9c860f7 Author: paulk <[email protected]> Authored: Thu Nov 17 02:21:51 2016 +1000 Committer: paulk <[email protected]> Committed: Thu Nov 17 02:21:51 2016 +1000 ---------------------------------------------------------------------- src/test/groovy/bugs/Groovy7994Bug.groovy | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/groovy/blob/8fbb4623/src/test/groovy/bugs/Groovy7994Bug.groovy ---------------------------------------------------------------------- diff --git a/src/test/groovy/bugs/Groovy7994Bug.groovy b/src/test/groovy/bugs/Groovy7994Bug.groovy index 4f4c84a..e5d3b06 100644 --- a/src/test/groovy/bugs/Groovy7994Bug.groovy +++ b/src/test/groovy/bugs/Groovy7994Bug.groovy @@ -38,7 +38,8 @@ class Groovy7994Bug extends GroovyTestCase { String aicGo() { new Other(name).text + new Other(Outer.this.name).text + new Other(getName()).text } String staticMethodGo() { Other.foo(name) + Other.foo(Outer.this.name) + Other.foo(getName()) } String instanceMethodGo() { new Other().bar(name) + new Other().bar(getName()) } - String methodWithClosureGo() { new Other().with { bar(name) + bar(getName()) } } + // uncomment below if GROOVY-7990 is ported to GROOVY_2_4_X + //String methodWithClosureGo() { new Other().with { bar(name) + bar(getName()) } } String propGo() { new Other(prop).text + new Other(getProp()).text } } } @@ -62,7 +63,8 @@ class Groovy7994Bug extends GroovyTestCase { assert o.makeAIC().propGo() == 'String:wally|String:wally|' assert o.makeAIC().staticMethodGo() == 'String|sally:String|sally:String|sally:' assert o.makeAIC().instanceMethodGo() == 'String|sally:String|sally:' - assert o.makeAIC().methodWithClosureGo() == 'String|sally:String|sally:' + // uncomment below if GROOVY-7990 is ported to GROOVY_2_4_X + //assert o.makeAIC().methodWithClosureGo() == 'String|sally:String|sally:' assert new Outer.Inner(o).innerGo() == 'String:sally|String:sally|String:sally|' ''' }
