123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- <?php
- namespace PhpParser;
- class NodeDumperTest extends \PHPUnit_Framework_TestCase
- {
- private function canonicalize($string) {
- return str_replace("\r\n", "\n", $string);
- }
- /**
- * @dataProvider provideTestDump
- * @covers PhpParser\NodeDumper::dump
- */
- public function testDump($node, $dump) {
- $dumper = new NodeDumper;
- $this->assertSame($this->canonicalize($dump), $this->canonicalize($dumper->dump($node)));
- }
- public function provideTestDump() {
- return array(
- array(
- array(),
- 'array(
- )'
- ),
- array(
- array('Foo', 'Bar', 'Key' => 'FooBar'),
- 'array(
- 0: Foo
- 1: Bar
- Key: FooBar
- )'
- ),
- array(
- new Node\Name(array('Hallo', 'World')),
- 'Name(
- parts: array(
- 0: Hallo
- 1: World
- )
- )'
- ),
- array(
- new Node\Expr\Array_(array(
- new Node\Expr\ArrayItem(new Node\Scalar\String_('Foo'))
- )),
- 'Expr_Array(
- items: array(
- 0: Expr_ArrayItem(
- key: null
- value: Scalar_String(
- value: Foo
- )
- byRef: false
- )
- )
- )'
- ),
- );
- }
- /**
- * @expectedException \InvalidArgumentException
- * @expectedExceptionMessage Can only dump nodes and arrays.
- */
- public function testError() {
- $dumper = new NodeDumper;
- $dumper->dump(new \stdClass);
- }
- }
|