Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
PrintShipmentTest.php
Go to the documentation of this file.
1 <?php
7 
9 
10 class PrintShipmentTest extends \PHPUnit\Framework\TestCase
11 {
15  private $contextMock;
16 
20  private $registryMock;
21 
25  private $itemCollectionMock;
26 
30  private $block;
31 
32  protected function setUp()
33  {
34  $this->contextMock = $this->getMockBuilder(\Magento\Framework\View\Element\Template\Context::class)
35  ->disableOriginalConstructor()
36  ->getMock();
37  $this->registryMock = $this->getMockBuilder(\Magento\Framework\Registry::class)
38  ->disableOriginalConstructor()
39  ->getMock();
40 
41  $paymentHelperMock = $this->getMockBuilder(\Magento\Payment\Helper\Data::class)
42  ->disableOriginalConstructor()
43  ->getMock();
44 
45  $addressRendererMock = $this->getMockBuilder(\Magento\Sales\Model\Order\Address\Renderer::class)
46  ->disableOriginalConstructor()
47  ->getMock();
48 
49  $this->block = new \Magento\Sales\Block\Order\PrintShipment(
50  $this->contextMock,
51  $this->registryMock,
52  $paymentHelperMock,
53  $addressRendererMock
54  );
55 
56  $this->itemCollectionMock = $this->getMockBuilder(ItemCollection::class)
57  ->disableOriginalConstructor()
58  ->getMock();
59  }
60 
61  public function testIsPagerDisplayed()
62  {
63  $this->assertFalse($this->block->isPagerDisplayed());
64  }
65 
66  public function testGetItemsNoOrder()
67  {
68  $this->registryMock->expects($this->once())
69  ->method('registry')
70  ->with('current_order')
71  ->willReturn(null);
72  $this->assertEmpty($this->block->getItems());
73  }
74 
75  public function testGetItemsSuccessful()
76  {
77  $orderMock = $this->getMockBuilder(\Magento\Sales\Model\Order::class)
78  ->disableOriginalConstructor()
79  ->getMock();
80  $items = [5, 3, 1];
81 
82  $this->registryMock->expects($this->exactly(2))
83  ->method('registry')
84  ->with('current_order')
85  ->willReturn($orderMock);
86  $orderMock->expects($this->once())
87  ->method('getItemsCollection')
88  ->willReturn($this->itemCollectionMock);
89  $this->itemCollectionMock->expects($this->once())
90  ->method('getItems')
91  ->willReturn($items);
92 
93  $this->assertEquals($items, $this->block->getItems());
94  }
95 }
$items