/** * Reset Mage god class after each test * * @param Test $test * @param float $time */ public function endTest(Test $test, $time) { MageFacade::reset(); }
<?php /** * Optional add magento lib classes * @var \Composer\Autoload\ClassLoader $loader */ $loader = (require '../../vendor/autoload.php'); $loader->add('', '../../vendor/firegento/magento/lib'); use JSiefer\ClassMocker\ClassMocker; use JSiefer\MageMock\Mage\MageFacade; use JSiefer\MageMock\MagentoMock; $magentoFramework = new MagentoMock(); $classMocker = new ClassMocker(); $classMocker->setGenerationDir('./var/generation'); $classMocker->mockFramework($magentoFramework); $classMocker->enable(); $nameResolver = new \JSiefer\MageMock\ClassNameResolver(); $nameResolver->registerNamespace('sample', 'Magemock_Sample'); MageFacade::setNameResolver($nameResolver);
/** * Reset Mage god class * * @return void */ public function setUp() { MageFacade::reset(); }
/** * Retrieve current mage super class mock * * This instance can be treated as mock. * * @return \Mage|BaseMock */ protected function getMage() { return MageFacade::getInstance(); }
/** * Retrieve object of resource model * * @see \Mage::getResourceModel() * * @param string $modelName * @param array $arguments * * @return mixed|BaseMock */ public function getResourceModel($modelName, $arguments = array()) { $className = MageFacade::getNameResolver()->resolve(ClassNameResolverInterface::TYPE_RESOURCE, $modelName); // check for model factory closure functions if (isset($this->modelFactories[$className])) { $factory = $this->modelFactories[$className]; $instance = $factory($arguments); } else { $instance = new $className($arguments); } return $instance; }