Skip to content

Commit b25d3d2

Browse files
committed
ACP2E-2646: [Cloud] Sales Rule not applied to first order of Multi Shipping
1 parent d2ac3de commit b25d3d2

File tree

2 files changed

+17
-66
lines changed

2 files changed

+17
-66
lines changed

app/code/Magento/SalesRule/Test/Unit/Model/Quote/DiscountTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ function ($argument) {
131131
$this->addressMock = $this->getMockBuilder(Address::class)
132132
->addMethods(['getShippingAmount'])
133133
->onlyMethods(
134-
['getQuote', 'getAllItems', 'getExtensionAttributes', 'getCustomAttributesCodes', 'setBaseDiscountAmount']
134+
['getQuote','getAllItems','getExtensionAttributes','getCustomAttributesCodes','setBaseDiscountAmount']
135135
)
136136
->disableOriginalConstructor()
137137
->getMock();

dev/tests/integration/testsuite/Magento/SalesRule/Model/Rule/Action/Discount/CartFixedTest.php

Lines changed: 16 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -362,11 +362,7 @@ public function testMultishipping(
362362
$orderSender = $this->getMockBuilder(OrderSender::class)
363363
->disableOriginalConstructor()
364364
->getMock();
365-
366-
$model = $this->objectManager->create(
367-
Multishipping::class,
368-
['orderSender' => $orderSender]
369-
);
365+
$model = $this->objectManager->create(Multishipping::class, ['orderSender' => $orderSender]);
370366
$model->createOrders();
371367
$orderList = $this->getOrderList((int)$quote->getId());
372368
$this->assertCount(3, $orderList);
@@ -377,86 +373,41 @@ public function testMultishipping(
377373
*/
378374
$firstOrder = array_shift($orderList);
379375
$this->assertNotEmpty($firstOrder->getAppliedRuleIds());
380-
$this->assertEquals(
381-
$firstOrderTotals['subtotal'],
382-
$firstOrder->getSubtotal()
383-
);
384-
$this->assertEquals(
385-
$firstOrderTotals['discount_amount'],
386-
$firstOrder->getDiscountAmount()
387-
);
388-
$this->assertEquals(
389-
$firstOrderTotals['shipping_amount'],
390-
$firstOrder->getShippingAmount()
391-
);
392-
$this->assertEquals(
393-
$firstOrderTotals['grand_total'],
394-
$firstOrder->getGrandTotal()
395-
);
376+
$this->assertEquals($firstOrderTotals['subtotal'], $firstOrder->getSubtotal());
377+
$this->assertEquals($firstOrderTotals['discount_amount'], $firstOrder->getDiscountAmount());
378+
$this->assertEquals($firstOrderTotals['shipping_amount'], $firstOrder->getShippingAmount());
379+
$this->assertEquals($firstOrderTotals['grand_total'], $firstOrder->getGrandTotal());
396380
$firstOrderItem = array_values($firstOrder->getItems())[0];
397381
$this->assertNotEmpty($firstOrderItem->getAppliedRuleIds());
398-
$this->assertEquals(
399-
$firstOrderTotals['discount_amount'] * -1,
400-
$firstOrderItem->getDiscountAmount()
401-
);
382+
$this->assertEquals($firstOrderTotals['discount_amount'] * -1, $firstOrderItem->getDiscountAmount());
402383

403384
/**
404385
* The order with $20 simple product
405386
* @var Order $secondOrder
406387
*/
407388
$secondOrder = array_shift($orderList);
408389
$this->assertNotEmpty($secondOrder->getAppliedRuleIds());
409-
$this->assertEquals(
410-
$secondOrderTotals['subtotal'],
411-
$secondOrder->getSubtotal()
412-
);
413-
$this->assertEquals(
414-
$secondOrderTotals['discount_amount'],
415-
$secondOrder->getDiscountAmount()
416-
);
417-
$this->assertEquals(
418-
$secondOrderTotals['shipping_amount'],
419-
$secondOrder->getShippingAmount()
420-
);
421-
$this->assertEquals(
422-
$secondOrderTotals['grand_total'],
423-
$secondOrder->getGrandTotal()
424-
);
390+
$this->assertEquals($secondOrderTotals['subtotal'], $secondOrder->getSubtotal());
391+
$this->assertEquals($secondOrderTotals['discount_amount'], $secondOrder->getDiscountAmount());
392+
$this->assertEquals($secondOrderTotals['shipping_amount'], $secondOrder->getShippingAmount());
393+
$this->assertEquals($secondOrderTotals['grand_total'], $secondOrder->getGrandTotal());
425394
$secondOrderItem = array_values($secondOrder->getItems())[0];
426395
$this->assertNotEmpty($secondOrderItem->getAppliedRuleIds());
427-
$this->assertEquals(
428-
$secondOrderTotals['discount_amount'] * -1,
429-
$secondOrderItem->getDiscountAmount()
430-
);
396+
$this->assertEquals($secondOrderTotals['discount_amount'] * -1, $secondOrderItem->getDiscountAmount());
431397

432398
/**
433399
* The order with $5 virtual product and billing address as shipping
434400
* @var Order $thirdOrder
435401
*/
436402
$thirdOrder = array_shift($orderList);
437403
$this->assertNotEmpty($thirdOrder->getAppliedRuleIds());
438-
$this->assertEquals(
439-
$thirdOrderTotals['subtotal'],
440-
$thirdOrder->getSubtotal()
441-
);
442-
$this->assertEquals(
443-
$thirdOrderTotals['discount_amount'],
444-
$thirdOrder->getDiscountAmount()
445-
);
446-
$this->assertEquals(
447-
$thirdOrderTotals['shipping_amount'],
448-
$thirdOrder->getShippingAmount()
449-
);
450-
$this->assertEquals(
451-
$thirdOrderTotals['grand_total'],
452-
$thirdOrder->getGrandTotal()
453-
);
404+
$this->assertEquals($thirdOrderTotals['subtotal'], $thirdOrder->getSubtotal());
405+
$this->assertEquals($thirdOrderTotals['discount_amount'], $thirdOrder->getDiscountAmount());
406+
$this->assertEquals($thirdOrderTotals['shipping_amount'], $thirdOrder->getShippingAmount());
407+
$this->assertEquals($thirdOrderTotals['grand_total'], $thirdOrder->getGrandTotal());
454408
$thirdOrderItem = array_values($thirdOrder->getItems())[0];
455409
$this->assertNotEmpty($thirdOrderItem->getAppliedRuleIds());
456-
$this->assertEquals(
457-
$thirdOrderTotals['discount_amount'] * -1,
458-
$thirdOrderItem->getDiscountAmount()
459-
);
410+
$this->assertEquals($thirdOrderTotals['discount_amount'] * -1, $thirdOrderItem->getDiscountAmount());
460411
}
461412

462413
/**

0 commit comments

Comments
 (0)