Example #1
0
 /**
  * @param ImportProduct $import
  * @return void
  */
 protected function clearProductUrls(ImportProduct $import)
 {
     $oldSku = $import->getOldSku();
     while ($bunch = $import->getNextBunch()) {
         $idToDelete = [];
         foreach ($bunch as $rowNum => $rowData) {
             if ($import->validateRow($rowData, $rowNum) && ImportProduct::SCOPE_DEFAULT == $import->getRowScope($rowData)) {
                 $idToDelete[] = $oldSku[$rowData[ImportProduct::COL_SKU]]['entity_id'];
             }
         }
         foreach ($idToDelete as $productId) {
             $this->urlPersist->deleteByData([UrlRewrite::ENTITY_ID => $productId, UrlRewrite::ENTITY_TYPE => ProductUrlRewriteGenerator::ENTITY_TYPE]);
         }
     }
 }
Example #2
0
 public function testValidateRowProcessEntityIncrement()
 {
     $count = 0;
     $rowNum = 0;
     $errorAggregator = $this->getErrorAggregatorObject(['isRowInvalid']);
     $errorAggregator->method('isRowInvalid')->willReturn(true);
     $this->setPropertyValue($this->importProduct, '_processedEntitiesCount', $count);
     $this->setPropertyValue($this->importProduct, 'errorAggregator', $errorAggregator);
     $rowData = [\Magento\CatalogImportExport\Model\Import\Product::COL_SKU => false];
     //suppress validator
     $this->_setValidatorMockInImportProduct($this->importProduct);
     $this->importProduct->validateRow($rowData, $rowNum);
     $this->assertEquals(++$count, $this->importProduct->getProcessedEntitiesCount());
 }
Example #3
0
 public function testValidateRowProcessEntityIncrement()
 {
     $count = 0;
     $rowNum = 0;
     $this->setPropertyValue($this->importProduct, '_processedEntitiesCount', $count);
     $rowData = [\Magento\CatalogImportExport\Model\Import\Product::COL_SKU => ''];
     //suppress validator
     $this->_setValidatorMockInImportProduct($this->importProduct);
     $this->importProduct->validateRow($rowData, $rowNum);
     $this->assertEquals(++$count, $this->importProduct->getProcessedEntitiesCount());
 }