/** * @covers de\detert\sebastian\slimline\Controller::setResponse * @covers de\detert\sebastian\slimline\Controller::getRewriteRules * @covers de\detert\sebastian\slimline\Controller::run */ public function testThatControllerActionIsCalled() { $pool = new \de\detert\sebastian\slimline\Pool(); $request = new \de\detert\sebastian\slimline\Request(); $response = new \de\detert\sebastian\slimline\Response(); $response2 = new \de\detert\sebastian\slimline\Response(); $response3 = new \de\detert\sebastian\slimline\Response(); $factory = new FactoryMock(new Factory()); $factory->setMock('de\\detert\\sebastian\\slimline\\Pool', $pool); $factory->setMock('de\\detert\\sebastian\\slimline\\Request', $request); $factory->setMock('de\\detert\\sebastian\\slimline\\Response', $response, 1); $factory->setMock('de\\detert\\sebastian\\slimline\\Response', $response2, 2); $factory->setMock('de\\detert\\sebastian\\slimline\\Response', $response3, 3); $dummy = $this->getMock('\\de\\detert\\sebastian\\slimline\\Tests\\Helper\\Dummy', array('run'), array($pool)); $dummy->expects($this->at(0))->method('run')->will($this->returnValue($response2)); $dummy->expects($this->at(1))->method('run')->will($this->returnValue($response3)); $factory->setMock('de\\detert\\sebastian\\slimline\\Tests\\Helper\\Dummy', $dummy, 1); $factory->setMock('de\\detert\\sebastian\\slimline\\Tests\\Helper\\Dummy', $dummy, 2); $config = new Config(); $config->requestMap = array('/' => array('callbacks' => array('dummy' => array('de\\detert\\sebastian\\slimline\\Tests\\Helper\\Dummy', 'run'), 'dummy2' => array('de\\detert\\sebastian\\slimline\\Tests\\Helper\\Dummy', 'run')), 'render' => array('template' => array('empty.php'), 'call' => array('de\\detert\\sebastian\\slimline\\Render_Plain', 'render')))); $controller = $this->getNewController($config, $factory); $controller->run(); }
/** * @covers de\detert\sebastian\slimline\Tests\Helper\Factory::create * @covers de\detert\sebastian\slimline\Tests\Helper\Factory::getNumOfCreateCalls */ public function testThatFactoryHandlesMultipleMocks() { $factory = new Factory(); $this->assertEquals(0, $factory->getNumOfCreateCalls('dummy')); $dummy = new Dummy(new Pool()); $factory->setMock('dummy', $dummy); $this->assertEquals(0, $factory->getNumOfCreateCalls('dummy')); $mock = $this->getMock('\\de\\detert\\sebastian\\slimline\\Tests\\Helper\\Dummy', array(), array(new Pool())); $factory->setMock('mock', $mock); $this->assertEquals(0, $factory->getNumOfCreateCalls('mock')); $actual = $factory->create('dummy'); $this->assertTrue($dummy === $actual); $this->assertEquals(1, $factory->getNumOfCreateCalls('dummy')); $this->assertEquals(0, $factory->getNumOfCreateCalls('mock')); $actual = $factory->create('mock'); $this->assertTrue($mock === $actual); $this->assertEquals(1, $factory->getNumOfCreateCalls('dummy')); $this->assertEquals(1, $factory->getNumOfCreateCalls('mock')); $this->assertEquals(0, $factory->getNumOfCreateCalls(get_class($this))); $factory->create(get_class($this)); $this->assertEquals(1, $factory->getNumOfCreateCalls(get_class($this))); $this->assertEquals(1, $factory->getNumOfCreateCalls('dummy')); $this->assertEquals(1, $factory->getNumOfCreateCalls('mock')); }