Commit 9c7cd4dfb7e9410b85a4694e9c39382e71d3694f

Authored by alexdiatlov
Committed by GitHub
2 parents 61666928 4ee0bcbe

Merge pull request #239 from ProzorroUKR/amcu

Amcu
  1 +coding: utf-8
1 2 *** Settings ***
2 3 Library op_robot_tests.tests_files.service_keywords
3 4 Library Collections
... ... @@ -1110,21 +1111,35 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status
1110 1111 Звірити поле тендера із значенням ${username} ${TENDER['TENDER_UAID']} ${USERS.users['${provider}'].lots_${lot_index}_question_data.question.data.${field}} ${field} ${USERS.users['${provider}'].lots_${lot_index}_question_data.question_id}
1111 1112
1112 1113 ##############################################################################################
1113   -# COMPLAINTS
  1114 +# COMPLAINTS/CLAIMS
1114 1115 ##############################################################################################
1115 1116
1116   -
1117 1117 Можливість створити чернетку вимоги про виправлення умов закупівлі
1118 1118 ${claim}= Підготувати дані для подання вимоги
1119   - ${complaintID}= Run As ${provider}
  1119 + ${claimID}= Run As ${provider}
1120 1120 ... Створити чернетку вимоги про виправлення умов закупівлі
1121 1121 ... ${TENDER['TENDER_UAID']}
1122 1122 ... ${claim}
1123 1123 ${claim_data}= Create Dictionary
1124 1124 ... claim=${claim}
1125   - ... complaintID=${complaintID}
  1125 + ... complaintID=${claimID}
1126 1126 ${claim_data}= munch_dict arg=${claim_data}
1127 1127 Set To Dictionary ${USERS.users['${provider}']} tender_claim_data ${claim_data}
  1128 + Log ${USERS.users['${provider}'].tender_claim_data}
  1129 +
  1130 +
  1131 +Можливість створити чернетку скарги про виправлення умов закупівлі
  1132 + ${complaint}= Підготувати дані для подання скарги
  1133 + ${complaintID}= Run As ${provider}
  1134 + ... Створити чернетку скарги про виправлення умов закупівлі
  1135 + ... ${TENDER['TENDER_UAID']}
  1136 + ... ${complaint}
  1137 + ${complaint_data}= Create Dictionary
  1138 + ... complaint=${complaint}
  1139 + ... complaintID=${complaintID}
  1140 + ${complaint_data}= munch_dict arg=${complaint_data}
  1141 + Set To Dictionary ${USERS.users['${provider}']} tender_complaint_data ${complaint_data}
  1142 + Log ${USERS.users['${provider}'].tender_complaint_data}
1128 1143
1129 1144
1130 1145 Можливість створити чернетку вимоги про виправлення умов ${lot_index} лоту
... ... @@ -1142,6 +1157,287 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status
1142 1157 Set To Dictionary ${USERS.users['${provider}']} lot_claim_data ${claim_data}
1143 1158
1144 1159
  1160 +Можливість створити чернетку скарги про виправлення умов ${lot_index} лоту
  1161 + ${complaint}= Підготувати дані для подання скарги
  1162 + ${complaintID}= Run As ${provider}
  1163 + ... Створити чернетку скарги про виправлення умов лоту
  1164 + ... ${TENDER['TENDER_UAID']}
  1165 + ... ${complaint}
  1166 + ${complaint_data}= Create Dictionary
  1167 + ... complaint=${complaint}
  1168 + ... complaintID=${complaintID}
  1169 + ${complaint_data}= munch_dict arg=${complaint_data}
  1170 + Set To Dictionary ${USERS.users['${provider}']} lot_complaint_data ${complaint_data}
  1171 + Log ${USERS.users['${provider}'].lot_complaint_data}
  1172 +
  1173 +
  1174 +Додати документ до вимоги про виправлення умов закупівлі тендера
  1175 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  1176 + Run As ${provider}
  1177 + ... Завантажити документацію до вимоги
  1178 + ... ${TENDER['TENDER_UAID']}
  1179 + ... ${USERS.users['${provider}']['tender_claim_data']['complaintID']}
  1180 + ... ${file_path}
  1181 + ${doc_id}= get_id_from_string ${file_name}
  1182 + ${claim_doc}= Create Dictionary
  1183 + ... doc_name=${file_name}
  1184 + ... doc_id=${doc_id}
  1185 + ... doc_content=${file_content}
  1186 + ${claim_doc}= munch_dict arg=${claim_doc}
  1187 + Set To Dictionary ${USERS.users['${provider}'].tender_claim_data} documents ${claim_doc}
  1188 + Remove File ${file_path}
  1189 + Log ${USERS.users['${provider}'].tender_claim_data}
  1190 +
  1191 +
  1192 +Додати документ до вимоги про виправлення умов закупівлі лоту
  1193 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  1194 + Run As ${provider}
  1195 + ... Завантажити документацію до вимоги
  1196 + ... ${TENDER['TENDER_UAID']}
  1197 + ... ${USERS.users['${provider}']['lot_claim_data']['complaintID']}
  1198 + ... ${file_path}
  1199 + ${doc_id}= get_id_from_string ${file_name}
  1200 + ${claim_doc}= Create Dictionary
  1201 + ... doc_name=${file_name}
  1202 + ... doc_id=${doc_id}
  1203 + ... doc_content=${file_content}
  1204 + ${claim_doc}= munch_dict arg=${claim_doc}
  1205 + Set To Dictionary ${USERS.users['${provider}'].lot_claim_data} documents ${claim_doc}
  1206 + Remove File ${file_path}
  1207 + Log ${USERS.users['${provider}'].lot_claim_data}
  1208 +
  1209 +
  1210 +Додати документ до скарги про виправлення умов закупівлі
  1211 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  1212 + Run As ${provider}
  1213 + ... Завантажити документацію до вимоги
  1214 + ... ${TENDER['TENDER_UAID']}
  1215 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1216 + ... ${file_path}
  1217 + ${doc_id}= get_id_from_string ${file_name}
  1218 + ${complaint_doc}= Create Dictionary
  1219 + ... doc_name=${file_name}
  1220 + ... doc_id=${doc_id}
  1221 + ... doc_content=${file_content}
  1222 + ${claim_doc}= munch_dict arg=${complaint_doc}
  1223 + Set To Dictionary ${USERS.users['${provider}'].tender_complaint_data} documents ${complaint_doc}
  1224 + Remove File ${file_path}
  1225 + Log ${USERS.users['${provider}'].tender_complaint_data}
  1226 +
  1227 +
  1228 +Додати документ до скарги про виправлення умов закупівлі лоту
  1229 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  1230 + Run As ${provider}
  1231 + ... Завантажити документацію до вимоги
  1232 + ... ${TENDER['TENDER_UAID']}
  1233 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1234 + ... ${file_path}
  1235 + ${doc_id}= get_id_from_string ${file_name}
  1236 + ${complaint_doc}= Create Dictionary
  1237 + ... doc_name=${file_name}
  1238 + ... doc_id=${doc_id}
  1239 + ... doc_content=${file_content}
  1240 + ${claim_doc}= munch_dict arg=${complaint_doc}
  1241 + Set To Dictionary ${USERS.users['${provider}'].tender_complaint_data} documents ${complaint_doc}
  1242 + Remove File ${file_path}
  1243 + Log ${USERS.users['${provider}'].tender_complaint_data}
  1244 +
  1245 +
  1246 +Можливість подати вимогу
  1247 + ${data}= Create Dictionary status=claim
  1248 + ${confirmation_data}= Create Dictionary data=${data}
  1249 + Run As ${provider}
  1250 + ... Подати вимогу
  1251 + ... ${TENDER['TENDER_UAID']}
  1252 + ... ${USERS.users['${provider}']['tender_claim_data']['complaintID']}
  1253 + ... ${confirmation_data}
  1254 + Log ${USERS.users['${provider}'].tender_claim_data}
  1255 +
  1256 +
  1257 +Можливість подати скаргу
  1258 + ${data}= Create Dictionary status=pending
  1259 + ${confirmation_data}= Create Dictionary data=${data}
  1260 + Run As ${provider}
  1261 + ... Подати скаргу
  1262 + ... ${TENDER['TENDER_UAID']}
  1263 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1264 + ... ${confirmation_data}
  1265 + Log ${USERS.users['${provider}'].tender_complaint_data}
  1266 +
  1267 +
  1268 +Можливість подати скаргу на визначення ${award_index} переможця
  1269 + ${data}= Create Dictionary status=pending
  1270 + ${confirmation_data}= Create Dictionary data=${data}
  1271 + Run As ${provider}
  1272 + ... Змінити статус скарги на визначення переможця
  1273 + ... ${TENDER['TENDER_UAID']}
  1274 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1275 + ... ${award_index}
  1276 + ... ${confirmation_data}
  1277 +
  1278 +
  1279 +Прийняти скаргу до розгляду
  1280 + ${confirmation_data}= Підготувати дані для прийняття скарги до розгляду
  1281 + Run As ${amcu_user}
  1282 + ... Змінити статус скарги
  1283 + ... ${TENDER['TENDER_UAID']}
  1284 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1285 + ... ${confirmation_data}
  1286 +
  1287 +
  1288 +Прийняти скаргу на визначення ${award_index} переможця до розгляду
  1289 + ${confirmation_data}= Підготувати дані для прийняття скарги до розгляду
  1290 + Run As ${amcu_user}
  1291 + ... Змінити статус скарги на визначення переможця
  1292 + ... ${TENDER['TENDER_UAID']}
  1293 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1294 + ... ${award_index}
  1295 + ... ${confirmation_data}
  1296 +
  1297 +
  1298 +Задовільнити скаргу
  1299 + ${data}= Create Dictionary status=satisfied
  1300 + ${confirmation_data}= Create Dictionary data=${data}
  1301 + Run As ${amcu_user}
  1302 + ... Змінити статус скарги
  1303 + ... ${TENDER['TENDER_UAID']}
  1304 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1305 + ... ${confirmation_data}
  1306 +
  1307 +
  1308 +Задовільнити скаргу на визначення ${award_index} переможця
  1309 + ${data}= Create Dictionary status=satisfied
  1310 + ${confirmation_data}= Create Dictionary data=${data}
  1311 + Run As ${amcu_user}
  1312 + ... Змінити статус скарги на визначення переможця
  1313 + ... ${TENDER['TENDER_UAID']}
  1314 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1315 + ... ${award_index}
  1316 + ... ${confirmation_data}
  1317 +
  1318 +
  1319 +Відхилити скаргу
  1320 + ${data}= Create Dictionary status=declined
  1321 + ${confirmation_data}= Create Dictionary data=${data}
  1322 + Run As ${amcu_user}
  1323 + ... Змінити статус скарги
  1324 + ... ${TENDER['TENDER_UAID']}
  1325 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1326 + ... ${confirmation_data}
  1327 +
  1328 +
  1329 +Відхилити скаргу на визначення ${award_index} переможця
  1330 + ${data}= Create Dictionary status=declined
  1331 + ${confirmation_data}= Create Dictionary data=${data}
  1332 + Run As ${amcu_user}
  1333 + ... Змінити статус скарги на визначення переможця
  1334 + ... ${TENDER['TENDER_UAID']}
  1335 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1336 + ... ${award_index}
  1337 + ... ${confirmation_data}
  1338 +
  1339 +
  1340 +Зупинити розгляд скарги
  1341 + ${confirmation_data}= Підготувати дані для відхилення скарги
  1342 + Set To Dictionary ${confirmation_data.data} status=stopped
  1343 + Run As ${amcu_user}
  1344 + ... Змінити статус скарги
  1345 + ... ${TENDER['TENDER_UAID']}
  1346 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1347 + ... ${confirmation_data}
  1348 +
  1349 +
  1350 +Зупинити скаргу на визначення ${award_index} переможця
  1351 + ${confirmation_data}= Підготувати дані для відхилення скарги
  1352 + Set To Dictionary ${confirmation_data.data} status=stopped
  1353 + Run As ${amcu_user}
  1354 + ... Змінити статус скарги на визначення переможця
  1355 + ... ${TENDER['TENDER_UAID']}
  1356 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1357 + ... ${award_index}
  1358 + ... ${confirmation_data}
  1359 +
  1360 +
  1361 +Залишити скаргу без розгляду
  1362 + ${confirmation_data}= Підготувати дані для відхилення скарги
  1363 + Set To Dictionary ${confirmation_data.data} status=invalid
  1364 + Run As ${amcu_user}
  1365 + ... Змінити статус скарги
  1366 + ... ${TENDER['TENDER_UAID']}
  1367 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1368 + ... ${confirmation_data}
  1369 +
  1370 +
  1371 +Залишити скаргу на визначення ${award_index} переможця без розгляду
  1372 + ${confirmation_data}= Підготувати дані для відхилення скарги
  1373 + Set To Dictionary ${confirmation_data.data} status=invalid
  1374 + Run As ${amcu_user}
  1375 + ... Змінити статус скарги на визначення переможця
  1376 + ... ${TENDER['TENDER_UAID']}
  1377 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1378 + ... ${award_index}
  1379 + ... ${confirmation_data}
  1380 +
  1381 +
  1382 +Виконати рішення АМКУ
  1383 + ${tendererAction}= create_fake_sentence
  1384 + ${data}= Create Dictionary
  1385 + ... status=resolved
  1386 + ... tendererAction=${tendererAction}
  1387 + ${confirmation_data}= Create Dictionary data=${data}
  1388 + Run As ${tender_owner}
  1389 + ... Змінити статус скарги
  1390 + ... ${TENDER['TENDER_UAID']}
  1391 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1392 + ... ${confirmation_data}
  1393 +
  1394 +
  1395 +Виконати рішення АМКУ по скарзі на визначення ${award_index} переможця
  1396 + ${tendererAction}= create_fake_sentence
  1397 + ${data}= Create Dictionary
  1398 + ... status=resolved
  1399 + ... tendererAction=${tendererAction}
  1400 + ${confirmation_data}= Create Dictionary data=${data}
  1401 + Run As ${tender_owner}
  1402 + ... Змінити статус скарги на визначення переможця Замовником
  1403 + ... ${TENDER['TENDER_UAID']}
  1404 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1405 + ... ${award_index}
  1406 + ... ${confirmation_data}
  1407 +
  1408 +
  1409 +Помилково створена скарга
  1410 + ${data}= Create Dictionary status=mistaken
  1411 + ${confirmation_data}= Create Dictionary data=${data}
  1412 + Run As ${provider}
  1413 + ... Змінити статус скарги
  1414 + ... ${TENDER['TENDER_UAID']}
  1415 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1416 + ... ${confirmation_data}
  1417 +
  1418 +
  1419 +Помилково створена скарга на визначення ${award_index} переможця
  1420 + ${data}= Create Dictionary status=mistaken
  1421 + ${confirmation_data}= Create Dictionary data=${data}
  1422 + Run As ${provider}
  1423 + ... Змінити статус скарги на визначення переможця
  1424 + ... ${TENDER['TENDER_UAID']}
  1425 + ... ${USERS.users['${provider}']['tender_complaint_data']['complaintID']}
  1426 + ... ${award_index}
  1427 + ... ${confirmation_data}
  1428 +
  1429 +
  1430 +Подати вимогу про виправлення умов закупівлі лоту
  1431 + ${data}= Create Dictionary status=claim
  1432 + ${confirmation_data}= Create Dictionary data=${data}
  1433 + Run As ${provider}
  1434 + ... Подати вимогу
  1435 + ... ${TENDER['TENDER_UAID']}
  1436 + ... ${USERS.users['${provider}']['lot_claim_data']['complaintID']}
  1437 + ... ${confirmation_data}
  1438 + Log ${USERS.users['${provider}'].lot_claim_data}
  1439 +
  1440 +
1145 1441 Можливість створити чернетку вимоги про виправлення визначення ${award_index} переможця
1146 1442 ${claim}= Підготувати дані для подання вимоги
1147 1443 ${complaintID}= Run As ${provider}
... ... @@ -1156,6 +1452,20 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status
1156 1452 Set To Dictionary ${USERS.users['${provider}']} claim_data ${claim_data}
1157 1453
1158 1454
  1455 +Можливість створити чернетку скарги про виправлення визначення ${award_index} переможця
  1456 + ${complaint}= Підготувати дані для подання скарги
  1457 + ${complaintID}= Run As ${provider}
  1458 + ... Створити чернетку вимоги про виправлення визначення переможця
  1459 + ... ${TENDER['TENDER_UAID']}
  1460 + ... ${complaint}
  1461 + ... ${award_index}
  1462 + ${complaint_data}= Create Dictionary
  1463 + ... complaint=${complaint}
  1464 + ... complaintID=${complaintID}
  1465 + ${complaint_data}= munch_dict arg=${complaint_data}
  1466 + Set To Dictionary ${USERS.users['${provider}']} tender_complaint_data ${complaint_data}
  1467 +
  1468 +
1159 1469 Можливість створити вимогу про виправлення умов закупівлі із документацією
1160 1470 ${claim}= Підготувати дані для подання вимоги
1161 1471 ${file_path} ${file_name} ${file_content}= create_fake_doc
... ... @@ -1261,6 +1571,7 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status
1261 1571 ... ${TENDER['TENDER_UAID']}
1262 1572 ... ${USERS.users['${provider}']['tender_claim_data']['complaintID']}
1263 1573 ... cancelled
  1574 + Log ${USERS.users['${provider}'].tender_claim_data}
1264 1575
1265 1576
1266 1577 Можливість скасувати вимогу про виправлення умов лоту
... ...
  1 +coding: utf-8
1 2 *** Settings ***
2 3 Library openprocurement_client_helper.py
3 4 Library openprocurement_client.utils
... ... @@ -84,6 +85,12 @@ Library openprocurement_client.utils
84 85 ... ${USERS.users['${username}'].auth_dasu[0]}
85 86 ... ${USERS.users['${username}'].auth_dasu[1]}
86 87 ... ${ds_config}
  88 + ${amcu_api_wrapper}= prepare_amcu_api_wrapper
  89 + ... ${USERS.users['${username}'].api_key}
  90 + ... TENDERS
  91 + ... ${API_HOST_URL}
  92 + ... ${API_VERSION}
  93 + ... ${ds_config}
87 94 ${agreement_wrapper}= prepare_agreement_api_wrapper ${USERS.users['${username}'].api_key} AGREEMENTS ${API_HOST_URL} ${API_VERSION} ${ds_config}
88 95 Set To Dictionary ${USERS.users['${username}']} client=${tender_api_wrapper}
89 96 Set To Dictionary ${USERS.users['${username}']} plan_client=${plan_api_wrapper}
... ... @@ -91,6 +98,7 @@ Library openprocurement_client.utils
91 98 Set To Dictionary ${USERS.users['${username}']} agreement_client=${agreement_wrapper}
92 99 Set To Dictionary ${USERS.users['${username}']} dasu_client=${dasu_api_wraper}
93 100 Set To Dictionary ${USERS.users['${username}']} access_token=${EMPTY}
  101 + Set To Dictionary ${USERS.users['${username}']} amcu_client=${amcu_api_wrapper}
94 102 ${id_map}= Create Dictionary
95 103 Set To Dictionary ${USERS.users['${username}']} id_map=${id_map}
96 104 Log ${EDR_HOST_URL}
... ... @@ -891,6 +899,24 @@ Library openprocurement_client.utils
891 899 [return] ${reply.data.complaintID}
892 900
893 901
  902 +Створити чернетку скарги про виправлення умов закупівлі
  903 + [Documentation] Створює скаргу у статусі "draft"
  904 + [Arguments] ${username} ${tender_uaid} ${complaint}
  905 + Log ${complaint}
  906 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору
  907 + ... ${username}
  908 + ... ${tender_uaid}
  909 + ${reply}= Call Method
  910 + ... ${USERS.users['${username}'].client}
  911 + ... create_complaint
  912 + ... ${tender.data.id}
  913 + ... ${complaint}
  914 + ... access_token=${tender.access.token}
  915 + Log ${reply}
  916 + Set To Dictionary ${USERS.users['${username}']} complaint_access_token=${reply.access.token}
  917 + [return] ${reply.data.complaintID}
  918 +
  919 +
894 920 Створити чернетку вимоги про виправлення умов лоту
895 921 [Documentation] Створює вимогу у статусі "draft"
896 922 [Arguments] ${username} ${tender_uaid} ${claim} ${lot_id}
... ... @@ -906,6 +932,21 @@ Library openprocurement_client.utils
906 932 [return] ${complaintID}
907 933
908 934
  935 +Створити чернетку скарги про виправлення умов лоту
  936 + [Documentation] Створює вимогу у статусі "draft"
  937 + [Arguments] ${username} ${tender_uaid} ${complaint} ${lot_id}
  938 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору
  939 + ... ${username}
  940 + ... ${tender_uaid}
  941 + ${lot_index}= get_object_index_by_id ${tender.data.lots} ${lot_id}
  942 + Set to dictionary ${complaint.data} relatedLot=${tender.data.lots[${lot_index}].id}
  943 + ${complaintID}= openprocurement_client.Створити чернетку скарги про виправлення умов закупівлі
  944 + ... ${username}
  945 + ... ${tender_uaid}
  946 + ... ${complaint}
  947 + [return] ${complaintID}
  948 +
  949 +
909 950 Створити чернетку вимоги про виправлення визначення переможця
910 951 [Documentation] Створює вимогу у статусі "draft"
911 952 [Arguments] ${username} ${tender_uaid} ${claim} ${award_index}
... ... @@ -923,6 +964,7 @@ Library openprocurement_client.utils
923 964 ... access_token=${tender.access.token}
924 965 Log ${reply}
925 966 Set To Dictionary ${USERS.users['${username}']} complaint_access_token=${reply.access.token}
  967 + Set To Dictionary ${USERS.users['${amcu_user}']} complaint_access_token=${reply.access.token}
926 968 Log ${USERS.users['${username}'].complaint_access_token}
927 969 [return] ${reply.data.complaintID}
928 970
... ... @@ -1095,6 +1137,84 @@ Library openprocurement_client.utils
1095 1137 ... access_token=${USERS.users['${username}'].complaint_access_token}
1096 1138 Log ${tender}
1097 1139 Log ${reply}
  1140 + [return] ${reply}
  1141 +
  1142 +
  1143 +Подати скаргу
  1144 + [Documentation] Переводить скаргу зі статусу "draft" у статус "pending"
  1145 + [Arguments] ${username} ${tender_uaid} ${complaintID} ${confirmation_data}
  1146 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid}
  1147 + ${tender}= set_access_key ${tender} ${USERS.users['${username}'].complaint_access_token}
  1148 + ${complaint_internal_id}= openprocurement_client.Отримати internal id по UAid для скарги ${tender} ${complaintID}
  1149 + Set To Dictionary ${confirmation_data.data} id=${complaint_internal_id}
  1150 + Log ${confirmation_data}
  1151 + ${reply}= Call Method ${USERS.users['${username}'].client} patch_complaint
  1152 + ... ${tender.data.id}
  1153 + ... ${confirmation_data}
  1154 + ... ${complaint_internal_id}
  1155 + ... access_token=${USERS.users['${username}'].complaint_access_token}
  1156 + Log ${tender}
  1157 + Log ${reply}
  1158 +
  1159 +
  1160 +Змінити статус скарги
  1161 + [Documentation] Переводить скаргу в tender/lot в інший статус
  1162 + [Arguments] ${username} ${tender_uaid} ${complaintID} ${confirmation_data}
  1163 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору
  1164 + ... ${username}
  1165 + ... ${tender_uaid}
  1166 + run keyword if '${username}' == 'Tender_Owner' set_access_key ${tender} ${USERS.users['${username}'].access_token}
  1167 + ... ELSE IF '${username}' == 'Amcu_User' set_access_key ${tender} ${None}
  1168 + ... ELSE set_access_key ${tender} ${USERS.users['${username}'].complaint_access_token}
  1169 + ${complaint_internal_id}= openprocurement_client.Отримати internal id по UAid для скарги ${tender} ${complaintID}
  1170 + Set To Dictionary ${confirmation_data.data} id=${complaint_internal_id}
  1171 + ${reply}= Call Method ${USERS.users['${username}'].client} patch_complaint
  1172 + ... ${tender.data.id}
  1173 + ... ${confirmation_data}
  1174 + ... ${complaint_internal_id}
  1175 + ... access_token=${tender.access.token}
  1176 + Log ${tender}
  1177 + Log ${reply}
  1178 +
  1179 +
  1180 +Змінити статус скарги на визначення переможця
  1181 + [Documentation] Переводить скаргу в awards тендера в інший статус
  1182 + [Arguments] ${username} ${tender_uaid} ${complaintID} ${award_index} ${confirmation_data}
  1183 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору
  1184 + ... ${username}
  1185 + ... ${tender_uaid}
  1186 + run keyword if '${username}' == 'Tender_Owner' set_access_key ${tender} ${USERS.users['${username}'].access_token}
  1187 + ... ELSE IF '${username}' == 'Amcu_User' set_access_key ${tender} ${None}
  1188 + ... ELSE set_access_key ${tender} ${USERS.users['${username}'].complaint_access_token}
  1189 + ${complaint_internal_id}= openprocurement_client.Отримати internal id по UAid для скарги ${tender} ${complaintID}
  1190 + Set To Dictionary ${confirmation_data.data} id=${complaint_internal_id}
  1191 + ${reply}= Call Method ${USERS.users['${username}'].client} patch_award_complaint
  1192 + ... ${tender.data.id}
  1193 + ... ${confirmation_data}
  1194 + ... ${tender.data.awards[${award_index}].id}
  1195 + ... ${complaint_internal_id}
  1196 + ... access_token=${tender.access.token}
  1197 + Log ${tender}
  1198 + Log ${reply}
  1199 +
  1200 +
  1201 +Змінити статус скарги на визначення переможця Замовником
  1202 + [Documentation] Переводить скаргу в awards тендера в статус resolved
  1203 + [Arguments] ${username} ${tender_uaid} ${complaintID} ${award_index} ${confirmation_data}
  1204 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору
  1205 + ... ${username}
  1206 + ... ${tender_uaid}
  1207 + ${tender}= set_access_key ${tender} ${USERS.users['${username}'].access_token}
  1208 + ${complaint_internal_id}= openprocurement_client.Отримати internal id по UAid для скарги ${tender} ${complaintID}
  1209 + Set To Dictionary ${confirmation_data.data} id=${complaint_internal_id}
  1210 + ${reply}= Call Method ${USERS.users['${username}'].client} patch_award_complaint
  1211 + ... ${tender.data.id}
  1212 + ... ${confirmation_data}
  1213 + ... ${tender.data.awards[${award_index}].id}
  1214 + ... ${complaint_internal_id}
  1215 + ... access_token=${tender.access.token}
  1216 + Log ${tender}
  1217 + Log ${reply}
1098 1218
1099 1219
1100 1220 Подати вимогу про виправлення визначення переможця
... ... @@ -1116,6 +1236,25 @@ Library openprocurement_client.utils
1116 1236 Log ${reply}
1117 1237
1118 1238
  1239 +Подати скаргу про виправлення визначення переможця
  1240 + [Documentation] Переводить вимогу зі статусу "draft" у статус "pending"
  1241 + [Arguments] ${username} ${tender_uaid} ${complaintID} ${award_index} ${confirmation_data}
  1242 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору
  1243 + ... ${username}
  1244 + ... ${tender_uaid}
  1245 + ${tender}= set_access_key ${tender} ${USERS.users['${username}'].complaint_access_token}
  1246 + ${complaint_internal_id}= openprocurement_client.Отримати internal id по UAid для скарги ${tender} ${complaintID}
  1247 + Set To Dictionary ${confirmation_data.data} id=${complaint_internal_id}
  1248 + ${reply}= Call Method ${USERS.users['${username}'].client} patch_award_complaint
  1249 + ... ${tender.data.id}
  1250 + ... ${confirmation_data}
  1251 + ... ${tender.data.awards[${award_index}].id}
  1252 + ... ${complaint_internal_id}
  1253 + ... access_token=${tender.access.token}
  1254 + Log ${tender}
  1255 + Log ${reply}
  1256 +
  1257 +
1119 1258 Відповісти на вимогу про виправлення умов закупівлі
1120 1259 [Documentation] Переводить вимогу зі статусу "claim" у статус "answered"
1121 1260 [Arguments] ${username} ${tender_uaid} ${complaintID} ${answer_data}
... ...
... ... @@ -195,4 +195,15 @@ class StableTenderCreateClient(TenderCreateClient):
195 195
196 196 def prepare_tender_create_wrapper(key, resource, host_url, api_version, ds_config=None):
197 197 return StableTenderCreateClient(key, resource, host_url, api_version,
198   - ds_config=ds_config)
\ No newline at end of file
  198 + ds_config=ds_config)
  199 +
  200 +
  201 +class StableClientAmcu(Client):
  202 + @retry(stop_max_attempt_number=100, wait_random_min=500,
  203 + wait_random_max=4000, retry_on_exception=retry_if_request_failed)
  204 + def request(self, *args, **kwargs):
  205 + return super(StableClientAmcu, self).request(*args, **kwargs)
  206 +
  207 +
  208 +def prepare_amcu_api_wrapper(key, resource, host_url, api_version, ds_config=None):
  209 + return StableClientAmcu(key, resource, host_url, api_version, ds_config=ds_config)
... ...
  1 +coding: utf-8
  2 +*** Settings ***
  3 +Resource base_keywords.robot
  4 +Resource aboveThreshold_keywords.robot
  5 +Suite Setup Test Suite Setup
  6 +Suite Teardown Test Suite Teardown
  7 +
  8 +*** Variables ***
  9 +${MODE} belowThreshold
  10 +@{USED_ROLES} tender_owner provider provider1 provider2 viewer amcu_user
  11 +${MOZ_INTEGRATION} ${False}
  12 +${VAT_INCLUDED} ${True}
  13 +
  14 +${NUMBER_OF_ITEMS} ${1}
  15 +${NUMBER_OF_LOTS} ${1}
  16 +${NUMBER_OF_MILESTONES} ${1}
  17 +${TENDER_MEAT} ${0}
  18 +${ITEM_MEAT} ${0}
  19 +${LOT_MEAT} ${0}
  20 +${lot_index} ${0}
  21 +${award_index} ${0}
  22 +${ROAD_INDEX} ${False}
  23 +${GMDN_INDEX} ${False}
  24 +${PLAN_TENDER} ${True}
  25 +
  26 +*** Test Cases ***
  27 +
  28 +##############################################################################################
  29 +# CREATE AND FIND TENDER LOT VIEW
  30 +##############################################################################################
  31 +
  32 +Можливість оголосити однопредметний тендер
  33 + [Tags] ${USERS.users['${tender_owner}'].broker}: Оголошення тендера
  34 + ... tender_owner
  35 + ... ${USERS.users['${tender_owner}'].broker}
  36 + ... create_tender
  37 + ... critical
  38 + [Teardown] Оновити LAST_MODIFICATION_DATE
  39 + Можливість оголосити тендер
  40 +
  41 +
  42 +Можливість знайти однопредметний тендер по ідентифікатору
  43 + [Tags] ${USERS.users['${viewer}'].broker}: Пошук тендера
  44 + ... viewer
  45 + ... ${USERS.users['${viewer}'].broker}
  46 + ... find_tender
  47 + ... critical
  48 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  49 + Можливість знайти тендер по ідентифікатору для усіх користувачів
  50 +
  51 +
  52 +Відображення заголовку лотів
  53 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення лоту тендера
  54 + ... viewer tender_owner provider provider1
  55 + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker}
  56 + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker}
  57 + ... tender_view
  58 + ... critical
  59 + Звірити відображення поля title усіх лотів для усіх користувачів
  60 +
  61 +
  62 +Можливість подати пропозицію першим учасником
  63 + [Tags] ${USERS.users['${provider}'].broker}: Подання пропозиції
  64 + ... provider
  65 + ... ${USERS.users['${provider}'].broker}
  66 + ... make_bid_by_provider
  67 + ... critical
  68 + [Setup] Дочекатись дати початку прийому пропозицій ${provider} ${TENDER['TENDER_UAID']}
  69 + [Teardown] Оновити LAST_MODIFICATION_DATE
  70 + Можливість подати цінову пропозицію користувачем ${provider}
  71 +
  72 +
  73 +Можливість подати пропозицію другим учасником
  74 + [Tags] ${USERS.users['${provider1}'].broker}: Подання пропозиції
  75 + ... provider1
  76 + ... ${USERS.users['${provider1}'].broker}
  77 + ... make_bid_by_provider1
  78 + ... critical
  79 + [Setup] Дочекатись дати початку прийому пропозицій ${provider1} ${TENDER['TENDER_UAID']}
  80 + [Teardown] Оновити LAST_MODIFICATION_DATE
  81 + Можливість подати цінову пропозицію користувачем ${provider1}
  82 +
  83 +##############################################################################################
  84 +# CREATE ADD DOC SUBMIT TENDER COMPLAINT
  85 +##############################################################################################
  86 +
  87 +Можливість створити чернетку скарги про виправлення умов закупівлі тендера
  88 + [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження
  89 + ... provider
  90 + ... ${USERS.users['${provider}'].broker}
  91 + ... tender_complaint_draft
  92 + ... critical
  93 + [Teardown] Оновити LAST_MODIFICATION_DATE
  94 + Можливість створити чернетку скарги про виправлення умов закупівлі
  95 +
  96 +
  97 +Відображення статусу 'draft' чернетки скарги
  98 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  99 + ... viewer
  100 + ... ${USERS.users['${viewer}'].broker}
  101 + ... tender_complaint_draft
  102 + ... non-critical
  103 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  104 + Звірити відображення поля status для вимоги ${USERS.users['${provider}'].tender_complaint_data['complaintID']} із draft для користувача ${viewer}
  105 +
  106 +
  107 +Відображення заголовку скарги
  108 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  109 + ... viewer
  110 + ... ${USERS.users['${viewer}'].broker}
  111 + ... tender_complaint_draft
  112 + ... non-critical
  113 + Звірити відображення поля title для вимоги ${USERS.users['${provider}'].tender_complaint_data['complaintID']} із ${USERS.users['${provider}'].tender_complaint_data.complaint.data.title} для користувача ${viewer}
  114 +
  115 +
  116 +Відображення опису скарги
  117 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  118 + ... viewer
  119 + ... ${USERS.users['${viewer}'].broker}
  120 + ... tender_complaint_draft
  121 + ... non-critical
  122 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  123 + Звірити відображення поля description для вимоги ${USERS.users['${provider}'].tender_complaint_data['complaintID']} із ${USERS.users['${provider}'].tender_complaint_data.complaint.data.description} для користувача ${viewer}
  124 +
  125 +
  126 +Можливість додати документ до скарги про виправлення умов закупівлі тендера
  127 + [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження
  128 + ... provider
  129 + ... ${USERS.users['${provider}'].broker}
  130 + ... tender_complaint_add_doc
  131 + ... critical
  132 + [Teardown] Оновити LAST_MODIFICATION_DATE
  133 + Додати документ до скарги про виправлення умов закупівлі
  134 +
  135 +
  136 +Відображення заголовку документації скарги
  137 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  138 + ... viewer
  139 + ... ${USERS.users['${viewer}'].broker}
  140 + ... tender_complaint_add_doc
  141 + ... non-critical
  142 + Звірити відображення поля title документа ${USERS.users['${provider}'].tender_complaint_data.documents.doc_id} до скарги ${USERS.users['${provider}'].tender_complaint_data.complaintID} з ${USERS.users['${provider}'].tender_complaint_data.documents.doc_name} для користувача ${viewer}
  143 +
  144 +
  145 +Можливість подати скаргу про виправлення умов закупівлі
  146 + [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження
  147 + ... provider
  148 + ... ${USERS.users['${provider}'].broker}
  149 + ... tender_complaint_pending
  150 + ... critical
  151 + [Teardown] Оновити LAST_MODIFICATION_DATE
  152 + Можливість подати скаргу
  153 +
  154 +
  155 +Відображення статусу 'pending' скарги
  156 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  157 + ... viewer
  158 + ... ${USERS.users['${viewer}'].broker}
  159 + ... tender_complaint_pending
  160 + ... non-critical
  161 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  162 + Звірити відображення поля status для вимоги ${USERS.users['${provider}'].tender_complaint_data['complaintID']} із pending для користувача ${viewer}
  163 +
  164 +
  165 +Можливість прийняти скаргу до розгляду
  166 + [Tags] ${USERS.users['${amcu_user}'].broker}: Скарга прийнята до розгляду
  167 + ... amcu_user
  168 + ... ${USERS.users['${amcu_user}'].broker}
  169 + ... accept_tender_complaint
  170 + ... critical
  171 + [Teardown] Оновити LAST_MODIFICATION_DATE
  172 + Прийняти скаргу до розгляду
  173 +
  174 +
  175 +Відображення статусу 'accepted' скарги
  176 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  177 + ... viewer
  178 + ... ${USERS.users['${viewer}'].broker}
  179 + ... accept_tender_complaint
  180 + ... non-critical
  181 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  182 + Звірити відображення поля status для вимоги ${USERS.users['${provider}'].tender_complaint_data['complaintID']} із accepted для користувача ${viewer}
  183 +
  184 +
  185 +Можливість задовільнити скаргу
  186 + [Tags] ${USERS.users['${amcu_user}'].broker}: Скарга задоволена
  187 + ... amcu_user
  188 + ... ${USERS.users['${amcu_user}'].broker}
  189 + ... satisfy_tender_complaint
  190 + ... critical
  191 + [Teardown] Оновити LAST_MODIFICATION_DATE
  192 + Задовільнити скаргу
  193 +
  194 +
  195 +Відображення статусу 'satisfied' скарги
  196 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  197 + ... viewer
  198 + ... ${USERS.users['${viewer}'].broker}
  199 + ... satisfy_tender_complaint
  200 + ... non-critical
  201 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  202 + Звірити відображення поля status для вимоги ${USERS.users['${provider}'].tender_complaint_data['complaintID']} із satisfied для користувача ${viewer}
  203 +
  204 +
  205 +Можливість відхилити скаргу
  206 + [Tags] ${USERS.users['${amcu_user}'].broker}: Скарга відхилена
  207 + ... amcu_user
  208 + ... ${USERS.users['${amcu_user}'].broker}
  209 + ... decline_tender_complaint
  210 + ... critical
  211 + [Teardown] Оновити LAST_MODIFICATION_DATE
  212 + Відхилити скаргу
  213 +
  214 +
  215 +Відображення статусу 'declined' скарги
  216 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  217 + ... viewer
  218 + ... ${USERS.users['${viewer}'].broker}
  219 + ... decline_tender_complaint
  220 + ... non-critical
  221 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  222 + Звірити відображення поля status для вимоги ${USERS.users['${provider}'].tender_complaint_data['complaintID']} із declined для користувача ${viewer}
  223 +
  224 +
  225 +Можливість зупинити розгляд скарги
  226 + [Tags] ${USERS.users['${amcu_user}'].broker}: Скарга зупинена
  227 + ... amcu_user
  228 + ... ${USERS.users['${amcu_user}'].broker}
  229 + ... stop_tender_complaint
  230 + ... critical
  231 + [Teardown] Оновити LAST_MODIFICATION_DATE
  232 + Зупинити розгляд скарги
  233 +
  234 +
  235 +Відображення статусу 'stopped' скарги
  236 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  237 + ... viewer
  238 + ... ${USERS.users['${viewer}'].broker}
  239 + ... stop_tender_complaint
  240 + ... non-critical
  241 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  242 + Звірити відображення поля status для вимоги ${USERS.users['${provider}'].tender_complaint_data['complaintID']} із stopped для користувача ${viewer}
  243 +
  244 +
  245 +Можливість залишити скаргу без розгляду
  246 + [Tags] ${USERS.users['${amcu_user}'].broker}: Скарга без розгляду
  247 + ... amcu_user
  248 + ... ${USERS.users['${amcu_user}'].broker}
  249 + ... invalid_tender_complaint
  250 + ... critical
  251 + [Teardown] Оновити LAST_MODIFICATION_DATE
  252 + Залишити скаргу без розгляду
  253 +
  254 +
  255 +Відображення статусу 'invalid' скарги
  256 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  257 + ... viewer
  258 + ... ${USERS.users['${viewer}'].broker}
  259 + ... invalid_tender_complaint
  260 + ... non-critical
  261 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  262 + Звірити відображення поля status для вимоги ${USERS.users['${provider}'].tender_complaint_data['complaintID']} із invalid для користувача ${viewer}
  263 +
  264 +
  265 +Можливість позначити скаргу як помилково створену
  266 + [Tags] ${USERS.users['${provider}'].broker}: Скарга створена помилково
  267 + ... provider
  268 + ... ${USERS.users['${provider}'].broker}
  269 + ... mistaken_tender_complaint
  270 + ... critical
  271 + [Teardown] Оновити LAST_MODIFICATION_DATE
  272 + Помилково створена скарга
  273 +
  274 +
  275 +Відображення статусу 'mistaken' скарги
  276 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  277 + ... viewer
  278 + ... ${USERS.users['${viewer}'].broker}
  279 + ... mistaken_tender_complaint
  280 + ... non-critical
  281 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  282 + Звірити відображення поля status для вимоги ${USERS.users['${provider}'].tender_complaint_data['complaintID']} із mistaken для користувача ${viewer}
  283 +
  284 +
  285 +Можливість виконати рішення АМКУ Замовником
  286 + [Tags] ${USERS.users['${tender_owner}'].broker}: Замовник виконує рішення АМКУ
  287 + ... tender_owner
  288 + ... ${USERS.users['${tender_owner}'].broker}
  289 + ... resolved_tender_complaint
  290 + ... critical
  291 + [Teardown] Оновити LAST_MODIFICATION_DATE
  292 + Виконати рішення АМКУ
  293 +
  294 +
  295 +Відображення статусу 'resolved' скарги
  296 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  297 + ... viewer
  298 + ... ${USERS.users['${viewer}'].broker}
  299 + ... resolved_tender_complaint
  300 + ... non-critical
  301 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  302 + Звірити відображення поля status для вимоги ${USERS.users['${provider}'].tender_complaint_data['complaintID']} із resolved для користувача ${viewer}
  303 +
  304 +##############################################################################################
  305 +# CREATE ADD DOC LOT COMPLAINT
  306 +##############################################################################################
  307 +
  308 +Можливість створити чернетку скарги про виправлення умов лоту
  309 + [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження
  310 + ... provider
  311 + ... ${USERS.users['${provider}'].broker}
  312 + ... lot_claim_draft
  313 + ... critical
  314 + [Setup] Дочекатись синхронізації з майданчиком ${provider}
  315 + [Teardown] Оновити LAST_MODIFICATION_DATE
  316 + Можливість створити чернетку вимоги про виправлення умов ${lot_index} лоту
  317 +
  318 +
  319 +Відображення статусу 'draft' чернетки вимоги про виправлення умов лоту
  320 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  321 + ... viewer
  322 + ... ${USERS.users['${viewer}'].broker}
  323 + ... lot_claim_draft
  324 + ... non-critical
  325 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  326 + Звірити відображення поля status вимоги про виправлення умов ${lot_index} лоту із draft для користувача ${viewer}
  327 +
  328 +
  329 +Можливість додати документ до скарги про виправлення умов закупівлі лота
  330 + [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження
  331 + ... provider
  332 + ... ${USERS.users['${provider}'].broker}
  333 + ... lot_claim_add_doc
  334 + ... critical
  335 + [Teardown] Оновити LAST_MODIFICATION_DATE
  336 + Додати документ до вимоги про виправлення умов закупівлі лоту
  337 +
  338 +##############################################################################################
  339 +# CREATE SUBMIT QUALIFICATION COMPLAINT
  340 +##############################################################################################
  341 +
  342 +Можливість підтвердити першу пропозицію кваліфікації
  343 + [Tags] ${USERS.users['${tender_owner}'].broker}: Пре-Кваліфікація
  344 + ... tender_owner
  345 + ... ${USERS.users['${tender_owner}'].broker}
  346 + ... pre-qualification_approve_first_bid level1
  347 + ... critical
  348 + [Setup] Дочекатись дати початку періоду прекваліфікації ${tender_owner} ${TENDER['TENDER_UAID']}
  349 + [Teardown] Оновити LAST_MODIFICATION_DATE
  350 + Можливість підтвердити 0 пропозицію кваліфікації
  351 +
  352 +
  353 +Можливість підтвердити другу пропозицію кваліфікації
  354 + [Tags] ${USERS.users['${tender_owner}'].broker}: Кваліфікація
  355 + ... tender_owner
  356 + ... ${USERS.users['${tender_owner}'].broker}
  357 + ... pre-qualification_approve_second_bid level1
  358 + ... critical
  359 + [Teardown] Оновити LAST_MODIFICATION_DATE
  360 + Можливість підтвердити -1 пропозицію кваліфікації
  361 +
  362 +
  363 +Можливість затвердити остаточне рішення кваліфікації
  364 + [Tags] ${USERS.users['${tender_owner}'].broker}: Пре-Кваліфікація
  365 + ... tender_owner
  366 + ... ${USERS.users['${tender_owner}'].broker}
  367 + ... pre-qualification_approve_qualifications level1
  368 + ... critical
  369 + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner}
  370 + [Teardown] Оновити LAST_MODIFICATION_DATE
  371 + Можливість затвердити остаточне рішення кваліфікації
  372 +
  373 +##############################################################################################
  374 +# CREATE SUBMIT AWARD COMPLAINT
  375 +##############################################################################################
  376 +
  377 +Можливість дочекатись дати початку періоду кваліфікації
  378 + [Tags] ${USERS.users['${provider}'].broker}: Подання кваліфікації
  379 + ... provider
  380 + ... ${USERS.users['${provider}'].broker}
  381 + ... awardPeriod_startDate
  382 + ... critical
  383 + [Teardown] Оновити LAST_MODIFICATION_DATE
  384 + Дочекатись дати початку періоду кваліфікації ${provider} ${TENDER['TENDER_UAID']}
  385 +
  386 +
  387 +Можливість підтвердити учасника
  388 + [Tags] ${USERS.users['${tender_owner}'].broker}: Процес кваліфікації
  389 + ... tender_owner
  390 + ... ${USERS.users['${tender_owner}'].broker}
  391 + ... qualification_approve_first_award
  392 + ... critical
  393 + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner}
  394 + [Teardown] Оновити LAST_MODIFICATION_DATE
  395 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  396 + Run As ${tender_owner} Завантажити документ рішення кваліфікаційної комісії ${file_path} ${TENDER['TENDER_UAID']} 0
  397 + Run As ${tender_owner} Підтвердити постачальника ${TENDER['TENDER_UAID']} 0
  398 + Remove File ${file_path}
  399 +
  400 +
  401 +Можливість створити чернетку скарги про виправлення визначення переможця
  402 + [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження визначення переможця
  403 + ... provider
  404 + ... ${USERS.users['${provider}'].broker}
  405 + ... award_complaint_draft
  406 + ... critical
  407 + [Setup] Дочекатись синхронізації з майданчиком ${provider}
  408 + [Teardown] Оновити LAST_MODIFICATION_DATE
  409 + Можливість створити чернетку скарги про виправлення визначення ${award_index} переможця
  410 +
  411 +
  412 +Можливість додати документ до скарги про виправлення визначення переможця
  413 + [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження визначення переможця
  414 + ... provider
  415 + ... ${USERS.users['${provider}'].broker}
  416 + ... award_complaint_add_doc
  417 + ... critical
  418 + [Teardown] Оновити LAST_MODIFICATION_DATE
  419 + Додати документ до скарги про виправлення умов закупівлі
  420 +
  421 +
  422 +Можливість подати скаргу про виправлення визначення переможця
  423 + [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження визначення переможця
  424 + ... provider
  425 + ... ${USERS.users['${provider}'].broker}
  426 + ... award_complaint_pending
  427 + ... critical
  428 + [Teardown] Оновити LAST_MODIFICATION_DATE
  429 + Можливість подати скаргу на визначення ${award_index} переможця
  430 +
  431 +
  432 +Можливість позначити скаргу на визначення переможця як помилково створену
  433 + [Tags] ${USERS.users['${provider}'].broker}: Скарга визначення переможця створена помилково
  434 + ... provider
  435 + ... ${USERS.users['${provider}'].broker}
  436 + ... mistaken_award_complaint
  437 + ... critical
  438 + [Teardown] Оновити LAST_MODIFICATION_DATE
  439 + Помилково створена скарга на визначення ${award_index} переможця
  440 +
  441 +
  442 +Можливість залишити скаргу на визначення переможця без розгляду
  443 + [Tags] ${USERS.users['${amcu_user}'].broker}: Скарга на визначення переможця без розгляду
  444 + ... amcu_user
  445 + ... ${USERS.users['${amcu_user}'].broker}
  446 + ... invalid_award_complaint
  447 + ... critical
  448 + [Teardown] Оновити LAST_MODIFICATION_DATE
  449 + Залишити скаргу на визначення ${award_index} переможця без розгляду
  450 +
  451 +
  452 +Можливість прийняти скаргу на визначення переможця до розгляду
  453 + [Tags] ${USERS.users['${amcu_user}'].broker}: Скарга прийнята до розгляду
  454 + ... amcu_user
  455 + ... ${USERS.users['${amcu_user}'].broker}
  456 + ... accept_award_complaint
  457 + ... critical
  458 + [Teardown] Оновити LAST_MODIFICATION_DATE
  459 + Прийняти скаргу на визначення ${award_index} переможця до розгляду
  460 +
  461 +
  462 +Можливість задовільнити скаргу на визначення переможця
  463 + [Tags] ${USERS.users['${amcu_user}'].broker}: Скарга на визначення переможця задоволена
  464 + ... amcu_user
  465 + ... ${USERS.users['${amcu_user}'].broker}
  466 + ... satisfy_award_complaint
  467 + ... critical
  468 + [Teardown] Оновити LAST_MODIFICATION_DATE
  469 + Задовільнити скаргу на визначення ${award_index} переможця
  470 +
  471 +
  472 +Можливість виконати рішення АМКУ Замовником
  473 + [Tags] ${USERS.users['${tender_owner}'].broker}: Замовник виконує рішення АМКУ по скарзі на визначення переможця
  474 + ... tender_owner
  475 + ... ${USERS.users['${tender_owner}'].broker}
  476 + ... resolved_award_complaint
  477 + ... critical
  478 + [Teardown] Оновити LAST_MODIFICATION_DATE
  479 + Виконати рішення АМКУ по скарзі на визначення ${award_index} переможця
  480 +
  481 +
  482 +Можливість відхилити скаргу на визначення переможця
  483 + [Tags] ${USERS.users['${amcu_user}'].broker}: Скарга на визначення переможця відхилена
  484 + ... amcu_user
  485 + ... ${USERS.users['${amcu_user}'].broker}
  486 + ... decline_award_complaint
  487 + ... critical
  488 + [Teardown] Оновити LAST_MODIFICATION_DATE
  489 + Відхилити скаргу на визначення ${award_index} переможця
  490 +
  491 +
  492 +Можливість зупинити розгляд скарги на визначення переможця
  493 + [Tags] ${USERS.users['${amcu_user}'].broker}: Скарга на визначення переможця зупинена
  494 + ... amcu_user
  495 + ... ${USERS.users['${amcu_user}'].broker}
  496 + ... stop_award_complaint
  497 + ... critical
  498 + [Teardown] Оновити LAST_MODIFICATION_DATE
  499 + Зупинити скаргу на визначення ${award_index} переможця
  500 +
  501 +##############################################################################################
  502 +# CREATE SUBMIT CANCELLATION COMPLAINT
  503 +##############################################################################################
... ...
... ... @@ -86,6 +86,7 @@ Quinta:
86 86 tender_owner: Tender_Owner
87 87 viewer: Tender_Viewer
88 88 dasu_user: Dasu_User
  89 + amcu_user: Amcu_User
89 90 timeout_on_wait: 15
90 91 Etender:
91 92 intervals:
... ...
... ... @@ -6,6 +6,7 @@ users:
6 6 auctions: [test.quintagroup.com, bc698baa8b814908bc75405ed3d63548]
7 7 api_key: e9c3ccb8e8124f26941d5f9639a4ebc3
8 8 auth_dasu: [test.quintagroup.com, e9c3ccb8e8124f26941d5f9639a4ebc3]
  9 + auth_amcu: e9c3ccb8e8124f26941d5f9639a4ebc3
9 10 broker: Quinta
10 11 auth_edr: [test.quintagroup.com, f5111c99a97a45348d8165ba8fcf0d62]
11 12 browser: phantomjs
... ... @@ -18,6 +19,7 @@ users:
18 19 auctions: [test.quintagroup.com, bc698baa8b814908bc75405ed3d63548]
19 20 api_key: e9c3ccb8e8124f26941d5f9639a4ebc3
20 21 auth_dasu: [test.quintagroup.com, e9c3ccb8e8124f26941d5f9639a4ebc3]
  22 + auth_amcu: e9c3ccb8e8124f26941d5f9639a4ebc3
21 23 broker: Quinta
22 24 auth_edr: [test.quintagroup.com, f5111c99a97a45348d8165ba8fcf0d62]
23 25 browser: phantomjs
... ... @@ -30,6 +32,7 @@ users:
30 32 auctions: [test.quintagroup.com, bc698baa8b814908bc75405ed3d63548]
31 33 api_key: e9c3ccb8e8124f26941d5f9639a4ebc3
32 34 auth_dasu: [test.quintagroup.com, e9c3ccb8e8124f26941d5f9639a4ebc3]
  35 + auth_amcu: e9c3ccb8e8124f26941d5f9639a4ebc3
33 36 broker: Quinta
34 37 auth_edr: [test.quintagroup.com, f5111c99a97a45348d8165ba8fcf0d62]
35 38 browser: phantomjs
... ... @@ -42,6 +45,7 @@ users:
42 45 auctions: [test.quintagroup.com, bc698baa8b814908bc75405ed3d63548]
43 46 api_key: e9c3ccb8e8124f26941d5f9639a4ebc3
44 47 auth_dasu: [test.quintagroup.com, e9c3ccb8e8124f26941d5f9639a4ebc3]
  48 + auth_amcu: e9c3ccb8e8124f26941d5f9639a4ebc3
45 49 broker: Quinta
46 50 auth_edr: [test.quintagroup.com, f5111c99a97a45348d8165ba8fcf0d62]
47 51 browser: phantomjs
... ... @@ -72,6 +76,19 @@ users:
72 76 auth_edr: [test.quintagroup.com, f5111c99a97a45348d8165ba8fcf0d62]
73 77 position: [0, 0]
74 78 size: [1400, 900]
  79 + Amcu_User:
  80 + auth_ds:
  81 + monitorings: [test.quintagroup.com, test.quintagroup.com]
  82 + plans: [test.quintagroup.com, test.quintagroup.com]
  83 + tenders: [test.quintagroup.com, test.quintagroup.com]
  84 + auth_dasu: [test.quintagroup.com, e9c3ccb8e8124f26941d5f9639a4ebc3]
  85 + auth_amcu: 210945ed5de940b7bce976f411a1a290
  86 + api_key: 210945ed5de940b7bce976f411a1a290
  87 + broker: Quinta
  88 + browser: phantomjs
  89 + auth_edr: [test.quintagroup.com, f5111c99a97a45348d8165ba8fcf0d62]
  90 + position: [0, 0]
  91 + size: [1400, 900]
75 92 Etender_Owner:
76 93 broker: Etender
77 94 homepage: "https://stage.e-tender.ua/"
... ...
... ... @@ -446,13 +446,49 @@ def test_complaint_data():
446 446 data = {
447 447 "author": fake.procuringTenderer(),
448 448 "description": fake.description(),
449   - "title": field_with_id("q", fake.title())
  449 + "title": field_with_id("q", fake.title()),
  450 + "type": "complaint"
450 451 }
451 452 del data['author']['scale']
452 453 return munchify({'data': data})
453 454
454 455
455   -test_claim_data = test_complaint_data
  456 +def test_accept_complaint_data():
  457 + data = {
  458 + "status": "accepted",
  459 + "reviewDate": get_now().isoformat(),
  460 + "reviewPlace": "Place of review"
  461 + }
  462 + return munchify({'data': data})
  463 +
  464 +
  465 +def test_reject_complaint_data():
  466 + data = {
  467 + "rejectReason": random.choice(["lawNonCompliance", "buyerViolationsCorrected", "alreadyExists", "tenderCancelled"])
  468 + }
  469 + return munchify({'data': data})
  470 +
  471 +
  472 +def test_award_complaint_data():
  473 + data = {
  474 + "author": fake.procuringTenderer(),
  475 + "description": fake.description(),
  476 + "title": field_with_id("q", fake.title()),
  477 + "type": "complaint"
  478 + }
  479 + del data['author']['scale']
  480 + return munchify({'data': data})
  481 +
  482 +
  483 +def test_claim_data():
  484 + data = {
  485 + "author": fake.procuringTenderer(),
  486 + "description": fake.description(),
  487 + "title": field_with_id("q", fake.title()),
  488 + "type": "claim"
  489 + }
  490 + del data['author']['scale']
  491 + return munchify({'data': data})
456 492
457 493
458 494 def test_claim_answer_data(status):
... ...
  1 +coding: utf-8
1 2 *** Settings ***
2 3 Library op_robot_tests.tests_files.service_keywords
3 4 Library String
... ... @@ -292,11 +293,21 @@ Get Broker Property By Username
292 293
293 294
294 295 Підготувати дані для подання скарги
295   - [Arguments] ${lot}=${False}
296   - ${complaint}= test_complaint_data ${lot}
  296 + #[Arguments] ${lot}=${False}
  297 + ${complaint}= test_complaint_data
297 298 [Return] ${complaint}
298 299
299 300
  301 +Підготувати дані для прийняття скарги до розгляду
  302 + ${confirmation_data}= test_accept_complaint_data
  303 + [Return] ${confirmation_data}
  304 +
  305 +
  306 +Підготувати дані для відхилення скарги
  307 + ${reject_reason}= test_reject_complaint_data
  308 + [Return] ${reject_reason}
  309 +
  310 +
300 311 Підготувати дані для відповіді на скаргу
301 312 ${reply}= test_complaint_reply_data
302 313 [Return] ${reply}
... ...
... ... @@ -81,6 +81,8 @@ from .initial_data import (
81 81 invalid_buyers_data,
82 82 test_plan_cancel_data,
83 83 test_confirm_plan_cancel_data,
  84 + test_accept_complaint_data,
  85 + test_reject_complaint_data,
84 86 test_cancellation_data,
85 87 test_cancel_pending_data
86 88 )
... ...
  1 +-v MODE:openua
  2 +
  3 +-v NUMBER_OF_ITEMS:1
  4 +-v NUMBER_OF_LOTS:1
  5 +
  6 +-i create_tender
  7 +-i find_tender
  8 +-i tender_view
  9 +
  10 +-i make_bid_by_provider
  11 +-i make_bid_by_provider1
  12 +
  13 +-i awardPeriod_startDate
  14 +-i qualification_approve_first_award
  15 +
  16 +-i award_complaint_draft
  17 +-i award_complaint_pending
  18 +-i accept_award_complaint
  19 +-i decline_award_complaint
\ No newline at end of file
... ...
  1 +-v MODE:openua
  2 +
  3 +-v NUMBER_OF_ITEMS:1
  4 +-v NUMBER_OF_LOTS:1
  5 +
  6 +-i create_tender
  7 +-i find_tender
  8 +-i tender_view
  9 +
  10 +-i make_bid_by_provider
  11 +-i make_bid_by_provider1
  12 +
  13 +-i awardPeriod_startDate
  14 +-i qualification_approve_first_award
  15 +
  16 +-i award_complaint_draft
  17 +-i award_complaint_pending
  18 +-i invalid_award_complaint
... ...
  1 +-v MODE:openua
  2 +
  3 +-v NUMBER_OF_ITEMS:1
  4 +-v NUMBER_OF_LOTS:1
  5 +
  6 +-i create_tender
  7 +-i find_tender
  8 +-i tender_view
  9 +
  10 +-i make_bid_by_provider
  11 +-i make_bid_by_provider1
  12 +
  13 +-i awardPeriod_startDate
  14 +-i qualification_approve_first_award
  15 +
  16 +-i award_complaint_draft
  17 +-i mistaken_award_complaint
\ No newline at end of file
... ...
  1 +-v MODE:openua
  2 +
  3 +-v NUMBER_OF_ITEMS:1
  4 +-v NUMBER_OF_LOTS:1
  5 +
  6 +-i create_tender
  7 +-i find_tender
  8 +-i tender_view
  9 +
  10 +-i make_bid_by_provider
  11 +-i make_bid_by_provider1
  12 +
  13 +-i awardPeriod_startDate
  14 +-i qualification_approve_first_award
  15 +
  16 +-i award_complaint_draft
  17 +-i award_complaint_pending
  18 +-i accept_award_complaint
  19 +-i satisfy_award_complaint
  20 +-i resolved_award_complaint
\ No newline at end of file
... ...
  1 +-v MODE:openua
  2 +
  3 +-v NUMBER_OF_ITEMS:1
  4 +-v NUMBER_OF_LOTS:1
  5 +
  6 +-i create_tender
  7 +-i find_tender
  8 +-i tender_view
  9 +
  10 +-i make_bid_by_provider
  11 +-i make_bid_by_provider1
  12 +
  13 +-i awardPeriod_startDate
  14 +-i qualification_approve_first_award
  15 +
  16 +-i award_complaint_draft
  17 +-i award_complaint_pending
  18 +-i accept_award_complaint
  19 +-i stop_award_complaint
\ No newline at end of file
... ...
  1 +-v MODE:openeu
  2 +
  3 +-v NUMBER_OF_ITEMS:1
  4 +-v NUMBER_OF_LOTS:1
  5 +
  6 +-i create_tender
  7 +-i find_tender
  8 +-i tender_view
  9 +
... ...
  1 +-v MODE:openeu
  2 +
  3 +-v NUMBER_OF_ITEMS:1
  4 +-v NUMBER_OF_LOTS:1
  5 +
  6 +-i create_tender
  7 +-i find_tender
  8 +-i tender_view
  9 +
  10 +-i tender_complaint_draft
  11 +-i tender_complaint_add_doc
  12 +-i tender_complaint_pending
  13 +-i accept_tender_complaint
  14 +-i decline_tender_complaint
\ No newline at end of file
... ...
  1 +-v MODE:openeu
  2 +
  3 +-v NUMBER_OF_ITEMS:1
  4 +-v NUMBER_OF_LOTS:1
  5 +
  6 +-i create_tender
  7 +-i find_tender
  8 +-i tender_view
  9 +
  10 +-i tender_complaint_draft
  11 +-i tender_complaint_add_doc
  12 +-i tender_complaint_pending
  13 +-i invalid_tender_complaint
\ No newline at end of file
... ...
  1 +-v MODE:openeu
  2 +
  3 +-v NUMBER_OF_ITEMS:1
  4 +-v NUMBER_OF_LOTS:1
  5 +
  6 +-i create_tender
  7 +-i find_tender
  8 +-i tender_view
  9 +
  10 +-i tender_complaint_draft
  11 +-i tender_complaint_add_doc
  12 +-i mistaken_tender_complaint
\ No newline at end of file
... ...
  1 +-v MODE:openeu
  2 +
  3 +-v NUMBER_OF_ITEMS:1
  4 +-v NUMBER_OF_LOTS:1
  5 +
  6 +-i create_tender
  7 +-i find_tender
  8 +-i tender_view
  9 +
  10 +-i tender_complaint_draft
  11 +-i tender_complaint_add_doc
  12 +-i tender_complaint_pending
  13 +-i accept_tender_complaint
  14 +-i satisfy_tender_complaint
  15 +-i resolved_tender_complaint
... ...
  1 +-v MODE:openeu
  2 +
  3 +-v NUMBER_OF_ITEMS:1
  4 +-v NUMBER_OF_LOTS:1
  5 +
  6 +-i create_tender
  7 +-i find_tender
  8 +-i tender_view
  9 +
  10 +-i tender_complaint_draft
  11 +-i tender_complaint_add_doc
  12 +-i tender_complaint_pending
  13 +-i accept_tender_complaint
  14 +-i stop_tender_complaint
\ No newline at end of file
... ...
Please register or login to post a comment