Go\Aop\Framework\DynamicClosureSplatMethodInvocationTest::testRecursionWorks PHP Method

testRecursionWorks() public method

public testRecursionWorks ( )
    public function testRecursionWorks()
    {
        $child = $this->getMock(self::FIRST_CLASS_NAME, array('recursion'));
        $invocation = new self::$invocationClass(self::FIRST_CLASS_NAME, 'recursion', []);
        $child->expects($this->exactly(5))->method('recursion')->will($this->returnCallback(function ($value, $level) use($child, $invocation) {
            return $invocation($child, array($value, $level));
        }));
        $this->assertEquals(5, $child->recursion(5, 0));
        $this->assertEquals(20, $child->recursion(5, 3));
    }