コード例 #1
0
 protected function setUp()
 {
     $this->markTestIncomplete('MAGETWO-6406');
     parent::setUp();
     $this->_setFixtureTheme();
     $this->_layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\\Framework\\View\\LayoutInterface', ['area' => 'adminhtml']);
     $this->_layout->getUpdate()->load('layout_test_grid_handle');
     $this->_layout->generateXml();
     $this->_layout->generateElements();
     $this->_block = $this->_layout->getBlock('admin.test.grid.massaction');
 }
コード例 #2
0
ファイル: Builder.php プロジェクト: pradeep-wagento/magento2
 /**
  * Load layout updates
  *
  * @return $this
  */
 protected function loadLayoutUpdates()
 {
     Profiler::start('LAYOUT');
     /* dispatch event for adding handles to layout update */
     $this->eventManager->dispatch('layout_load_before', ['full_action_name' => $this->request->getFullActionName(), 'layout' => $this->layout]);
     Profiler::start('layout_load');
     /* load layout updates by specified handles */
     $this->layout->getUpdate()->load();
     Profiler::stop('layout_load');
     Profiler::stop('LAYOUT');
     return $this;
 }
コード例 #3
0
 protected function setUp()
 {
     $this->markTestIncomplete('MAGETWO-6406');
     parent::setUp();
     $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
     /** @var \Magento\Theme\Model\Theme\Registration $registration */
     $registration = $objectManager->get('Magento\\Theme\\Model\\Theme\\Registration');
     $registration->register();
     $objectManager->get('Magento\\Framework\\View\\DesignInterface')->setDesignTheme('BackendTest/test_default');
     $this->_layout = $objectManager->create('Magento\\Framework\\View\\LayoutInterface', ['area' => 'adminhtml']);
     $this->_layout->getUpdate()->load('layout_test_grid_handle');
     $this->_layout->generateXml();
     $this->_layout->generateElements();
     $this->_block = $this->_layout->getBlock('admin.test.grid.massaction');
     $this->assertNotFalse($this->_block, 'Could not load the block for testing');
 }
コード例 #4
0
ファイル: ViewTest.php プロジェクト: Atlis/docker-magento2
 /**
  * @magentoAppIsolation enabled
  * @magentoAppArea frontend
  */
 public function testInitProductLayout()
 {
     $uniqid = uniqid();
     /** @var $product \Magento\Catalog\Model\Product */
     $product = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\\Catalog\\Model\\Product');
     $product->setTypeId(\Magento\Catalog\Model\Product\Type::DEFAULT_TYPE)->setId(99)->setUrlKey($uniqid);
     /** @var $objectManager \Magento\TestFramework\ObjectManager */
     $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
     $objectManager->get('Magento\\Framework\\Registry')->register('product', $product);
     $this->_helper->initProductLayout($product, $this->_controller);
     $rootBlock = $this->_layout->getBlock('root');
     $this->assertInstanceOf('Magento\\Theme\\Block\\Html', $rootBlock);
     $this->assertContains("product-{$uniqid}", $rootBlock->getBodyClass());
     $handles = $this->_layout->getUpdate()->getHandles();
     $this->assertContains('catalog_product_view_type_simple', $handles);
 }
コード例 #5
0
ファイル: ViewTest.php プロジェクト: aiesh/magento2
 /**
  * @magentoAppIsolation enabled
  * @magentoAppArea frontend
  */
 public function testInitProductLayout()
 {
     $uniqid = uniqid();
     /** @var $product \Magento\Catalog\Model\Product */
     $product = $this->objectManager->create('Magento\\Catalog\\Model\\Product');
     $product->setTypeId(\Magento\Catalog\Model\Product\Type::DEFAULT_TYPE)->setId(99)->setUrlKey($uniqid);
     /** @var $objectManager \Magento\TestFramework\ObjectManager */
     $objectManager = $this->objectManager;
     $objectManager->get('Magento\\Framework\\Registry')->register('product', $product);
     $this->_helper->initProductLayout($product, $this->_controller);
     /** @var \Magento\Framework\View\Page\Config $pageConfig */
     $pageConfig = $this->objectManager->get('Magento\\Framework\\View\\Page\\Config');
     $bodyClass = $pageConfig->getElementAttribute(\Magento\Framework\View\Page\Config::ELEMENT_TYPE_BODY, 'classes');
     $this->assertContains("product-{$uniqid}", $bodyClass);
     $handles = $this->_layout->getUpdate()->getHandles();
     $this->assertContains('catalog_product_view_type_simple', $handles);
 }
コード例 #6
0
ファイル: Layout.php プロジェクト: Atlis/docker-magento2
 /**
  * Retrieve current applied page layout
  *
  * @return \Magento\Framework\Object|boolean
  */
 public function getCurrentPageLayout()
 {
     if ($this->_layout->getBlock('root') && $this->_layout->getBlock('root')->getLayoutCode()) {
         return $this->_config->getPageLayout($this->_layout->getBlock('root')->getLayoutCode());
     }
     // All loaded handles
     $handles = $this->_layout->getUpdate()->getHandles();
     // Handles used in page layouts
     $pageLayoutHandles = $this->_config->getPageLayoutHandles();
     // Applied page layout handles
     $appliedHandles = array_intersect($handles, $pageLayoutHandles);
     if (empty($appliedHandles)) {
         return false;
     }
     $currentHandle = array_pop($appliedHandles);
     $layoutCode = array_search($currentHandle, $pageLayoutHandles, true);
     return $this->_config->getPageLayout($layoutCode);
 }
コード例 #7
0
ファイル: Layout.php プロジェクト: pradeep-wagento/magento2
 /**
  * Load layout
  *
  * @return void
  */
 public function loadLayout()
 {
     $this->layout->getUpdate()->load();
     $this->layout->generateXml();
     $this->layout->generateElements();
 }