public function testGetCategory()
 {
     $this->category->expects($this->any())->method('getId')->will($this->returnValue(10));
     $this->registry->expects($this->any())->method('registry')->will($this->returnValue($this->category));
     $this->categoryRepository->expects($this->any())->method('get')->will($this->returnValue($this->category));
     $this->assertInstanceOf('\\Magento\\Catalog\\Model\\Category', $this->model->getCategory());
 }
 public function testGetCategory()
 {
     $this->assertEmpty($this->_model->getCategory());
     $this->objectManager->get('Magento\\Framework\\Registry')->register('current_category', new \Magento\Framework\DataObject(['id' => 3]));
     // fixture
     try {
         $category = $this->_model->getCategory();
         $this->assertInstanceOf('Magento\\Catalog\\Model\\Category', $category);
         $this->assertEquals(3, $category->getId());
         $this->objectManager->get('Magento\\Framework\\Registry')->unregister('current_category');
     } catch (\Exception $e) {
         $this->objectManager->get('Magento\\Framework\\Registry')->unregister('current_category');
         throw $e;
     }
     $categoryTwo = new \StdClass();
     $this->_model->setCategory($categoryTwo);
     $this->assertSame($categoryTwo, $this->_model->getCategory());
 }
Example #3
0
 public function testGetCategory()
 {
     $this->assertEmpty($this->_model->getCategory());
     /** @var $objectManager \Magento\TestFramework\ObjectManager */
     $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
     $objectManager->get('Magento\\Framework\\Registry')->register('current_category', new \Magento\Framework\Object(array('id' => 3)));
     // fixture
     try {
         $category = $this->_model->getCategory();
         $this->assertInstanceOf('Magento\\Catalog\\Model\\Category', $category);
         $this->assertEquals(3, $category->getId());
         $objectManager->get('Magento\\Framework\\Registry')->unregister('current_category');
     } catch (\Exception $e) {
         $objectManager->get('Magento\\Framework\\Registry')->unregister('current_category');
         throw $e;
     }
     $categoryTwo = new \StdClass();
     $this->_model->setCategory($categoryTwo);
     $this->assertSame($categoryTwo, $this->_model->getCategory());
 }
Example #4
0
 /**
  * Get custom layout settings
  *
  * @param \Magento\Catalog\Model\Category|\Magento\Catalog\Model\Product $object
  * @return \Magento\Framework\Object
  */
 public function getDesignSettings($object)
 {
     if ($object instanceof \Magento\Catalog\Model\Product) {
         $currentCategory = $object->getCategory();
     } else {
         $currentCategory = $object;
     }
     $category = null;
     if ($currentCategory) {
         $category = $currentCategory->getParentDesignCategory($currentCategory);
     }
     if ($object instanceof \Magento\Catalog\Model\Product) {
         if ($category && $category->getCustomApplyToProducts()) {
             return $this->_mergeSettings($this->_extractSettings($category), $this->_extractSettings($object));
         } else {
             return $this->_extractSettings($object);
         }
     } else {
         return $this->_extractSettings($category);
     }
 }
 /**
  * {@inheritdoc}
  */
 public function getCategory()
 {
     $pluginInfo = $this->pluginList->getNext($this->subjectType, 'getCategory');
     if (!$pluginInfo) {
         return parent::getCategory();
     } else {
         return $this->___callPlugins('getCategory', func_get_args(), $pluginInfo);
     }
 }