public function testIndexerAfterSaveAttribute() { $this->_processor->expects($this->once())->method('markIndexerAsInvalid'); $this->_model->setData('id', 2); $this->_model->setData('used_in_product_listing', 1); $this->_model->afterSave(); }
/** * Prepare attribute for conversion from any swatch type to dropdown * * @param Attribute $attribute * @return void */ protected function convertSwatchToDropdown(Attribute $attribute) { if ($attribute->getData(Swatch::SWATCH_INPUT_TYPE_KEY) == Swatch::SWATCH_INPUT_TYPE_DROPDOWN) { $additionalData = $attribute->getData('additional_data'); if (!empty($additionalData)) { $additionalData = unserialize($additionalData); if (is_array($additionalData) && isset($additionalData[Swatch::SWATCH_INPUT_TYPE_KEY])) { unset($additionalData[Swatch::SWATCH_INPUT_TYPE_KEY]); $attribute->setData('additional_data', serialize($additionalData)); } } } }
/** * {@inheritdoc} */ public function setData($key, $value = null) { $pluginInfo = $this->pluginList->getNext($this->subjectType, 'setData'); if (!$pluginInfo) { return parent::setData($key, $value); } else { return $this->___callPlugins('setData', func_get_args(), $pluginInfo); } }
/** * @param Attribute $attribute * @return $this */ public function populateAdditionalDataEavAttribute(Attribute $attribute) { $additionalData = unserialize($attribute->getData('additional_data')); if (isset($additionalData) && is_array($additionalData)) { foreach ($this->eavAttributeAdditionalDataKeys as $key) { if (isset($additionalData[$key])) { $attribute->setData($key, $additionalData[$key]); } } } return $this; }