public function testGetOldSkusIfSet() { $expectedOldSkus = 'value'; $this->setPropertyValue($this->skuProcessor, 'oldSkus', 'value'); $this->skuProcessor->expects($this->never())->method('_getSkus'); $result = $this->skuProcessor->getOldSkus(); $this->assertEquals($expectedOldSkus, $result); }
public function testValidateRowSetAttributeSetCodeIntoRowData() { $sku = 'sku'; $rowNum = 0; $rowData = [\Magento\CatalogImportExport\Model\Import\Product::COL_SKU => $sku, \Magento\CatalogImportExport\Model\Import\Product::COL_ATTR_SET => 'col_attr_set_val']; $expectedAttrSetCode = 'new_attr_set_code'; $newSku = ['attr_set_code' => $expectedAttrSetCode, 'type_id' => 'new_type_id_val']; $expectedRowData = [\Magento\CatalogImportExport\Model\Import\Product::COL_SKU => $sku, \Magento\CatalogImportExport\Model\Import\Product::COL_ATTR_SET => $newSku['attr_set_code']]; $oldSku = [$sku => ['type_id' => 'type_id_val']]; $importProduct = $this->createModelMockWithErrorAggregator(['getOptionEntity']); $this->setPropertyValue($importProduct, '_oldSku', $oldSku); $this->skuProcessor->expects($this->any())->method('getNewSku')->willReturn($newSku); $this->setPropertyValue($importProduct, 'skuProcessor', $this->skuProcessor); $productType = $this->getMockBuilder('\\Magento\\CatalogImportExport\\Model\\Import\\Product\\Type\\AbstractType')->disableOriginalConstructor()->getMock(); $productType->expects($this->once())->method('isRowValid')->with($expectedRowData); $this->setPropertyValue($importProduct, '_productTypeModels', [$newSku['type_id'] => $productType]); //suppress option validation $this->_rewriteGetOptionEntityInImportProduct($importProduct); //suppress validator $this->_setValidatorMockInImportProduct($importProduct); $importProduct->validateRow($rowData, $rowNum); }
public function testPopulateToUrlGenerationReturnProduct() { $rowData = [\Magento\CatalogImportExport\Model\Import\Product::COL_SKU => 'value']; $newSku = ['entity_id' => 'new sku value']; $expectedRowData = [\Magento\CatalogImportExport\Model\Import\Product::COL_SKU => 'value', 'entity_id' => $newSku['entity_id']]; $productMock = $this->getMock('\\Magento\\Catalog\\Model\\Product', ['addData'], [], '', false); $productMock->expects($this->once())->method('addData')->with($expectedRowData); $this->catalogProductFactory->expects($this->once())->method('create')->willReturn($productMock); $this->skuProcessor->expects($this->once())->method('getNewSku')->willReturn($newSku); $result = $this->importProduct->_populateToUrlGeneration($rowData); $this->assertEquals($productMock, $result); }