Coverage for tests/test_order.py: 100%
227 statements
« prev ^ index » next coverage.py v7.8.0, created at 2025-05-25 10:23 +0000
« prev ^ index » next coverage.py v7.8.0, created at 2025-05-25 10:23 +0000
1from datetime import time
2import datetime
3import pytest
4from statistic.order import Order
5from src.settings import inf
6from src.settings import Settings
7import re
10@pytest.fixture(scope="function")
11def order():
12 Order.count_ordres = 0
13 # Create a dummy Order instance for testing
14 order_obj = Order(
15 date_order = "01.01.2025",
16 metres = 0,
17 times = time(hour=10, minute=10),
18 firm = "Test Firm",
19 name = "Test Name",
20 uwagi = "Test Uwagi",
21 przebieg = "Test Przebieg",
22 tel = "123456789",
23 wenz = 1,
24 pompa_dzwig = True
25 )
27 yield order_obj
29 del order_obj
32class TestClassOrder:
33 def test_count_order(self):
34 Order.count_ordres = 0
35 o1 = Order(
36 date_order="01.01.2025",
37 metres=0,
38 times=time(hour=10, minute=10),
39 firm="Test Firm",
40 name="Test Name",
41 uwagi="Test Uwagi",
42 przebieg="Test Przebieg",
43 tel="123456789",
44 wenz=1,
45 pompa_dzwig="pompa"
46 )
47 o2 = Order(
48 date_order="01.01.2025",
49 metres=0,
50 times=time(hour=10, minute=20),
51 firm="Test Firm",
52 name="Test Name2",
53 uwagi="Test Uwagi",
54 przebieg="Test Przebieg",
55 tel="123456789",
56 wenz=1,
57 pompa_dzwig="pompa"
58 )
59 o3 = Order(
60 date_order="01.01.2025",
61 metres=0,
62 times=time(hour=10, minute=30),
63 firm="Test Firm",
64 name="Test Name3",
65 uwagi="Test Uwagi",
66 przebieg="Test Przebieg",
67 tel="123456789",
68 wenz=1,
69 pompa_dzwig="pompa"
70 )
71 o4 = Order(
72 date_order="01.01.2025",
73 metres=0,
74 times=time(hour=10, minute=40),
75 firm="Test Firm",
76 name="Test Name4",
77 uwagi="Test Uwagi",
78 przebieg="Test Przebieg",
79 tel="123456789",
80 wenz=1,
81 pompa_dzwig="pompa"
82 )
83 assert o4.count_ordres == 4
84 del o1, o2, o3, o4
86 def test_how_many(self):
87 Order.count_ordres = 0
88 o5 = Order(
89 date_order="01.01.2025",
90 metres=0,
91 times=time(hour=10, minute=10),
92 firm="Test Firm",
93 name="Test Name",
94 uwagi="Test Uwagi",
95 przebieg="Test Przebieg",
96 tel="123456789",
97 wenz=1,
98 pompa_dzwig="pompa"
99 )
100 assert o5.how_many() == "We have 1 orders."
102class TestMetresToFloat:
104 @pytest.mark.parametrize(("m3","response"),
105 [(0.5, 0.5),
106 (1.2, 1.2),
107 (8.115651515, 8.1),
108 (-12.0, 12.0),
109 (-0.0, 0.0),
110 (0.00000, 0.0),
111 (0.56, 0.6),
112 (0.45, 0.5),
113 (-0.45, 0.5),
114 (0.000004, 0.0)]
115 )
116 def test_float(self, order, m3, response):
117 result = order.convert_to_float(m3)
118 assert result == response
121 @pytest.mark.parametrize(("m3","response"),
122 [(1, 1.0),
123 (150, 150.0),
124 (-1, 1.0),
125 (0, 0.0),
126 (-0.0, 0.0),
127 (-250, 250.0)]
128 )
129 def test_float_from_int(self, order, m3, response):
130 result = order.convert_to_float(m3)
131 assert result == response
133 @pytest.mark.parametrize(("m3","response"),
134 [("1", 0.0),
135 (time, 0.0),
136 (object, 0.0),
137 ([1,], 0.0),
138 ({}, 0.0),
139 ((1,), 0.0),
140 (None, 0.0),
141 (0, 0.0),
142 ("", 0.0),
143 ({"1":1}, 0.0)]
144 )
145 def test_float_not_flot_or_int(self, order, m3, response):
146 result = order.convert_to_float(m3)
147 assert result == response
149class TestTelToString:
151 def test_tel_to_string_with_float(self, order):
152 # Test when input is a float
153 result = order.tel_to_string(123456.0)
154 assert result == "123456"
156 def test_tel_to_string_with_int(self, order):
157 # Test when input is a float
158 result = order.convert_to_string(order.tel_to_string(123456))
159 assert result == "123456"
161 def test_tel_to_string_multi_tel(self, order):
162 # Test when input is a float
163 result = order.tel_to_string("123456 654321")
164 assert result == "123456 654321"
166 @pytest.mark.parametrize(
167 "string",
168 ["123456 \n 654321\n",
169 "123456 \t 654321\n",
170 "123456 \t 654321\n",
171 "123456 654321\n",
172 "\n\n\n\n123456 \t654321\n"]
173 )
174 def test_tel_to_string_multi_tel_n(self, order, string):
175 # Test when input is a float
176 result = order.convert_to_string(order.tel_to_string(string))
177 assert result == "123456 654321"
179 @pytest.mark.parametrize(
180 "string",
181 [" 123456 \n",
182 "123456 \t",
183 "\t\n123456 \t",
184 " \n 123456 \n",
185 "\n\n\t\n\n123456 \t"]
186 )
187 def test_tel_to_string_with_string(self, order, string):
188 # Test when input is a string
189 result = order.convert_to_string(order.tel_to_string(string))
190 assert result == "123456"
192 @pytest.mark.parametrize(
193 "string",
194 ["",
195 None,
196 [],
197 {},
198 (),
199 ["123456"],
200 ("1225ddf2214",),
201 0,
202 0000]
203 )
204 def test_tel_to_string_with_none_and_invalid_type(self, order, string):
205 # Test when input is None
206 result = order.convert_to_string(order.tel_to_string(string))
207 assert result == ""
209class TestGetListCourses:
210 def test_get_list_courses_with_zero_metres(self, order):
211 # Test when metres is 0
212 order.metres = 0
213 result = order.get_list_courses()
214 assert result == [0]
216 def test_get_list_courses_with_exact_division(self, order):
217 # Test when metres is exactly divisible by 8
218 order.metres = 16
219 result = order.get_list_courses()
220 assert result == [8.0, 8.0]
222 def test_get_list_courses_with_remainder_less_than_2(self, order):
223 # Test when remainder is less than 2
224 order.metres = 17
225 result = order.get_list_courses()
226 assert result == [8.0, 7.0, 2.0]
228 def test_get_list_courses_with_remainder_greater_than_or_equal_to_2(self, order):
229 # Test when remainder is greater than or equal to 2
230 order.metres = 18
231 result = order.get_list_courses()
232 assert result == [8.0, 8.0, 2.0]
234 def test_get_list_courses_with_metres_less_than_8(self, order):
235 # Test when metres is less than 8
236 order.metres = 5
237 result = order.get_list_courses()
238 assert result == [5.0]
240 def test_get_list_courses_with_formul_metrs(self, order):
241 # Test when metres is less than 8
242 order.metres = 5 + 10
243 result = order.get_list_courses()
244 assert result == [8.0, 7.0]
246 def test_get_list_courses_with_less_1metr(self, order):
247 # Test when metres less then 1m
248 order.metres = 0.5
249 result = order.get_list_courses()
250 assert result == [0.5]
252 def test_get_list_courses_with_0_metrs(self, order):
253 # Test when metres is less than 8
254 order.metres = 0
255 result = order.get_list_courses()
256 assert result == [0.0]
258class TestPompaDzwig:
260 @pytest.mark.parametrize(
261 "pomp",
262 [True,
263 -5,
264 1.2,
265 "pompa",
266 "ivanof",
267 (1,),
268 [1],
269 {1:"one"}
270 ]
271 )
272 def test_empty_metrs_true(self, order, pomp):
273 result = order.check_pompa_dzwig(pomp, 0)
274 assert True == result
276 @pytest.mark.parametrize(
277 ("pomp", "m", "response"),
278 [(True, -10, True),
279 ('501',10, False),
280 ('P-2 Olszewski pompogruszka bierze beton zał g g 13:10',10, True),
281 ('Niziński ',100, True),
282 ('501',-100, False),
283 ('501',50, False),
284 ]
285 )
286 def test_have_501(self, order, pomp, m, response):
287 result = order.check_pompa_dzwig(pomp, m)
288 assert response == result
291 @pytest.mark.parametrize(
292 ("pomp", "m", "response","cancel"),
293 [(True, -10, True, False),
294 ('501',10, False, False),
295 ('P-2 Olszewski pompogruszka bierze beton zał g g 13:10', 5.5, True, True),
296 ('P-2 Olszewski pompogruszka bierze beton zał g g 13:10', 6, True, False),
297 ('pompogruszka bierze beton zał g g 13:10', 30, True, False),
298 ('P-2 Olszewski pompogruszka bierze beton zał g g 13:10', 4, True, True),
299 ('mpogruszka bierze beton zał g g 13:10', 4, True, False),
300 ('P-2 Olszewski pompogruszka bierze beton zał g g 13:10', 1, True, True),
301 ('P-28 Olszewski Pompogruszka bierze beton zał g 7:00 + plus węże 6mb i 6mb', 2, True, True),
302 ('Niziński ',100, True, False),
303 ('501',-100, False, False),
304 ('501',50, False, False),
305 ]
306 )
307 def test_have_pompogruszka(self, order, pomp, m, response, cancel):
308 order.cancellation = False
309 result_pomp = order.check_pompa_dzwig(pomp, m)
310 result_cancellation = order.cancellation
311 assert (response, cancel) == (result_pomp, result_cancellation)
313 @pytest.mark.parametrize(
314 "pomp",
315 [0,
316 "",
317 None,
318 "501",
319 {},
320 [],
321 ()
322 ]
323 )
324 def test_empty_metrs_false(self, order, pomp):
325 result = order.check_pompa_dzwig(pomp, 0)
326 assert False == result
328 @pytest.mark.parametrize(
329 "m",
330 [0,
331 10,
332 None,
333 50,
334 {},
335 [],
336 "",
337 False,
338 True,
339 -10,
340 -50]
341 )
342 def test_if_pompa_dzwig_empty(self, order, m):
343 order.metres = order.convert_to_float(m)
344 metrs_from_order = order.metres
345 result = order.check_pompa_dzwig('', metrs_from_order)
346 assert False == result
348 @pytest.mark.parametrize(
349 "m",
350 [51,
351 50.1,
352 60,
353 158.3,
354 -60]
355 )
356 def test_if_pompa_dzwig_empty_and_metres_more_50(self, order, m):
357 order.metres = order.convert_to_float(m)
358 metrs_from_order = order.metres
359 result = order.check_pompa_dzwig('', metrs_from_order)
360 assert True == result
362class TestGetStartTime:
364 def test_get_start_time(self, order):
365 result = order.get_start_time()
366 assert result == datetime.datetime(2025, 1, 1, 9, 40)
368 def test_get_start_time_00(self, order):
369 order.times = time(hour=0, minute=0)
370 result = order.get_start_time()
371 assert result == datetime.datetime(2024, 12, 31, 23, 30)
373 @pytest.mark.parametrize(("set_times", "set_date", "response"),
374 [(time(hour=10, minute=10), "01.10.2024", datetime.datetime(2024, 10, 1, 9, 40)),
375 (time(hour=5, minute=10), "01.10.2024", datetime.datetime(2024, 10, 1, 4, 40)),
376 (time(hour=10, minute=0), "01.10.2024", datetime.datetime(2024, 10, 1, 9, 30)),
377 (time(hour=10, minute=10), "02.10.2025", datetime.datetime(2025, 10, 2, 9, 40)),
378 (time(hour=10, minute=10), "01.09.2024", datetime.datetime(2024, 9, 1, 9, 40)),
379 (time(hour=0, minute=0), "01.01.2024", datetime.datetime(2023, 12, 31, 23, 30))]
380 )
381 def test_get_start_time_change_data_order(self, order, set_times, set_date, response):
382 order.times = set_times
383 order.date_order = set_date
384 result = order.get_start_time()
385 assert result == response
387class TestGetFinishTime:
389 @pytest.mark.parametrize(("set_times", "set_date", "m3", "response"),
390 [(time(hour=10, minute=10), "01.10.2024", 18.0, datetime.datetime(2024, 10, 1, 10, 12)),
391 (time(hour=5, minute=10), "01.10.2024", 100.0, datetime.datetime(2024, 10, 1, 7, 52)),
392 (time(hour=10, minute=0), "01.10.2024", 8.0, datetime.datetime(2024, 10, 1, 9, 30)),
393 (time(hour=10, minute=0), "01.10.2024", 8.1, datetime.datetime(2024, 10, 1, 9, 44)),
394 (time(hour=10, minute=10), "02.10.2025", 25.0, datetime.datetime(2025, 10, 2, 10, 26)),
395 (time(hour=10, minute=10), "01.09.2024", 12.0, datetime.datetime(2024, 9, 1, 9, 56)),
396 (time(hour=0, minute=0), "01.01.2024", 45.0, datetime.datetime(2024, 1, 1, 0, 50))]
397 )
398 def test_finish_for_pomp(self, order, set_times, set_date, m3, response):
399 """this test will be fail if Settings.unloading_time_for_pomp changed
400 """
401 order.times = set_times
402 order.date_order = set_date
403 order.metres = m3
404 order.list_of_courses = order.get_list_courses()
405 order.start_time = order.get_start_time()
406 result = order.get_finish_time_and_form_list_times_of_loads()
407 assert result == response
409 @pytest.mark.parametrize(("set_times", "set_date", "m3", "response"),
410 [(time(hour=10, minute=10), "01.10.2024", 18.0, datetime.datetime(2024, 10, 1, 11, 3, 12)),
411 (time(hour=5, minute=10), "01.10.2024", 2.0, datetime.datetime(2024, 10, 1, 4, 40)),
412 (time(hour=10, minute=0), "01.10.2024", 8.0, datetime.datetime(2024, 10, 1, 9, 30)),
413 (time(hour=10, minute=0), "01.10.2024", 8.1, datetime.datetime(2024, 10, 1, 10, 6, 24)),
414 (time(hour=10, minute=10), "02.10.2025", 25.0, datetime.datetime(2025, 10, 2, 11, 39, 36)),
415 (time(hour=10, minute=10), "01.09.2024", 16.6, datetime.datetime(2024, 9, 1, 10, 58)),
416 (time(hour=0, minute=0), "01.01.2024", 45.0, datetime.datetime(2024, 1, 1, 2, 58))]
417 )
418 def test_finish_for_dzwig(self, order, set_times, set_date, m3, response):
419 """this test will be fail if Settings.unloading_time_for_crane changed
420 """
421 order.pompa_dzwig = False
422 order.times = set_times
423 order.date_order = set_date
424 order.metres = m3
425 order.list_of_courses = order.get_list_courses()
426 order.start_time = order.get_start_time()
427 result = order.get_finish_time_and_form_list_times_of_loads()
428 assert result == response
430class TestGetListOfTimeLoads:
432 @pytest.mark.parametrize(("set_times", "set_date", "m3", "response"),
433 [(time(hour=10, minute=10), "01.10.2024", 18.0, [datetime.datetime(2024, 10, 1, 9, 40),
434 datetime.datetime(2024, 10, 1, 9, 56),
435 datetime.datetime(2024, 10, 1, 10, 12)]),
436 (time(hour=5, minute=10), "01.10.2024", 100.0, [datetime.datetime(2024, 10, 1, 4, 40),
437 datetime.datetime(2024, 10, 1, 4, 56),
438 datetime.datetime(2024, 10, 1, 5, 12),
439 datetime.datetime(2024, 10, 1, 5, 28),
440 datetime.datetime(2024, 10, 1, 5, 44),
441 datetime.datetime(2024, 10, 1, 6, 0),
442 datetime.datetime(2024, 10, 1, 6, 16),
443 datetime.datetime(2024, 10, 1, 6, 32),
444 datetime.datetime(2024, 10, 1, 6, 48),
445 datetime.datetime(2024, 10, 1, 7, 4),
446 datetime.datetime(2024, 10, 1, 7, 20),
447 datetime.datetime(2024, 10, 1, 7, 36),
448 datetime.datetime(2024, 10, 1, 7, 52)]),
449 (time(hour=10, minute=0), "01.10.2024", 8.0, [datetime.datetime(2024, 10, 1, 9, 30)]),
450 (time(hour=10, minute=0), "01.10.2024", 8.1, [datetime.datetime(2024, 10, 1, 9, 30),
451 datetime.datetime(2024, 10, 1, 9, 44)]),
452 (time(hour=10, minute=10), "02.10.2025", 25.0, [datetime.datetime(2025, 10, 2, 9, 40),
453 datetime.datetime(2025, 10, 2, 9, 56),
454 datetime.datetime(2025, 10, 2, 10, 12),
455 datetime.datetime(2025, 10, 2, 10, 26)]),
456 (time(hour=10, minute=10), "01.09.2024", 12.0, [datetime.datetime(2024, 9, 1, 9, 40),
457 datetime.datetime(2024, 9, 1, 9, 56)]),
458 (time(hour=10, minute=10), "01.09.2024", 0.0, []),
459 (time(hour=0, minute=0), "01.01.2024", 50.0, [datetime.datetime(2023, 12, 31, 23, 30),
460 datetime.datetime(2023, 12, 31, 23, 46),
461 datetime.datetime(2024, 1, 1, 0, 2),
462 datetime.datetime(2024, 1, 1, 0, 18),
463 datetime.datetime(2024, 1, 1, 0, 34),
464 datetime.datetime(2024, 1, 1, 0, 50),
465 datetime.datetime(2024, 1, 1, 1, 6)])]
466 )
467 def test_form_list_of_load_pomp(self, order, set_times, set_date, m3, response):
468 """this test will be fail if Settings.unloading_time_for_pomp changed
469 """
470 order.times = set_times
471 order.pompa_dzwig = True
472 order.date_order = set_date
473 order.metres = m3
474 order.list_of_courses = order.get_list_courses()
475 order.start_time = order.get_start_time()
476 order.list_of_loads = []
477 order.get_finish_time_and_form_list_times_of_loads()
478 result = order.list_of_loads
479 # inf(result)
480 assert result == response
482 @pytest.mark.parametrize(("set_times", "set_date", "m3", "response"),
483 [(time(hour=10, minute=10), "01.10.2024", 18.0, [datetime.datetime(2024, 10, 1, 9, 40),
484 datetime.datetime(2024, 10, 1, 10, 21, 36),
485 datetime.datetime(2024, 10, 1, 11, 3, 12)]),
486 (time(hour=5, minute=10), "01.10.2024", 100.0, [datetime.datetime(2024, 10, 1, 4, 40),
487 datetime.datetime(2024, 10, 1, 5, 21, 36),
488 datetime.datetime(2024, 10, 1, 6, 3, 12),
489 datetime.datetime(2024, 10, 1, 6, 44, 48),
490 datetime.datetime(2024, 10, 1, 7, 26, 24),
491 datetime.datetime(2024, 10, 1, 8, 8),
492 datetime.datetime(2024, 10, 1, 8, 49, 36),
493 datetime.datetime(2024, 10, 1, 9, 31, 12),
494 datetime.datetime(2024, 10, 1, 10, 12, 48),
495 datetime.datetime(2024, 10, 1, 10, 54, 24),
496 datetime.datetime(2024, 10, 1, 11, 36),
497 datetime.datetime(2024, 10, 1, 12, 17, 36),
498 datetime.datetime(2024, 10, 1, 12, 59, 12)]),
499 (time(hour=10, minute=0), "01.10.2024", 8.0, [datetime.datetime(2024, 10, 1, 9, 30)]),
500 (time(hour=10, minute=0), "01.10.2024", 8.1, [datetime.datetime(2024, 10, 1, 9, 30),
501 datetime.datetime(2024, 10, 1, 10, 6, 24)]),
502 (time(hour=10, minute=10), "02.10.2025", 25.0, [datetime.datetime(2025, 10, 2, 9, 40),
503 datetime.datetime(2025, 10, 2, 10, 21, 36),
504 datetime.datetime(2025, 10, 2, 11, 3, 12),
505 datetime.datetime(2025, 10, 2, 11, 39, 36)]),
506 (time(hour=10, minute=10), "01.09.2024", 12.0, [datetime.datetime(2024, 9, 1, 9, 40),
507 datetime.datetime(2024, 9, 1, 10, 21, 36)]),
508 (time(hour=10, minute=10), "01.09.2024", 0.0, []),
509 (time(hour=0, minute=0), "01.01.2024", 50.0, [datetime.datetime(2023, 12, 31, 23, 30),
510 datetime.datetime(2024, 1, 1, 0, 11, 36),
511 datetime.datetime(2024, 1, 1, 0, 53, 12),
512 datetime.datetime(2024, 1, 1, 1, 34, 48),
513 datetime.datetime(2024, 1, 1, 2, 16, 24),
514 datetime.datetime(2024, 1, 1, 2, 58),
515 datetime.datetime(2024, 1, 1, 3, 39, 36)])]
516 )
517 def test_form_list_of_load_dzwig(self, order, set_times, set_date, m3, response):
518 """this test will be fail if Settings.unloading_time_for_pomp changed
519 """
520 order.times = set_times
521 order.pompa_dzwig = False
522 order.date_order = set_date
523 order.metres = m3
524 order.list_of_courses = order.get_list_courses()
525 order.start_time = order.get_start_time()
526 order.list_of_loads = []
527 order.get_finish_time_and_form_list_times_of_loads()
528 result = order.list_of_loads
529 # inf(result)
530 assert result == response
532class TestGetConcellation:
534 @pytest.mark.parametrize("pszebieg",
535 ["kjkksk kdjjd odwołano sdkkkksdk",
536 "odwołano 12.3.44",
537 "gsgsg sggs odwołano",
538 "odwołano 12.3.44"]
539 )
540 def test_consellation_in_przebeg_true(self, order, pszebieg):
541 order.przebieg = pszebieg
542 result = order.get_cancellation()
543 assert result == True
545 @pytest.mark.parametrize("pszebieg",
546 ["kjkksk kdjjd oddwocłano sdkkkksdk",
547 "oddwołano 12.3.44",
548 "gsgsg sggs odxwosłano",
549 "odwxxołano 12.3.44"]
550 )
551 def test_consellation_in_przebeg_false(self, order, pszebieg):
552 order.przebieg = pszebieg
553 result = order.get_cancellation()
554 assert result == False
556 @pytest.mark.parametrize(("pszebieg", "uwagi"),
557 [("kjkksk kdjjd odwołano sdkkkksdk", "qqqw wq sds vfvd ds"),
558 ("odwołano 12.3.44", "qqqw wq sds vfvd ds"),
559 ("gsgsg sggs odwołano", "qqqw wq sds vfvd ds"),
560 ("odwołano 12.3.44", "qqqw wq sds vfvd ds")]
561 )
562 def test_consellation_in_przebeg_uwagi_true(self, order, pszebieg, uwagi):
563 order.przebieg = pszebieg
564 order.uwagi = uwagi
565 result = order.get_cancellation()
566 assert result == True
568 @pytest.mark.parametrize(("pszebieg", "uwagi"),
569 [("kjkksk kdjjd odwrosłano sdkkkksdk", "qqqw wq sds vfvd ds"),
570 ("odwsołano 12.3.44", "qqqw wq sds vfvd ds"),
571 ("gsgsg sggs odfwołano", "qqqw wq sds vfvd ds"),
572 ("odswołano 12.3.44", "qqqw wq sds vfvd ds")]
573 )
574 def test_consellation_in_przebeg_uwagi_false(self, order, pszebieg, uwagi):
575 order.przebieg = pszebieg
576 order.uwagi = uwagi
577 result = order.get_cancellation()
578 assert result == False
580 @pytest.mark.parametrize(("uwagi", "pszebieg"),
581 [("kjkksk kdjjd odwołano sdkkkksdk", "qqqw wq sds vfvd ds"),
582 ("odwołano 12.3.44", "qqqw wq sds vfvd ds"),
583 ("gsgsg sggs odwołano", "qqqw wq sds vfvd ds"),
584 ("", "sgsg sggs odwołanoqqqw wq sds vfvd ds"),
585 ("gsgsg sggs odwołano", ""),
586 ("odwołano 12.3.44", "qqqw wq sds vfvd ds")]
587 )
588 def test_consellation_in_uwagi_przebeg_true(self, order, pszebieg, uwagi):
589 order.przebieg = pszebieg
590 order.uwagi = uwagi
591 result = order.get_cancellation()
592 assert result == True
594 @pytest.mark.parametrize(("uwagi", "pszebieg"),
595 [("kjkksk kdjjd odwrosłano sdkkkksdk", "qqqw wq sds vfvd ds"),
596 ("odwsołano 12.3.44", "qqqw wq sds vfvd ds"),
597 ("gsgsg sggs odfwołano", "qqqw wq sds vfvd ds"),
598 ("gsgsg sggs odfwołano", ""),
599 ("", ""),
600 ("", "gsgsg sggs odfwołano"),
601 ("odswołano 12.3.44", "qqqw wq sds vfvd ds")]
602 )
603 def test_consellation_in_uwagi_przebeg_false(self, order, pszebieg, uwagi):
604 order.przebieg = pszebieg
605 order.uwagi = uwagi
606 result = order.get_cancellation()
607 assert result == False
609class TestGetCheckZaprawa:
611 @pytest.mark.parametrize(("list_of_courses","times", "name", "response"),
612 [([0.0], time(8, 14), "ow", False),
613 ([0.0], time(8, 14), "owocowa", True),
614 ([1.0], time(8, 14), "owoc owoc", True),
615 ([1.0], time(8, 14), " owWoWOWOwO ", True),
616 ([1.0], time(8, 14), "oW", False),
617 ([2.0], time(8, 14), "oW", False),
618 ([3.0], time(8, 14), "oW", False),
619 ([4.0], time(8, 14), "oW", False),
620 ([5.0], time(8, 14), "oW", False),
621 ([6.0], time(8, 14), "oW", False),
622 ([7.0], time(8, 14), "oW", False),
623 ([8.0], time(8, 14), "oW", False),
624 ([1.0], time(8, 14), "owocy morza", True),
625 ([2.0], time(8, 14), "owocy morza", True),
626 ([3.0], time(8, 14), "owocy morza", True),
627 ([4.0], time(8, 14), "owocy morza", True),
628 ([5.0], time(8, 14), "owocy morza", True),
629 ([6.0], time(8, 14), "owocy morza", False),
630 ([7.0], time(8, 14), "owocy morza", False),
631 ([8.0], time(8, 14), "owocy morza", False),
632 ([1.0], time(9, 14), "owocy morza", False),
633 ([2.0], time(8, 15), "owocy morza", False),
634 ([3.0], time(18, 14), "owocy morza", False),
635 ([4.0], time(8, 14), "", True),
636 ([5.0], time(8, 14), "owocy morza", True),
637 ([6.0], time(8, 14), "ow", False)]
638 )
639 def test_check_zaprawa(self, order, list_of_courses, times, name, response):
640 order.list_of_courses = list_of_courses
641 order.times = times
642 order.name = name
643 result = order.check_zaprawa()
644 assert result == response