/** * Tests that the default listener implementation delegates a method call to * the startVisitNode() and endVisitNode() methods. * * @return void */ public function testListenerCallsStartNodeEndNodeForMethod() { $method = $this->createMethodFixture(__FUNCTION__); $method->setSourceFile(new PHP_Depend_Code_File(__FILE__)); $listener = new PHP_Depend_Visitor_TestListener(); $visitor = new PHP_Depend_Visitor_DefaultVisitorDummy(); $visitor->addVisitListener($listener); $method->accept($visitor); $actual = $listener->nodes; $expected = array(__FUNCTION__ . '#start' => true, __FUNCTION__ . '#end' => true); $this->assertEquals($expected, $actual); }
/** * Tests that the default listener implementation delegates a method call to * the startVisitNode() and endVisitNode() methods. * * @return void * @covers PHP_Depend_Visitor_AbstractListener * @group pdepend * @group pdepend::visitor * @group unittest */ public function testListenerCallsStartNodeEndNodeForMethod() { include_once 'PHP/Depend/Code/Method.php'; $method = $this->getMock('PHP_Depend_Code_Method', array('getName', 'getSourceFile', 'getParameters'), array(__FUNCTION__)); $method->expects($this->atLeastOnce())->method('getName')->will($this->returnValue(__FUNCTION__)); $method->expects($this->atLeastOnce())->method('getParameters')->will($this->returnValue(array())); $listener = new PHP_Depend_Visitor_TestListener(); $visitor = new PHP_Depend_Visitor_DefaultVisitorDummy(); $visitor->addVisitListener($listener); $method->accept($visitor); $actual = $listener->nodes; $expected = array(__FUNCTION__ . '#start' => true, __FUNCTION__ . '#end' => true); $this->assertEquals($expected, $actual); }
/** * Tests that the default visitor implementation emits the expected signals * for a closure. * * @return void */ public function testClosureHandlerEmitExpectedListenerSignal() { include_once 'PHP/Depend/Code/Closure.php'; $listener = $this->getMock('PHP_Depend_Visitor_ListenerI'); $listener->expects($this->at(0))->method('startVisitClosure'); $listener->expects($this->at(1))->method('endVisitClosure'); $closure = $this->getMock('PHP_Depend_Code_Closure'); $visitor = new PHP_Depend_Visitor_DefaultVisitorDummy(); $visitor->addVisitListener($listener); $visitor->visitClosure($closure); }