protected function setUp() { Mage_Core_Utility_Theme::registerDesignMock(); Mage::getDesign()->setDefaultDesignTheme(); $this->_mail = $this->getMock('Zend_Mail', array('send', 'addTo', 'addBcc', 'setReturnPath', 'setReplyTo'), array('utf-8')); $this->_model = $this->getMockBuilder('Mage_Core_Model_Email_Template')->setMethods(array('_getMail'))->setConstructorArgs(array($this->getMockBuilder('Mage_Core_Model_Event_Manager')->disableOriginalConstructor()->getMock(), $this->getMockBuilder('Mage_Core_Model_Cache')->disableOriginalConstructor()->getMock(), Mage::getObjectManager()->create('Magento_Filesystem')))->getMock(); $this->_model->expects($this->any())->method('_getMail')->will($this->returnCallback(array($this, 'getMail'))); $this->_model->setSenderName('sender')->setSenderEmail('*****@*****.**')->setTemplateSubject('Subject'); }
/** * @magentoAppIsolation enabled */ public function testLoadCache() { Mage::app()->getCacheInstance()->allowUse('layout'); $layoutHandle = 'layout_test_handle'; $expectedTextThemeOne = 'Text declared in the frontend/test/test_theme'; $expectedTextThemeTwo = 'Text declared in the frontend/test/cache_test_theme'; $model = Mage::getModel('Mage_Core_Model_Layout_Merge', array('arguments' => array('area' => 'frontend', 'themeId' => $this->_themeUtility->getThemeByParams('test/test_theme', 'frontend')->getId()))); $model->load($layoutHandle); $this->assertContains($expectedTextThemeOne, $model->asString()); $this->assertNotContains($expectedTextThemeTwo, $model->asString()); $model = Mage::getModel('Mage_Core_Model_Layout_Merge', array('arguments' => array('area' => 'frontend', 'themeId' => $this->_themeUtility->getThemeByParams('test/cache_test_theme', 'frontend')->getId()))); $model->load($layoutHandle); $this->assertContains($expectedTextThemeTwo, $model->asString()); $this->assertNotContains($expectedTextThemeOne, $model->asString()); }
/** * Register mocked package model in di * * @static */ public static function registerDesignMock() { /** @var $packageMock Mage_Core_Model_Design_Package|PHPUnit_Framework_MockObject_MockObject */ $packageMock = PHPUnit_Framework_MockObject_Generator::getMock('Mage_Core_Model_Design_Package', array('getConfigurationDesignTheme'), array(self::_createFilesystem())); $package = Mage::getModel('Mage_Core_Model_Design_Package', array('filesystem' => self::_createFilesystem())); $callBackFixture = function ($area, $params) use($package, $packageMock) { $area = $area ? $area : $packageMock->getArea(); if (isset($params['useId']) && $params['useId'] === false) { return $package->getConfigurationDesignTheme($area, $params); } else { $params['useId'] = false; /** @var $package Mage_Core_Model_Design_Package */ $configPath = $package->getConfigurationDesignTheme($area, $params); return Mage_Core_Utility_Theme::getTheme($configPath, $area)->getId(); } }; $packageMock->expects(new PHPUnit_Framework_MockObject_Matcher_AnyInvokedCount())->method('getConfigurationDesignTheme')->will(new PHPUnit_Framework_MockObject_Stub_ReturnCallback($callBackFixture)); /** @var $objectManager Magento_Test_ObjectManager */ $objectManager = Mage::getObjectManager(); $objectManager->addSharedInstance($packageMock, 'Mage_Core_Model_Design_Package'); }
/** * Initialize an already installed Magento application */ public function initialize() { Mage::setIsDeveloperMode($this->_isDeveloperMode); Mage_Core_Utility_Theme::registerDesignMock(); Mage::$headersSentThrowsException = false; Mage::app('', 'store', $this->_options); }