示例#1
0
 public function testGetLayoutFromFixture()
 {
     $layoutUpdateFile = __DIR__ . '/_files/_layout_update.xml';
     $layout = $this->_utility->getLayoutFromFixture($layoutUpdateFile);
     $this->assertInstanceOf('Mage_Core_Model_Layout', $layout);
     $this->_assertLayoutUpdate($layout->getUpdate(), $layoutUpdateFile);
 }
示例#2
0
 protected function setUp()
 {
     $layoutUtility = new Mage_Core_Utility_Layout($this);
     $pageTypesFixture = __DIR__ . '/../../../Core/Model/Layout/_files/_handles.xml';
     $this->_block = new Mage_DesignEditor_Block_Toolbar_HandlesHierarchy();
     $this->_block->setLayout($layoutUtility->getLayoutFromFixture($pageTypesFixture));
 }
示例#3
0
 protected function setUp()
 {
     $layoutUtility = new Mage_Core_Utility_Layout($this);
     $pageTypesFixture = __DIR__ . '/../../../Core/Model/Layout/_files/_handles.xml';
     $this->_block = new Mage_DesignEditor_Block_Toolbar_Breadcrumbs(array('template' => 'toolbar/breadcrumbs.phtml'));
     $this->_block->setLayout($layoutUtility->getLayoutFromFixture($pageTypesFixture));
 }
示例#4
0
 protected function setUp()
 {
     $layoutUtility = new Mage_Core_Utility_Layout($this);
     $pageTypesFixture = __DIR__ . '/_files/_page_types_with_containers.xml';
     $this->_block = $this->getMock('Mage_Widget_Block_Adminhtml_Widget_Instance_Edit_Chooser_Layout', array('_getLayoutUpdate'), array(array('name' => 'page_type', 'id' => 'page_types_select', 'class' => 'page-types-select', 'title' => 'Page Types Select')));
     $this->_block->expects($this->any())->method('_getLayoutUpdate')->will($this->returnValue($layoutUtility->getLayoutUpdateFromFixture($pageTypesFixture)));
 }
示例#5
0
 public function testGetContainers()
 {
     $layoutUtility = new Mage_Core_Utility_Layout($this);
     $model = $layoutUtility->getLayoutUpdateFromFixture(__DIR__ . '/_files/_handles.xml');
     $model->addPageHandles(array('catalog_product_view_type_configurable'));
     $model->load();
     $expected = array('content' => 'Main Content Area', 'product.info.extrahint' => 'Product View Extra Hint', 'product.info.configurable.extra' => 'Configurable Product Extra Info');
     $this->assertSame($expected, $model->getContainers());
 }
示例#6
0
 /**
  * @expectedException Magento_Exception
  */
 public function testGetBlockUnscheduledException()
 {
     $utility = new Mage_Core_Utility_Layout($this);
     $layout = $utility->getLayoutFromFixture(__DIR__ . '/_files/valid_layout_updates.xml');
     $layout->getUpdate()->load(array('get_block_special_case_exception'));
     $layout->generateXml();
     $layout->generateElements();
 }
示例#7
0
 /**
  * Process wrapping of an element
  *
  * Generates layout and should be used with magentoAppIsolation enabled
  *
  * @param string $elementName
  * @param string $elementHtml
  * @return string
  */
 protected function _wrapElement($elementName, $elementHtml)
 {
     // create a layout object mock with fixture data
     $utility = new Mage_Core_Utility_Layout($this);
     $layoutMock = $utility->getLayoutFromFixture(__DIR__ . '/../_files/observer_test.xml', array(array('structure' => new Magento_Data_Structure())));
     // load the fixture data. This will populate layout structure as well
     $layoutMock->getUpdate()->addHandle('test_handle')->load();
     $layoutMock->generateXml()->generateElements();
     $transport = new Varien_Object(array('output' => $elementHtml));
     $observer = new Varien_Event_Observer(array('event' => new Varien_Event(array('layout' => $layoutMock, 'element_name' => $elementName, 'transport' => $transport))));
     $this->_observer->wrapPageElement($observer);
     return $transport->getData('output');
 }