/** * @test */ public function getOutput() { $aimeos = new \Aimeos\Shop\Base\Aimeos(); $this->inject($this->object, 'aimeos', $aimeos); $context = $this->getMockBuilder('\\Aimeos\\Shop\\Base\\Context')->setMethods(array('get'))->disableOriginalConstructor()->getMock(); $ctx = new \Aimeos\MShop\Context\Item\Standard(); $ctx->setConfig(new \Aimeos\MW\Config\PHPArray()); $ctx->setLocale(new \Aimeos\MShop\Locale\Item\Standard(array('langid' => 'de'))); $context->expects($this->once())->method('get')->will($this->returnValue($ctx)); $this->inject($this->object, 'context', $context); $viewContainer = $this->getMockBuilder('\\Aimeos\\Shop\\Base\\View')->setMethods(array('create'))->disableOriginalConstructor()->getMock(); $mwView = new \Aimeos\MW\View\Standard(); $viewContainer->expects($this->once())->method('create')->will($this->returnValue($mwView)); $this->inject($this->object, 'viewContainer', $viewContainer); $uriBuilder = $this->getMockBuilder('\\TYPO3\\Flow\\Mvc\\Routing\\UriBuilder')->disableOriginalConstructor()->getMock(); $this->inject($this->object, 'uriBuilder', $uriBuilder); $client = $this->getMockBuilder('\\Aimeos\\Client\\Html\\Catalog\\Lists\\Standard')->setMethods(array('getBody', 'getHeader', 'process'))->disableOriginalConstructor()->getMock(); $client->expects($this->once())->method('getBody')->will($this->returnValue('body')); $client->expects($this->once())->method('getHeader')->will($this->returnValue('header')); $client->expects($this->once())->method('process'); \Aimeos\Client\Html\Catalog\Lists\Factory::injectClient('\\Aimeos\\Client\\Html\\Catalog\\Lists\\Standard', $client); $this->view->expects($this->once())->method('assign')->with($this->equalTo('aimeos_component_header'), $this->equalTo('header')); $class = new \ReflectionClass('\\Aimeos\\Shop\\Controller\\AbstractController'); $method = $class->getMethod('getOutput'); $method->setAccessible(true); $result = $method->invokeArgs($this->object, array('catalog/lists')); $this->assertEquals('body', $result); }
/** * @test */ public function get() { $view = $this->getMockBuilder('\\Aimeos\\Shop\\Base\\View')->setMethods(array('create'))->disableOriginalConstructor()->getMock(); $mwView = new \Aimeos\MW\View\Standard(); $view->expects($this->once())->method('create')->will($this->returnValue($mwView)); $this->inject($this->object, 'view', $view); $context = $this->getMockBuilder('\\Aimeos\\Shop\\Base\\Context')->setMethods(array('get'))->disableOriginalConstructor()->getMock(); $ctx = new \Aimeos\MShop\Context\Item\Standard(); $ctx->setConfig(new \Aimeos\MW\Config\PHPArray()); $ctx->setLocale(new \Aimeos\MShop\Locale\Item\Standard(array('langid' => 'de'))); $context->expects($this->once())->method('get')->will($this->returnValue($ctx)); $this->inject($this->object, 'context', $context); $settings = array('flow' => array('cache' => array('name' => 'None')), 'page' => array()); $this->inject($this->object, 'settings', $settings); $request = $this->getMockBuilder('\\TYPO3\\Flow\\Mvc\\ActionRequest')->setMethods(array('getArguments'))->disableOriginalConstructor()->getMock(); $result = $this->object->getSections($request, 'catalog/list'); $this->assertInternalType('array', $result); $this->assertArrayHasKey('aibody', $result); $this->assertArrayHasKey('aiheader', $result); }