OrderTest.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Payment\Test\Unit\Model\Cart\SalesModel;
  7. class OrderTest extends \PHPUnit\Framework\TestCase
  8. {
  9. /** @var \Magento\Payment\Model\Cart\SalesModel\Order */
  10. protected $_model;
  11. /** @var \Magento\Sales\Model\Order|\PHPUnit_Framework_MockObject_MockObject */
  12. protected $_orderMock;
  13. protected function setUp()
  14. {
  15. $this->_orderMock = $this->createMock(\Magento\Sales\Model\Order::class);
  16. $this->_model = new \Magento\Payment\Model\Cart\SalesModel\Order($this->_orderMock);
  17. }
  18. /**
  19. * @return array
  20. */
  21. public function gettersDataProvider()
  22. {
  23. return [
  24. ['getBaseSubtotal'],
  25. ['getBaseTaxAmount'],
  26. ['getBaseShippingAmount'],
  27. ['getBaseDiscountAmount']
  28. ];
  29. }
  30. public function testGetDataUsingMethod()
  31. {
  32. $this->_orderMock->expects(
  33. $this->once()
  34. )->method(
  35. 'getDataUsingMethod'
  36. )->with(
  37. 'any key',
  38. 'any args'
  39. )->will(
  40. $this->returnValue('some value')
  41. );
  42. $this->assertEquals('some value', $this->_model->getDataUsingMethod('any key', 'any args'));
  43. }
  44. public function testGetTaxContainer()
  45. {
  46. $this->assertEquals($this->_orderMock, $this->_model->getTaxContainer());
  47. }
  48. public function testGetAllItems()
  49. {
  50. $items = [
  51. new \Magento\Framework\DataObject(
  52. ['parent_item' => 'parent item 1', 'name' => 'name 1', 'qty_ordered' => 1, 'base_price' => 0.1]
  53. ),
  54. new \Magento\Framework\DataObject(
  55. ['parent_item' => 'parent item 2', 'name' => 'name 2', 'qty_ordered' => 2, 'base_price' => 1.2]
  56. ),
  57. new \Magento\Framework\DataObject(
  58. ['parent_item' => 'parent item 3', 'name' => 'name 3', 'qty_ordered' => 3, 'base_price' => 2.3]
  59. ),
  60. ];
  61. $expected = [
  62. new \Magento\Framework\DataObject(
  63. [
  64. 'parent_item' => 'parent item 1',
  65. 'name' => 'name 1',
  66. 'qty' => 1,
  67. 'price' => 0.1,
  68. 'original_item' => $items[0],
  69. ]
  70. ),
  71. new \Magento\Framework\DataObject(
  72. [
  73. 'parent_item' => 'parent item 2',
  74. 'name' => 'name 2',
  75. 'qty' => 2,
  76. 'price' => 1.2,
  77. 'original_item' => $items[1],
  78. ]
  79. ),
  80. new \Magento\Framework\DataObject(
  81. [
  82. 'parent_item' => 'parent item 3',
  83. 'name' => 'name 3',
  84. 'qty' => 3,
  85. 'price' => 2.3,
  86. 'original_item' => $items[2],
  87. ]
  88. ),
  89. ];
  90. $this->_orderMock->expects($this->once())->method('getAllItems')->will($this->returnValue($items));
  91. $this->assertEquals($expected, $this->_model->getAllItems());
  92. }
  93. }