public function testSave() { $manager = \Aimeos\MShop\Factory::createManager($this->context, 'product'); $item = $manager->findItem('CNC'); $item->setCode('jqadm-test-image'); $item->setId(null); $manager->saveItem($item); $param = array('image' => array('product.lists.id' => array(''), 'media.languageid' => array('de'), 'media.label' => array('test'))); $helper = new \Aimeos\MW\View\Helper\Param\Standard($this->view, $param); $this->view->addHelper('param', $helper); $files = array('image' => array('files' => array(array('tmp_name' => '', 'name' => '', 'type' => '', 'size' => 0, 'error' => 0)))); $helper = $this->getMockBuilder('\\Aimeos\\MW\\View\\Helper\\Request\\Standard')->setConstructorArgs(array($this->view, '', '', null, $files))->setMethods(array('checkUploadedFile'))->getMock(); $this->view->addHelper('request', $helper); $this->view->item = $item; $name = 'AdminJQAdmProductImageSave'; $this->context->getConfig()->set('controller/common/media/name', $name); $cntlStub = $this->getMockBuilder('\\Aimeos\\Controller\\Common\\Media\\Standard')->setConstructorArgs(array($this->context))->setMethods(array('add'))->getMock(); \Aimeos\Controller\Common\Media\Factory::injectController('\\Aimeos\\Controller\\Common\\Media\\' . $name, $cntlStub); $cntlStub->expects($this->once())->method('add'); $mediaStub = $this->getMockBuilder('\\Aimeos\\MShop\\Media\\Manager\\Standard')->setConstructorArgs(array($this->context))->setMethods(array('saveItem'))->getMock(); \Aimeos\MShop\Factory::injectManager($this->context, 'media', $mediaStub); $mediaStub->expects($this->once())->method('saveItem'); \Aimeos\MShop\Factory::setCache(true); $result = $this->object->save(); \Aimeos\MShop\Factory::setCache(false); $item = $manager->getItem($item->getId(), array('media')); $manager->deleteItem($item->getId()); $this->assertNull($this->view->get('errors')); $this->assertNull($result); $this->assertEquals(1, count($item->getListItems('media'))); }
public function testUploadItem() { $file = array('name' => 'test-binary.bin', 'tmp_name' => 'test.bin', 'error' => UPLOAD_ERR_OK, 'type' => 'application/binary', 'size' => 1024); $object = $this->getMockBuilder('\\Aimeos\\Controller\\ExtJS\\Media\\Standard')->setMethods(array('getUploadedFile'))->setConstructorArgs(array($this->context))->getMock(); $name = 'ControllerCommonMediaUploadItem'; $this->context->getConfig()->set('controller/common/media/name', $name); $stub = $this->getMockBuilder('\\Aimeos\\Controller\\Common\\Media\\Standard')->setMethods(array('add'))->setConstructorArgs(array($this->context))->getMock(); \Aimeos\Controller\Common\Media\Factory::injectController('\\Aimeos\\Controller\\Common\\Media\\' . $name, $stub); $stub->expects($this->once())->method('add'); $object->expects($this->once())->method('getUploadedFile')->will($this->returnValue($file)); $media = $object->uploadItem((object) array('site' => 'unittest', 'domain' => 'product')); \Aimeos\Controller\Common\Media\Factory::injectController('\\Aimeos\\Controller\\Common\\Media\\' . $name, null); $this->assertInstanceOf('\\stdClass', $media); }
public function testUploadItem() { $file = $this->getMock('\\Psr\\Http\\Message\\UploadedFileInterface'); $object = $this->getMockBuilder('\\Aimeos\\Controller\\ExtJS\\Media\\Standard')->setMethods(array('getUploadedFile'))->setConstructorArgs(array($this->context))->getMock(); $object->expects($this->once())->method('getUploadedFile')->will($this->returnValue($file)); $name = 'ControllerCommonMediaUploadItem'; $this->context->getConfig()->set('controller/common/media/name', $name); $stub = $this->getMockBuilder('\\Aimeos\\Controller\\Common\\Media\\Standard')->setMethods(array('add'))->setConstructorArgs(array($this->context))->getMock(); $stub->expects($this->once())->method('add'); \Aimeos\Controller\Common\Media\Factory::injectController('\\Aimeos\\Controller\\Common\\Media\\' . $name, $stub); $media = $object->uploadItem((object) array('site' => 'unittest', 'domain' => 'product')); \Aimeos\Controller\Common\Media\Factory::injectController('\\Aimeos\\Controller\\Common\\Media\\' . $name, null); $this->assertInstanceOf('\\stdClass', $media); }