Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
ShipmentTest.php
Go to the documentation of this file.
1 <?php
8 
9 use \Magento\Sales\Api\OrderRepositoryInterface;
11 
15 class ShipmentTest extends \PHPUnit\Framework\TestCase
16 {
20  protected $orderRepository;
21 
25  protected $shipment;
26 
27  protected function setUp()
28  {
29  $this->orderRepository = $this->createMock(\Magento\Sales\Api\OrderRepositoryInterface::class);
30 
31  $objectManagerHelper = new ObjectManagerHelper($this);
32  $arguments = [
33  'context' => $this->createMock(\Magento\Framework\Model\Context::class),
34  'registry' => $this->createMock(\Magento\Framework\Registry::class),
35  'localeDate' => $this->createMock(
36  \Magento\Framework\Stdlib\DateTime\TimezoneInterface::class
37  ),
38  'dateTime' => $this->createMock(\Magento\Framework\Stdlib\DateTime::class),
39  'orderRepository' => $this->orderRepository,
40  'shipmentItemCollectionFactory' => $this->createMock(
41  \Magento\Sales\Model\ResourceModel\Order\Shipment\Item\CollectionFactory::class
42  ),
43  'trackCollectionFactory' => $this->createMock(
44  \Magento\Sales\Model\ResourceModel\Order\Shipment\Track\CollectionFactory::class
45  ),
46  'commentFactory' => $this->createMock(\Magento\Sales\Model\Order\Shipment\CommentFactory::class),
47  'commentCollectionFactory' => $this->createMock(
48  \Magento\Sales\Model\ResourceModel\Order\Shipment\Comment\CollectionFactory::class
49  ),
50  ];
51  $this->shipment = $objectManagerHelper->getObject(
52  \Magento\Sales\Model\Order\Shipment::class,
54  );
55  }
56 
57  public function testGetOrder()
58  {
59  $orderId = 100000041;
60  $this->shipment->setOrderId($orderId);
61  $entityName = 'shipment';
62  $order = $this->createPartialMock(
63  \Magento\Sales\Model\Order::class,
64  ['load', 'setHistoryEntityName', '__wakeUp']
65  );
66  $this->shipment->setOrderId($orderId);
67  $order->expects($this->atLeastOnce())
68  ->method('setHistoryEntityName')
69  ->with($entityName)
70  ->will($this->returnSelf());
71 
72  $this->orderRepository->expects($this->atLeastOnce())
73  ->method('get')
74  ->will($this->returnValue($order));
75 
76  $this->assertEquals($order, $this->shipment->getOrder());
77  }
78 
79  public function testGetEntityType()
80  {
81  $this->assertEquals('shipment', $this->shipment->getEntityType());
82  }
83 }
$order
Definition: order.php:55
$arguments