/** * Test if datetime properly saved after import * * @magentoDataFixture Mage/Catalog/_files/multiple_products.php */ public function testSaveDatetimeAttribute() { $existingProductIds = array(10, 11, 12); $productsBeforeImport = array(); foreach ($existingProductIds as $productId) { $product = new Mage_Catalog_Model_Product(); $product->load($productId); $productsBeforeImport[$product->getSku()] = $product; } $resource = __DIR__ . '/_files/products_to_import_with_datetime.csv'; $source = new Mage_ImportExport_Model_Import_Adapter_Csv($resource); $this->_model->setParameters(array('behavior' => Mage_ImportExport_Model_Import::BEHAVIOR_REPLACE, 'entity' => 'catalog_product'))->setSource($source)->isDataValid(); $this->_model->importData(); reset($source); foreach ($source as $row) { /** @var $productAfterImport Mage_Catalog_Model_Product */ $productBeforeImport = $productsBeforeImport[$row['sku']]; /** @var $productAfterImport Mage_Catalog_Model_Product */ $productAfterImport = new Mage_Catalog_Model_Product(); $productAfterImport->load($productBeforeImport->getId()); $this->assertEquals(@strtotime($row['news_from_date']), @strtotime($productAfterImport->getNewsFromDate())); unset($productAfterImport); } unset($productsBeforeImport, $product); }
/** * Test if stock item quantity properly saved after import * * @magentoDataFixture Mage/Catalog/_files/multiple_products.php */ public function testSaveStockItemQty() { $existingProductIds = array(10, 11, 12); $stockItems = array(); foreach ($existingProductIds as $productId) { $stockItem = new Mage_CatalogInventory_Model_Stock_Item(); $stockItem->loadByProduct($productId); $stockItems[$productId] = $stockItem; } $source = new Mage_ImportExport_Model_Import_Adapter_Csv(__DIR__ . '/_files/products_to_import.csv'); $this->_model->setParameters(array('behavior' => Mage_ImportExport_Model_Import::BEHAVIOR_REPLACE, 'entity' => 'catalog_product'))->setSource($source)->isDataValid(); $this->_model->importData(); /** @var $stockItmBeforeImport Mage_CatalogInventory_Model_Stock_Item */ foreach ($stockItems as $productId => $stockItmBeforeImport) { /** @var $stockItemAfterImport Mage_CatalogInventory_Model_Stock_Item */ $stockItemAfterImport = new Mage_CatalogInventory_Model_Stock_Item(); $stockItemAfterImport->loadByProduct($productId); $this->assertEquals($stockItmBeforeImport->getQty(), $stockItemAfterImport->getQty()); unset($stockItemAfterImport); } unset($stockItems, $stockItem); }