17 private $invalidSkuProcessor;
22 private $productIdLocator;
27 private $productRepository;
34 $this->productIdLocator = $this->getMockBuilder(\
Magento\Catalog\Model\ProductIdLocatorInterface::class)
35 ->disableOriginalConstructor()->getMockForAbstractClass();
36 $this->productRepository = $this->getMockBuilder(\
Magento\Catalog\Api\ProductRepositoryInterface::class)
37 ->disableOriginalConstructor()->getMockForAbstractClass();
39 $objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
43 'productIdLocator' => $this->productIdLocator,
44 'productRepository' => $this->productRepository
56 private function prepareRetrieveInvalidSkuListMethod($productType, $productSku)
58 $idsBySku = [$productSku => [235235235 => $productType]];
59 $this->productIdLocator->expects($this->atLeastOnce())->method(
'retrieveProductIdsBySkus')
60 ->willReturn($idsBySku);
61 $product = $this->getMockBuilder(\
Magento\Catalog\Api\Data\ProductInterface::class)
62 ->setMethods([
'getPriceType'])
63 ->disableOriginalConstructor()->getMockForAbstractClass();
64 $productPriceType = 0;
65 $product->expects($this->atLeastOnce())->method(
'getPriceType')->willReturn($productPriceType);
66 $this->productRepository->expects($this->atLeastOnce())->method(
'get')->willReturn(
$product);
76 $productSku =
'LKJKJ2233636';
77 $productType = \Magento\Catalog\Model\Product\Type::TYPE_BUNDLE;
78 $methodParamSku =
'SDFSDF3242355';
79 $skus = [$methodParamSku];
80 $allowedProductTypes = [$productType];
81 $allowedPriceTypeValue =
true;
82 $this->prepareRetrieveInvalidSkuListMethod($productType, $productSku);
85 [$methodParamSku, $productSku],
86 $this->invalidSkuProcessor->retrieveInvalidSkuList(
$skus, $allowedProductTypes, $allowedPriceTypeValue)
foreach($websiteCodes as $websiteCode) $skus
testRetrieveInvalidSkuList()