AddressAdapterTest.php 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Payment\Test\Unit\Gateway\Data\Order;
  7. use Magento\Payment\Gateway\Data\Order\AddressAdapter;
  8. use Magento\Sales\Api\Data\OrderAddressInterface;
  9. /**
  10. * Class AddressAdapterTest
  11. */
  12. class AddressAdapterTest extends \PHPUnit\Framework\TestCase
  13. {
  14. /** @var AddressAdapter */
  15. protected $model;
  16. /**
  17. * @var OrderAddressInterface|\PHPUnit_Framework_MockObject_MockObject
  18. */
  19. protected $orderAddressMock;
  20. protected function setUp()
  21. {
  22. $this->orderAddressMock = $this->getMockBuilder(\Magento\Sales\Api\Data\OrderAddressInterface::class)
  23. ->getMockForAbstractClass();
  24. $this->model = new AddressAdapter($this->orderAddressMock);
  25. }
  26. public function testGetRegion()
  27. {
  28. $expected = 'California';
  29. $this->orderAddressMock->expects($this->once())->method('getRegionCode')->willReturn($expected);
  30. $this->assertEquals($expected, $this->model->getRegionCode());
  31. }
  32. public function testGetCountryId()
  33. {
  34. $expected = '10';
  35. $this->orderAddressMock->expects($this->once())->method('getCountryId')->willReturn($expected);
  36. $this->assertEquals($expected, $this->model->getCountryId());
  37. }
  38. /**
  39. * @param $street array|null
  40. * @param $expected string
  41. * @dataProvider streetLine1DataProvider
  42. */
  43. public function testStreetLine1($street, $expected)
  44. {
  45. $this->orderAddressMock->expects($this->once())->method('getStreet')->willReturn($street);
  46. $this->assertEquals($expected, $this->model->getStreetLine1());
  47. }
  48. /**
  49. * @return array
  50. */
  51. public function streetLine1DataProvider()
  52. {
  53. return [
  54. [['Street Line 1'], 'Street Line 1'], //$street, $expected
  55. [null, '']
  56. ];
  57. }
  58. /**
  59. * @param $street array|null
  60. * @param $expected string
  61. * @dataProvider streetLine2DataProvider
  62. */
  63. public function testStreetLine2($street, $expected)
  64. {
  65. $this->orderAddressMock->expects($this->once())->method('getStreet')->willReturn($street);
  66. $this->assertEquals($expected, $this->model->getStreetLine2());
  67. }
  68. /**
  69. * @return array
  70. */
  71. public function streetLine2DataProvider()
  72. {
  73. return [
  74. [['Street Line 1', 'Street Line 2',], 'Street Line 2'], //$street, $expected
  75. [['Street Line 1'], ''],
  76. [null, '']
  77. ];
  78. }
  79. public function testGetTelephone()
  80. {
  81. $expected = '555-234-456';
  82. $this->orderAddressMock->expects($this->once())->method('getTelephone')->willReturn($expected);
  83. $this->assertEquals($expected, $this->model->getTelephone());
  84. }
  85. public function testGetPostcode()
  86. {
  87. $expected = '90232';
  88. $this->orderAddressMock->expects($this->once())->method('getPostcode')->willReturn($expected);
  89. $this->assertEquals($expected, $this->model->getPostcode());
  90. }
  91. public function testGetCity()
  92. {
  93. $expected = 'New York';
  94. $this->orderAddressMock->expects($this->once())->method('getCity')->willReturn($expected);
  95. $this->assertEquals($expected, $this->model->getCity());
  96. }
  97. public function testGetFirstname()
  98. {
  99. $expected = 'John';
  100. $this->orderAddressMock->expects($this->once())->method('getFirstname')->willReturn($expected);
  101. $this->assertEquals($expected, $this->model->getFirstname());
  102. }
  103. public function testGetLastname()
  104. {
  105. $expected = 'Doe';
  106. $this->orderAddressMock->expects($this->once())->method('getLastname')->willReturn($expected);
  107. $this->assertEquals($expected, $this->model->getLastname());
  108. }
  109. public function testGetMiddlename()
  110. {
  111. $expected = 'Middlename';
  112. $this->orderAddressMock->expects($this->once())->method('getMiddlename')->willReturn($expected);
  113. $this->assertEquals($expected, $this->model->getMiddlename());
  114. }
  115. public function testGetCustomerId()
  116. {
  117. $expected = 1;
  118. $this->orderAddressMock->expects($this->once())->method('getCustomerId')->willReturn($expected);
  119. $this->assertEquals($expected, $this->model->getCustomerId());
  120. }
  121. public function testGetEmail()
  122. {
  123. $expected = 'test@gmail.com';
  124. $this->orderAddressMock->expects($this->once())->method('getEmail')->willReturn($expected);
  125. $this->assertEquals($expected, $this->model->getEmail());
  126. }
  127. }