24 private $stockRegistryMock;
29 private $stockItemMock;
34 private $stockConfigurationMock;
39 private $serializerMock;
44 private $jsonValidatorMock;
49 $this->stockRegistryMock = $this->getMockBuilder(StockRegistryInterface::class)
50 ->setMethods([
'getStockItem'])
51 ->getMockForAbstractClass();
52 $this->storeMock = $this->getMockBuilder(Store::class)
53 ->disableOriginalConstructor()
55 $this->stockItemMock = $this->getMockBuilder(StockItemInterface::class)
56 ->setMethods([
'getData'])
57 ->getMockForAbstractClass();
58 $this->stockConfigurationMock = $this->getMockBuilder(StockConfigurationInterface::class)
59 ->disableOriginalConstructor()
60 ->getMockForAbstractClass();
62 $this->stockRegistryMock->expects($this->any())
63 ->method(
'getStockItem')
64 ->willReturn($this->stockItemMock);
65 $this->productMock->expects($this->any())
67 ->willReturn($this->storeMock);
68 $this->serializerMock = $this->createMock(Json::class);
69 $this->jsonValidatorMock = $this->getMockBuilder(\
Magento\Framework\Serialize\JsonValidator::class)
70 ->disableOriginalConstructor()
79 return $this->objectManager->getObject(
80 AdvancedInventory::class,
82 'locator' => $this->locatorMock,
83 'stockRegistry' => $this->stockRegistryMock,
84 'stockConfiguration' => $this->stockConfigurationMock,
85 'arrayManager' => $this->arrayManagerMock,
86 'serializer' => $this->serializerMock,
87 'jsonValidator' => $this->jsonValidatorMock,
94 $this->assertNotEmpty($this->
getModel()->modifyMeta([
'meta_key' =>
'meta_value']));
110 $unserializedValue =
null,
111 $serializeCalledNum = 0,
112 $isValidCalledNum = 0
114 $this->productMock->expects($this->any())
116 ->willReturn($modelId);
118 $this->stockConfigurationMock->expects($this->any())
119 ->method(
'getDefaultConfigValue')
120 ->willReturn($defaultConfigValue);
122 $this->serializerMock->expects($this->exactly($serializeCalledNum))
123 ->method(
'unserialize')
124 ->with($defaultConfigValue)
125 ->willReturn($unserializedValue);
127 $this->jsonValidatorMock->expects($this->exactly($isValidCalledNum))
131 $this->stockItemMock->expects($this->once())->method(
'getData')->willReturn([
'someData']);
132 $this->stockItemMock->expects($this->once())->method(
'getManageStock')->willReturn($someData);
133 $this->stockItemMock->expects($this->once())->method(
'getQty')->willReturn($someData);
134 $this->stockItemMock->expects($this->once())->method(
'getMinQty')->willReturn($someData);
135 $this->stockItemMock->expects($this->once())->method(
'getMinSaleQty')->willReturn($someData);
136 $this->stockItemMock->expects($this->once())->method(
'getMaxSaleQty')->willReturn($someData);
137 $this->stockItemMock->expects($this->once())->method(
'getIsQtyDecimal')->willReturn($someData);
138 $this->stockItemMock->expects($this->once())->method(
'getIsDecimalDivided')->willReturn($someData);
139 $this->stockItemMock->expects($this->once())->method(
'getBackorders')->willReturn($someData);
140 $this->stockItemMock->expects($this->once())->method(
'getNotifyStockQty')->willReturn($someData);
141 $this->stockItemMock->expects($this->once())->method(
'getEnableQtyIncrements')->willReturn($someData);
142 $this->stockItemMock->expects($this->once())->method(
'getQtyIncrements')->willReturn($someData);
143 $this->stockItemMock->expects($this->once())->method(
'getIsInStock')->willReturn($someData);
145 $this->arrayManagerMock->expects($this->once())
147 ->with(
'1/product/stock_data/min_qty_allowed_in_shopping_cart')
148 ->willReturnArgument(1);
150 $this->assertArrayHasKey($modelId, $this->
getModel()->modifyData([]));
160 [1, 1,
'{"36000":2}', [
'36000' => 2], 1, 1]
testModifyData( $modelId, $someData, $defaultConfigValue, $unserializedValue=null, $serializeCalledNum=0, $isValidCalledNum=0)