public function testImportFile() { $codeMock = $this->getMockBuilder('MShop_Coupon_Manager_Code_Default')->setConstructorArgs(array($this->_context))->setMethods(array('saveItem'))->getMock(); $codeMock->expects($this->exactly(3))->method('saveItem'); $mock = $this->getMockBuilder('MShop_Coupon_Manager_Default')->setConstructorArgs(array($this->_context))->setMethods(array('getSubManager'))->getMock(); $mock->expects($this->once())->method('getSubManager')->will($this->returnValue($codeMock)); $name = 'ControllerExtJSCouponCodeDefaultRun'; $this->_context->getConfig()->set('classes/coupon/manager/name', $name); MShop_Coupon_Manager_Factory::injectManager('MShop_Coupon_Manager_' . $name, $mock); $testfiledir = __DIR__ . DIRECTORY_SEPARATOR . 'testfiles' . DIRECTORY_SEPARATOR; exec(sprintf('cp -r %1$s %2$s', escapeshellarg($testfiledir) . '*', escapeshellarg($this->_testdir))); $params = new stdClass(); $params->site = $this->_context->getLocale()->getSite()->getCode(); $params->items = $this->_testdir . DIRECTORY_SEPARATOR . 'coupon.zip'; $params->couponid = '-1'; $this->_object->importFile($params); }