PluginProbe
Packeta / trunk
Packeta vtrunk
2.3.2 2.3.1 trunk 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.3.0 1.3.1 1.3.2 1.4 1.4.1 1.4.2 1.4.3 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 All 56 releases
packeta / tests / Core / DummyFactory.php

DummyFactory.php in Packeta trunk, at tests/Core/DummyFactory.php

300 lines 5.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 declare( strict_types=1 );
4
5 namespace Tests\Core;
6
7 use Packetery\Core\Api\Rest\PickupPointValidateRequest;
8 use Packetery\Core\CoreHelper;
9 use Packetery\Core\Entity\Address;
10 use Packetery\Core\Entity\Carrier;
11 use Packetery\Core\Entity\CustomsDeclaration;
12 use Packetery\Core\Entity\CustomsDeclarationItem;
13 use Packetery\Core\Entity\Order;
14 use Packetery\Core\Entity\PickupPoint;
15 use Packetery\Core\Entity\Size;
16 use Packetery\Core\PickupPointProvider\VendorProvider;
17
18 class DummyFactory {
19 public static function createAddress( ?string $houseNumber = null, ?string $county = null ): Address {
20 $address = new Address( 'Dummy street', 'Dummy city', '123 45' );
21 $address->setHouseNumber( $houseNumber );
22 $address->setCounty( $county );
23
24 return $address;
25 }
26
27 public static function createInvalidAddress(): Address {
28 return new Address( null, 'Dummy city', '123 45' );
29 }
30
31 public static function createSize(): Size {
32 return new Size( 300.0, 200.0, 100.0 );
33 }
34
35 public static function createOrderCzPp(): Order {
36 $order = new Order( 'dummyNumber123', self::createCarrierCzechPp() );
37 $order->setName( 'Customer name' );
38 $order->setManualValue( 123.5 );
39 $order->setEshop( 'Sender label' );
40 $order->setWeight( 1.25 );
41
42 return $order;
43 }
44
45 public static function createOrderCzHdIncomplete(): Order {
46 $order = new Order( 'dummyNumber123', self::createCarrierCzechHdRequiresSize() );
47 $order->setName( 'Customer name' );
48 $order->setManualValue( 123.5 );
49 $order->setEshop( 'Sender label' );
50 $order->setWeight( 1.25 );
51
52 return $order;
53 }
54
55 public static function createOrderCzCdIncomplete(): Order {
56 $order = new Order( 'dummyNumber123', self::createCarDeliveryCarrier() );
57 $order->setName( 'Customer name' );
58 $order->setManualValue( 123.5 );
59 $order->setEshop( 'Sender label' );
60 $order->setWeight( 1.25 );
61
62 return $order;
63 }
64
65 public static function createCarrierCzzpoint(): Carrier {
66 return new Carrier(
67 'czzpoint',
68 'czzpoint',
69 true,
70 false,
71 false,
72 false,
73 true,
74 true,
75 false,
76 true,
77 'cz',
78 'CZK',
79 30.0,
80 true,
81 false,
82 true
83 );
84 }
85
86 public static function createCarrierZpointcz(): Carrier {
87 return new Carrier(
88 'zpointcz',
89 'zpointcz',
90 true,
91 false,
92 false,
93 false,
94 true,
95 true,
96 false,
97 true,
98 'cz',
99 'CZK',
100 30.0,
101 true,
102 false,
103 true
104 );
105 }
106
107 public static function createCarrierCzechPp(): Carrier {
108 return new Carrier(
109 'zpoint-cz',
110 'zpoint-cz',
111 true,
112 false,
113 false,
114 false,
115 true,
116 true,
117 false,
118 true,
119 'cz',
120 'CZK',
121 5.0,
122 true,
123 false,
124 true
125 );
126 }
127
128 public static function createCarrierSlovakPp(): Carrier {
129 return new Carrier(
130 'zpoint-sk',
131 'zpoint-sk',
132 true,
133 false,
134 false,
135 false,
136 true,
137 true,
138 false,
139 true,
140 'sk',
141 'EUR',
142 5.0,
143 true,
144 false,
145 true
146 );
147 }
148
149 public static function createCarDeliveryCarrier(): Carrier {
150 return new Carrier(
151 '25061',
152 'CZ Zásilkovna do auta',
153 false,
154 false,
155 true,
156 false,
157 true,
158 true,
159 true,
160 false,
161 'cz',
162 'CZK',
163 5.0,
164 true,
165 false,
166 false
167 );
168 }
169
170 public static function createCarrierCzechHdRequiresSize(): Carrier {
171 return new Carrier(
172 '106',
173 'hd-cz',
174 false,
175 false,
176 false,
177 false,
178 true,
179 true,
180 true,
181 true,
182 'cz',
183 'CZK',
184 5.0,
185 true,
186 true,
187 true
188 );
189 }
190
191 public static function createCarrierGermanHd(): Carrier {
192 return new Carrier(
193 '6373',
194 'DE Hermes HD',
195 false,
196 true,
197 false,
198 false,
199 true,
200 true,
201 true,
202 true,
203 'de',
204 'EUR',
205 30.0,
206 true,
207 false,
208 true
209 );
210 }
211
212 public static function createCarrierGermanPp(): Carrier {
213 return new Carrier(
214 '6828',
215 'DE Hermes PP',
216 true,
217 true,
218 false,
219 false,
220 true,
221 true,
222 true,
223 true,
224 'de',
225 'EUR',
226 30.0,
227 true,
228 false,
229 true
230 );
231 }
232
233 public static function createPickupPoint(): PickupPoint {
234 return new PickupPoint(
235 '123456',
236 'Dummy Place',
237 'Dummy PP',
238 'Dummy city',
239 '123 45',
240 'Dummy street',
241 null,
242 );
243 }
244
245 public static function createVendor(): VendorProvider {
246 return new VendorProvider(
247 'czzpoint',
248 'cz',
249 true,
250 true,
251 'CZK',
252 true,
253 Carrier::VENDOR_GROUP_ZPOINT,
254 );
255 }
256
257 public static function createCustomsDeclaration(): CustomsDeclaration {
258 $customsDeclaration = new CustomsDeclaration(
259 'dummyOrderId123',
260 'dummyEad',
261 1234.5,
262 'dummyInvoiceNumber123',
263 CoreHelper::now(),
264 );
265
266 $customsDeclaration->setItems( [ self::createCustomsDeclarationItem() ] );
267
268 return $customsDeclaration;
269 }
270
271 public static function createCustomsDeclarationItem(): CustomsDeclarationItem {
272 return new CustomsDeclarationItem(
273 'dummyId123',
274 'Dummy customs code',
275 1234.5,
276 'Dummy product name',
277 1,
278 'de',
279 1.25,
280 );
281 }
282
283 public static function getEmptyPickupPointValidateRequest(): PickupPointValidateRequest {
284 return new PickupPointValidateRequest(
285 'dummyPointId',
286 null,
287 null,
288 null,
289 null,
290 null,
291 null,
292 null,
293 null,
294 null,
295 null,
296 null,
297 );
298 }
299 }
300