Commit b6d35b312128e6d6ef3c86dfab5f1725046581b2

Authored by Taras Kozlovskyi
Committed by Andrew Yanovych
1 parent b48fcd05

Implement date compare with dateutils

@@ -58,19 +58,19 @@ ${question_id} 0 @@ -58,19 +58,19 @@ ${question_id} 0
58 58
59 Відображення закінчення періоду уточнення оголошеного тендера 59 Відображення закінчення періоду уточнення оголошеного тендера
60 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис основних даних оголошеного тендера 60 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис основних даних оголошеного тендера
61 - Звірити поле тендера ${provider} enquiryPeriod.endDate 61 + Звірити дату ${provider} enquiryPeriod.endDate
62 62
63 Відображення початоку періоду прийому пропозицій оголошеного тендера 63 Відображення початоку періоду прийому пропозицій оголошеного тендера
64 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис основних даних оголошеного тендера 64 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис основних даних оголошеного тендера
65 - Звірити поле тендера ${provider} tenderPeriod.startDate 65 + Звірити дату ${provider} tenderPeriod.startDate
66 66
67 Відображення закінчення періоду прийому пропозицій оголошеного тендера 67 Відображення закінчення періоду прийому пропозицій оголошеного тендера
68 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис основних даних оголошеного тендера 68 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис основних даних оголошеного тендера
69 - Звірити поле тендера ${provider} tenderPeriod.endDate 69 + Звірити дату ${provider} tenderPeriod.endDate
70 70
71 Відображення мінімального кроку оголошеного тендера 71 Відображення мінімального кроку оголошеного тендера
72 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис основних даних оголошеного тендера 72 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис основних даних оголошеного тендера
73 - Звірити поле тендера ${provider} minimalStep.amount 73 + Звірити поле тендера ${provider} minimalStep.amount
74 74
75 Відображення опису позицій закупівлі однопредметного тендера 75 Відображення опису позицій закупівлі однопредметного тендера
76 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис полів пердметів однопредметного тендера 76 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис полів пердметів однопредметного тендера
@@ -78,7 +78,7 @@ ${question_id} 0 @@ -78,7 +78,7 @@ ${question_id} 0
78 78
79 Відображення дати доставки позицій закупівлі однопредметного тендера 79 Відображення дати доставки позицій закупівлі однопредметного тендера
80 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис полів пердметів однопредметного тендера 80 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис полів пердметів однопредметного тендера
81 - Звірити поле тендера ${provider} items[${item_id}].deliveryDate.endDate 81 + Звірити дату ${provider} items[${item_id}].deliveryDate.endDate
82 82
83 Відображення координат широти доставки позицій закупівлі однопредметного тендера 83 Відображення координат широти доставки позицій закупівлі однопредметного тендера
84 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис полів пердметів однопредметного тендера 84 [Tags] Owner_Tests ${USERS.users['${tender_owner}'].broker}: Запис полів пердметів однопредметного тендера
@@ -10,6 +10,7 @@ from robot.errors import HandlerExecutionFailed @@ -10,6 +10,7 @@ from robot.errors import HandlerExecutionFailed
10 from datetime import datetime, timedelta, date 10 from datetime import datetime, timedelta, date
11 from dateutil.parser import parse 11 from dateutil.parser import parse
12 from dateutil.tz import tzlocal 12 from dateutil.tz import tzlocal
  13 +from pytz import timezone
13 from dpath.util import set as xpathset 14 from dpath.util import set as xpathset
14 from jsonpath_rw import parse as parse_path 15 from jsonpath_rw import parse as parse_path
15 import time 16 import time
@@ -19,6 +20,9 @@ from .initial_data import ( @@ -19,6 +20,9 @@ from .initial_data import (
19 auction_bid, prom_test_tender_data 20 auction_bid, prom_test_tender_data
20 ) 21 )
21 22
  23 +TIMEZONE = timezone('Europe/Kiev')
  24 +
  25 +
22 def change_state(arguments): 26 def change_state(arguments):
23 try: 27 try:
24 if arguments[0] == "shouldfail": 28 if arguments[0] == "shouldfail":
@@ -30,12 +34,16 @@ def change_state(arguments): @@ -30,12 +34,16 @@ def change_state(arguments):
30 def prepare_prom_test_tender_data(): 34 def prepare_prom_test_tender_data():
31 return munchify({'data': prom_test_tender_data()}) 35 return munchify({'data': prom_test_tender_data()})
32 36
33 -def compare_date (isodate, broker_date):  
34 - iso_dt=parse_date(isodate)  
35 - br_dt=datetime.strptime(broker_date, "%d-%m-%Y, %H:%M")  
36 - br_dt_tz=br_dt.replace(tzinfo = iso_dt.tzinfo)  
37 - delta = (iso_dt-br_dt_tz).total_seconds()  
38 - if delta > 60: 37 +def compare_date(data1, data2):
  38 + data1=parse(data1)
  39 + data2=parse(data2)
  40 + if data1.tzinfo is None:
  41 + data1 = TIMEZONE.localize(data1)
  42 + if data2.tzinfo is None:
  43 + data2 = TIMEZONE.localize(data2)
  44 +
  45 + delta = (data1-data2).total_seconds()
  46 + if abs(delta) > 60:
39 return False 47 return False
40 return True 48 return True
41 49
@@ -31,6 +31,7 @@ setup(name='op_robot_tests', @@ -31,6 +31,7 @@ setup(name='op_robot_tests',
31 'dpath', 31 'dpath',
32 'jsonpath-rw', 32 'jsonpath-rw',
33 'dateutils', 33 'dateutils',
  34 + 'pytz',
34 'parse' 35 'parse'
35 ], 36 ],
36 entry_points={ 37 entry_points={
Please register or login to post a comment