| |
| |
| /** |
| * Mixes variables, closures and method calls in markup |
| * |
| * @version $Revision$ |
| */ |
| class MarkupAndMethodBug extends GroovyTestCase { |
| |
| void testBug() { |
| tree = createTree() |
| |
| name = tree.person[0]['@name'] |
| assert name == 'James' |
| } |
| |
| protected createTree() { |
| builder = NodeBuilder.newInstance() |
| |
| root = builder.people() { |
| person(name:getName()) { |
| /* |
| location(name:'London') |
| projects { |
| project(name:'geronimo') |
| } |
| } |
| person(name:'Bob') { |
| location(name:'Atlanta') |
| projects { |
| project(name:'drools') |
| } |
| */ |
| } |
| } |
| |
| assert root != null |
| |
| return root |
| } |
| |
| protected getName() { |
| "James" |
| } |
| } |