assertEquals($body, $node->getNode('body')); $this->assertEquals($arguments, $node->getNode('arguments')); $this->assertEquals('foo', $node->getAttribute('name')); } public function getTests() { $body = new TextNode('foo', 1); $arguments = new Node([ 'foo' => new ConstantExpression(null, 1), 'bar' => new ConstantExpression('Foo', 1), ], [], 1); $node = new MacroNode('foo', $body, $arguments, 1); return [ [$node, <<macros; \$context = \$this->env->mergeGlobals([ "foo" => \$__foo__, "bar" => \$__bar__, "varargs" => \$__varargs__, ]); \$blocks = []; ob_start(function () { return ''; }); try { echo "foo"; return ('' === \$tmp = ob_get_contents()) ? '' : new Markup(\$tmp, \$this->env->getCharset()); } finally { ob_end_clean(); } } EOF ], ]; } }