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

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 

8 

9 

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 ) 

26 

27 yield order_obj 

28 

29 del order_obj 

30 

31 

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 

85 

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." 

101 

102class TestMetresToFloat: 

103 

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 

119 

120 

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 

132 

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 

148 

149class TestTelToString: 

150 

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" 

155 

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" 

160 

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" 

165 

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" 

178 

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" 

191 

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 == "" 

208 

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] 

215 

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] 

221 

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] 

227 

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] 

233 

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] 

239 

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] 

245 

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] 

251 

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] 

257 

258class TestPompaDzwig: 

259 

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 

275 

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 

289 

290 

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) 

312 

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 

327 

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 

347 

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 

361 

362class TestGetStartTime: 

363 

364 def test_get_start_time(self, order): 

365 result = order.get_start_time() 

366 assert result == datetime.datetime(2025, 1, 1, 9, 40) 

367 

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) 

372 

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 

386 

387class TestGetFinishTime: 

388 

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 

408 

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 

429 

430class TestGetListOfTimeLoads: 

431 

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 

481 

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 

531 

532class TestGetConcellation: 

533 

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 

544 

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 

555 

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 

567 

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 

579 

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 

593 

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 

608 

609class TestGetCheckZaprawa: 

610 

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 

645 

646