1
+ <?php
2
+ /**
3
+ * Copyright © Magento, Inc. All rights reserved.
4
+ * See COPYING.txt for license details.
5
+ */
6
+
7
+ namespace Magento \Quote \Test \Unit \Model \ResourceModel ;
8
+
9
+ class QuoteTest extends \PHPUnit \Framework \TestCase
10
+ {
11
+ /**
12
+ * @var \Magento\Quote\Model\Quote|\PHPUnit_Framework_MockObject_MockObject
13
+ */
14
+ private $ quoteMock ;
15
+
16
+ /**
17
+ * @var \Magento\SalesSequence\Model\Manager|\PHPUnit_Framework_MockObject_MockObject
18
+ */
19
+ private $ sequenceManagerMock ;
20
+
21
+ /**
22
+ * @var \Magento\Framework\DB\Sequence\SequenceInterface|\PHPUnit_Framework_MockObject_MockObject
23
+ */
24
+ private $ sequenceMock ;
25
+
26
+ /**
27
+ * @var \Magento\Sales\Model\Order|\PHPUnit_Framework_MockObject_MockObject
28
+ */
29
+ private $ storeMock ;
30
+
31
+ /**
32
+ * @var \Magento\Quote\Model\ResourceModel\Quote
33
+ */
34
+ private $ quote ;
35
+
36
+ /**
37
+ * {@inheritdoc}
38
+ */
39
+ protected function setUp ()
40
+ {
41
+ $ context = $ this ->getMockBuilder (\Magento \Framework \Model \ResourceModel \Db \Context::class)
42
+ ->disableOriginalConstructor ()
43
+ ->getMock ();
44
+ $ snapshot = $ this ->getMockBuilder (\Magento \Framework \Model \ResourceModel \Db \VersionControl \Snapshot::class)
45
+ ->disableOriginalConstructor ()
46
+ ->getMock ();
47
+ $ entityRelationComposite = $ this ->getMockBuilder (\Magento \Framework \Model \ResourceModel \Db \VersionControl \RelationComposite::class)
48
+ ->disableOriginalConstructor ()
49
+ ->getMock ();
50
+ $ this ->quoteMock = $ this ->getMockBuilder (\Magento \Quote \Model \Quote::class)
51
+ ->disableOriginalConstructor ()
52
+ ->getMock ();
53
+ $ this ->sequenceManagerMock = $ this ->getMockBuilder (\Magento \SalesSequence \Model \Manager::class)
54
+ ->disableOriginalConstructor ()
55
+ ->getMock ();
56
+ $ this ->sequenceMock = $ this ->getMockBuilder (\Magento \Framework \DB \Sequence \SequenceInterface::class)
57
+ ->disableOriginalConstructor ()
58
+ ->getMock ();
59
+ $ this ->storeMock = $ this ->getMockBuilder (\Magento \Sales \Model \Order::class)
60
+ ->disableOriginalConstructor ()
61
+ ->getMock ();
62
+ $ this ->quote = new \Magento \Quote \Model \ResourceModel \Quote (
63
+ $ context ,
64
+ $ snapshot ,
65
+ $ entityRelationComposite ,
66
+ $ this ->sequenceManagerMock ,
67
+ null
68
+ );
69
+ }
70
+
71
+ /**
72
+ * @param $entityType
73
+ * @param $storeId
74
+ * @dataProvider getReservedOrderIdDataProvider
75
+ */
76
+ public function testGetReservedOrderId ($ entityType , $ storeId )
77
+ {
78
+ $ this ->sequenceManagerMock ->expects ($ this ->once ())
79
+ ->method ('getSequence ' )
80
+ ->with (\Magento \Sales \Model \Order::ENTITY , $ storeId )
81
+ ->willReturn ($ this ->sequenceMock );
82
+ $ this ->quoteMock ->expects ($ this ->once ())
83
+ ->method ('getStore ' )
84
+ ->willReturn ($ this ->storeMock );
85
+ $ this ->storeMock ->expects ($ this ->once ())
86
+ ->method ('getStoreId ' )
87
+ ->willReturn ($ storeId );
88
+ $ this ->sequenceMock ->expects ($ this ->once ())
89
+ ->method ('getNextValue ' );
90
+
91
+ $ this ->quote ->getReservedOrderId ($ this ->quoteMock );
92
+ }
93
+
94
+ /**
95
+ * @return array
96
+ */
97
+ public function getReservedOrderIdDataProvider (): array
98
+ {
99
+ return [
100
+ [\Magento \Sales \Model \Order::ENTITY , 1 ],
101
+ [\Magento \Sales \Model \Order::ENTITY , 2 ],
102
+ [\Magento \Sales \Model \Order::ENTITY , 3 ]
103
+ ];
104
+ }
105
+ }
0 commit comments