PhpParser\NodeAbstractTest::testIteration PHP Method

testIteration() public method

public testIteration ( array $attributes, phpparser\Node $node )
$attributes array
$node phpparser\Node
    public function testIteration(array $attributes, Node $node)
    {
        // Iteration is simple object iteration over properties,
        // not over subnodes
        $i = 0;
        foreach ($node as $key => $value) {
            if ($i === 0) {
                $this->assertSame('subNode1', $key);
                $this->assertSame('value1', $value);
            } else {
                if ($i === 1) {
                    $this->assertSame('subNode2', $key);
                    $this->assertSame('value2', $value);
                } else {
                    if ($i === 2) {
                        $this->assertSame('notSubNode', $key);
                        $this->assertSame('value3', $value);
                    } else {
                        throw new \Exception();
                    }
                }
            }
            $i++;
        }
        $this->assertSame(3, $i);
    }