Example #1
0
 public function testGetAttributeById()
 {
     /** @var $product Mage_Catalog_Model_Product */
     $product = Mage::getModel('Mage_Catalog_Model_Product')->load(1);
     $this->assertNull($this->_model->getAttributeById(-1, $product));
     $this->assertNull($this->_model->getAttributeById(null, $product));
     $sku = Mage::getSingleton('Mage_Eav_Model_Config')->getAttribute('catalog_product', 'sku');
     $this->assertSame($sku, $this->_model->getAttributeById($sku->getId(), $product));
 }
Example #2
0
 public function testGetAttributeById()
 {
     $product = new Mage_Catalog_Model_Product();
     $product->load(1);
     // fixture
     $this->assertNull($this->_model->getAttributeById(-1, $product));
     // @bug: MAGE-2831
     //$this->assertNull($this->_model->getAttributeById(null, $product));
     $this->assertInstanceOf('Mage_Catalog_Model_Resource_Eav_Attribute', $this->_model->getAttributeById(null, $product));
     $sku = Mage::getSingleton('Mage_Eav_Model_Config')->getAttribute('catalog_product', 'sku');
     $this->assertSame($sku, $this->_model->getAttributeById($sku->getId(), $product));
 }
Example #3
0
 /**
  * Retrieve product attribute by identifier
  * Difference from abstract: any attribute is available, not just the ones from $product's attribute set
  *
  * @param  int $attributeId
  * @param  Mage_Catalog_Model_Product $product
  * @return Mage_Catalog_Model_Resource_Eav_Attribute
  */
 public function getAttributeById($attributeId, $product)
 {
     $attribute = parent::getAttributeById($attributeId, $product);
     return $attribute ?: Mage::getModel('Mage_Catalog_Model_Resource_Eav_Attribute')->load($attributeId);
 }