85 $this->taxItemDetailsDataObjectFactory = $this->createPartialMock(
86 \
Magento\Tax\Api\Data\TaxDetailsItemInterfaceFactory::class,
89 $this->taxDetailsItem = $this->objectManager->getObject(\
Magento\Tax\Model\TaxDetails\ItemDetails::class);
90 $this->taxItemDetailsDataObjectFactory->expects($this->any())
92 ->willReturn($this->taxDetailsItem);
94 $this->mockCalculationTool = $this->getMockBuilder(\
Magento\Tax\Model\Calculation::class)
95 ->disableOriginalConstructor()
97 [
'__wakeup',
'round',
'getRate',
'getStoreRate',
'getRateRequest',
'getAppliedRates']
100 $this->mockConfig = $this->getMockBuilder(\
Magento\Tax\Model\Config::class)
101 ->disableOriginalConstructor()
104 $this->mockItem = $this->getMockBuilder(\
Magento\Tax\Api\Data\QuoteDetailsItemInterface::class)->getMock();
106 $this->appliedTaxDataObjectFactory = $this->createPartialMock(
107 \
Magento\Tax\Api\Data\AppliedTaxInterfaceFactory::class,
111 $this->appliedTaxRateDataObjectFactory = $this->createPartialMock(
112 \
Magento\Tax\Api\Data\AppliedTaxRateInterfaceFactory::class,
115 $this->appliedTaxRate = $this->objectManager->getObject(\
Magento\Tax\Model\TaxDetails\AppliedTaxRate::class);
116 $this->appliedTaxRateDataObjectFactory->expects($this->any())
118 ->willReturn($this->appliedTaxRate);
119 $this->mockAppliedTax = $this->getMockBuilder(\
Magento\Tax\Api\Data\AppliedTaxInterface::class)->getMock();
121 $this->mockAppliedTax->expects($this->any())->method(
'getTaxRateKey')->will($this->returnValue(
'taxKey'));
122 $this->addressRateRequest = new \Magento\Framework\DataObject();
132 return $calculator->calculate($this->mockItem, 1, $round);
142 $this->mockReturnValues(
147 self::MOCK_METHOD_NAME =>
'getDiscountAmount',
148 self::MOCK_VALUE => 1,
152 self::MOCK_METHOD_NAME =>
'getCode',
153 self::MOCK_VALUE => self::CODE
157 self::MOCK_METHOD_NAME =>
'getType',
158 self::MOCK_VALUE => self::TYPE
162 self::MOCK_METHOD_NAME =>
'getUnitPrice',
163 self::MOCK_VALUE => self::UNIT_PRICE
167 self::MOCK_METHOD_NAME =>
'getIsTaxIncluded',
168 self::MOCK_VALUE => $isTaxIncluded
180 $this->mockReturnValues(
185 self::MOCK_METHOD_NAME =>
'applyTaxAfterDiscount',
186 self::MOCK_VALUE =>
true,
202 self::MOCK_METHOD_NAME =>
'getRate',
207 self::MOCK_METHOD_NAME =>
'getAppliedRates',
208 self::MOCK_VALUE => [
224 if ($isTaxIncluded) {
227 self::MOCK_METHOD_NAME =>
'getStoreRate',
232 $this->mockReturnValues(
233 $this->mockCalculationTool,
236 $this->mockCalculationTool->expects($this->atLeastOnce())
238 ->willReturnCallback(
251 $this->mockReturnValues(
252 $this->appliedTaxDataObjectFactory,
256 self::MOCK_METHOD_NAME =>
'create',
257 self::MOCK_VALUE => $this->mockAppliedTax,
267 private function mockReturnValues($mockObject, $mockMap)
269 foreach ($mockMap as $valueMap) {
270 if (isset($valueMap[self::WITH_ARGUMENT])) {
271 $mockObject->expects(
272 $valueMap[self::ONCE] ==
true ? $this->once() : $this->atLeastOnce()
273 )->method($valueMap[self::MOCK_METHOD_NAME])->with($valueMap[self::WITH_ARGUMENT])
275 $this->returnValue($valueMap[self::MOCK_VALUE])
278 $mockObject->expects(
279 $valueMap[self::ONCE] ==
true ? $this->once() : $this->atLeastOnce()
280 )->method($valueMap[self::MOCK_METHOD_NAME])->withAnyParameters()
282 $this->returnValue($valueMap[self::MOCK_VALUE])
initMocks($isTaxIncluded)
$appliedTaxRateDataObjectFactory
const UNIT_PRICE_INCL_TAX_ROUNDED
$appliedTaxDataObjectFactory
initMockItem($isTaxIncluded)
const UNIT_PRICE_INCL_TAX
calculate($calculator, $round=true)
$taxItemDetailsDataObjectFactory
initMockAppliedTaxDataObjectFactory()
initMockCalculationTool($isTaxIncluded)