Showing
28 changed files
with
662 additions
and
61 deletions
... | ... | @@ -33,6 +33,7 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status |
33 | 33 | ... gmdn_index=${${GMDN_INDEX}} |
34 | 34 | ... plan_tender=${${PLAN_TENDER}} |
35 | 35 | ... article_17=${${ARTICLE_17}} |
36 | + ... criteria_guarantee=${${CRITERIA_GUARANTEE}} | |
36 | 37 | ${DIALOGUE_TYPE}= Get Variable Value ${DIALOGUE_TYPE} |
37 | 38 | ${FUNDING_KIND}= Get Variable Value ${FUNDING_KIND} |
38 | 39 | Run keyword if '${DIALOGUE_TYPE}' != '${None}' Set to dictionary ${tender_parameters} dialogue_type=${DIALOGUE_TYPE} |
... | ... | @@ -44,14 +45,14 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status |
44 | 45 | Log ${plan_data} |
45 | 46 | ${tender_data}= Підготувати дані для створення тендера ${tender_parameters} ${plan_data} |
46 | 47 | ${adapted_data}= Адаптувати дані для оголошення тендера ${tender_data} |
47 | - ${article_17_data}= Run keyword If ${ARTICLE_17} == True Підготувати дані по критеріям статті 17 | |
48 | 48 | ${TENDER_UAID}= Run keyword If ${ARTICLE_17} == True Run As ${tender_owner} Створити тендер з критеріями |
49 | 49 | ... ${adapted_data} |
50 | 50 | ... ${ARTIFACT.tender_uaid} |
51 | - ... ${article_17_data} | |
51 | + ... ${CRITERIA_GUARANTEE} | |
52 | 52 | ... ELSE Run As ${tender_owner} Створити тендер |
53 | 53 | ... ${adapted_data} |
54 | 54 | ... ${ARTIFACT.tender_uaid} |
55 | + ... ${CRITERIA_GUARANTEE} | |
55 | 56 | Set To Dictionary ${USERS.users['${tender_owner}']} initial_data=${adapted_data} |
56 | 57 | # bof - fix # |
57 | 58 | ${tender_cdb_data}= getTenderDataByTenderUaId ${API_HOST_URL}/api/${API_VERSION} ${TENDER_UAID} |
... | ... | @@ -2367,6 +2368,21 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status |
2367 | 2368 | Set To Dictionary ${USERS.users['${username}']} bid_document_modified=${bid_document_modified_data} |
2368 | 2369 | Remove File ${file_path} |
2369 | 2370 | |
2371 | + | |
2372 | +Можливість завантажити підтвердження виконання контракту в пропозицію учасника | |
2373 | + [Arguments] ${username} ${tender_uaid} | |
2374 | + Log ${username} | |
2375 | + Log ${tender_uaid} | |
2376 | + Log Many ${USERS.users['${username}'].id_map} | |
2377 | + ${bid}= openprocurement_client.Отримати пропозицію ${username} ${tender_uaid} | |
2378 | + Log ${bid} | |
2379 | + ${bid_doc_id}= get_from_object ${bid.data} documents[0].id | |
2380 | + Log ${bid_doc_id} | |
2381 | + ${bid_doc_title}= get_from_object ${bid.data} documents[0].title | |
2382 | + Log ${bid_doc_title} | |
2383 | + ${contract_response}= Підготувати дані по гарантії виконання контракту ${bid_doc_id} ${bid_doc_title} | |
2384 | + Run As ${username} Завантажити відповідь на критерій гарантії виконання контракту ${tender_uaid} ${contract_response} | |
2385 | + | |
2370 | 2386 | ############################################################################################## |
2371 | 2387 | # Cancellations |
2372 | 2388 | ############################################################################################## | ... | ... |
... | ... | @@ -207,6 +207,35 @@ Library Collections |
207 | 207 | ${participationUrl}= Get Variable Value ${object_with_url['participationUrl']} |
208 | 208 | [Return] ${participationUrl} |
209 | 209 | |
210 | + | |
211 | +Отримати поточного Переможця тендера | |
212 | + ${file_path}= Get Variable Value ${ARTIFACT_FILE} artifact.yaml | |
213 | + ${ARTIFACT}= load_data_from ${file_path} | |
214 | + Log ${ARTIFACT} | |
215 | + ${provider}= get variable value ${provider_bid_id} ${ARTIFACT.provider_bid_id} | |
216 | + Log ${provider} | |
217 | + ${provider1}= get variable value ${provider1_bid_id} ${ARTIFACT.provider1_bid_id} | |
218 | + Log ${provider1} | |
219 | + ${provider2}= get variable value ${provider2_bid_id} ${ARTIFACT.provider2_bid_id} | |
220 | + Log ${provider2} | |
221 | + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${tender_owner} ${TENDER['TENDER_UAID']} | |
222 | + Log ${tender} | |
223 | + ${award}= Get Variable Value ${USERS.users['${tender_owner}'].tender_data.data.awards[-1]} | |
224 | + Log ${award} | |
225 | + ${award.bid_id}= Encode String To Bytes ${award.bid_id} UTF-8 | |
226 | + Log ${award.bid_id} | |
227 | + ${status_1}= run keyword and return status Should Be Equal ${provider} ${award.bid_id} | |
228 | + log ${status_1} | |
229 | + ${status_2}= run keyword and return status Should Be Equal ${provider1} ${award.bid_id} | |
230 | + log ${status_2} | |
231 | + ${status_3}= run keyword and return status Should Be Equal ${provider2} ${award.bid_id} | |
232 | + log ${status_3} | |
233 | + ${username}= run keyword if ${status_1} == ${True} set variable Tender_User | |
234 | + ... ELSE IF ${status_2} == ${True} set variable Tender_User1 | |
235 | + ... ELSE set variable Tender_User2 | |
236 | + Log ${username} | |
237 | + [Return] ${username} | |
238 | + | |
210 | 239 | ############################################################################## |
211 | 240 | # Tender operations |
212 | 241 | ############################################################################## |
... | ... | @@ -223,7 +252,7 @@ Library Collections |
223 | 252 | |
224 | 253 | |
225 | 254 | Створити тендер |
226 | - [Arguments] ${username} ${tender_data} ${plan_uaid} | |
255 | + [Arguments] ${username} ${tender_data} ${plan_uaid} ${CRITERIA_GUARANTEE}=None | |
227 | 256 | ${file_path}= Get Variable Value ${ARTIFACT_FILE} artifact_plan.yaml |
228 | 257 | ${ARTIFACT}= load_data_from ${file_path} |
229 | 258 | Log ${ARTIFACT.tender_owner_access_token} |
... | ... | @@ -234,6 +263,11 @@ Library Collections |
234 | 263 | ... access_token=${ARTIFACT.tender_owner_access_token} |
235 | 264 | Log ${tender} |
236 | 265 | ${access_token}= Get Variable Value ${tender.access.token} |
266 | + ${criteria_guarantee_data}= Run keyword If ${CRITERIA_GUARANTEE} == True Підготувати дані по критеріям гарантії | |
267 | + ${tender_criteria_guarantee}= Run keyword If ${CRITERIA_GUARANTEE} == True Call Method ${USERS.users['${username}'].client} create_criteria | |
268 | + ... ${tender.data.id} | |
269 | + ... ${criteria_guarantee_data} | |
270 | + ... access_token=${tender.access.token} | |
237 | 271 | ${status}= Set Variable If 'open' in '${MODE}' active.tendering ${EMPTY} |
238 | 272 | ${status}= Set Variable If 'below' in '${MODE}' active.enquiries ${status} |
239 | 273 | ${status}= Set Variable If 'selection' in '${MODE}' draft.pending ${status} |
... | ... | @@ -253,7 +287,7 @@ Library Collections |
253 | 287 | |
254 | 288 | |
255 | 289 | Створити тендер з критеріями |
256 | - [Arguments] ${username} ${tender_data} ${plan_uaid} ${article_17_data} | |
290 | + [Arguments] ${username} ${tender_data} ${plan_uaid} ${CRITERIA_GUARANTEE} #${article_17_data} | |
257 | 291 | ${file_path}= Get Variable Value ${ARTIFACT_FILE} artifact_plan.yaml |
258 | 292 | ${ARTIFACT}= load_data_from ${file_path} |
259 | 293 | Log ${ARTIFACT.tender_owner_access_token} |
... | ... | @@ -264,10 +298,17 @@ Library Collections |
264 | 298 | ... access_token=${ARTIFACT.tender_owner_access_token} |
265 | 299 | Log ${tender} |
266 | 300 | ${access_token}= Get Variable Value ${tender.access.token} |
301 | + ${article_17_data}= Підготувати дані по критеріям статті 17 | |
267 | 302 | ${tender_criteria}= Call Method ${USERS.users['${username}'].client} create_criteria |
268 | 303 | ... ${tender.data.id} |
269 | 304 | ... ${article_17_data} |
270 | 305 | ... access_token=${tender.access.token} |
306 | + Log ${CRITERIA_GUARANTEE} | |
307 | + ${criteria_guarantee_data}= Run keyword If ${CRITERIA_GUARANTEE} == True Підготувати дані по критеріям гарантії | |
308 | + ${tender_criteria_guarantee}= Run keyword If ${CRITERIA_GUARANTEE} == True Call Method ${USERS.users['${username}'].client} create_criteria | |
309 | + ... ${tender.data.id} | |
310 | + ... ${criteria_guarantee_data} | |
311 | + ... access_token=${tender.access.token} | |
271 | 312 | ${status}= Set Variable If 'open' in '${MODE}' active.tendering ${EMPTY} |
272 | 313 | ${status}= Set Variable If 'below' in '${MODE}' active.enquiries ${status} |
273 | 314 | ${status}= Set Variable If 'selection' in '${MODE}' draft.pending ${status} |
... | ... | @@ -1901,6 +1942,27 @@ Library Collections |
1901 | 1942 | [return] ${reply} |
1902 | 1943 | |
1903 | 1944 | |
1945 | +Завантажити відповідь на критерій гарантії виконання контракту | |
1946 | + [Arguments] ${username} ${tender_uaid} ${contract_response} | |
1947 | + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid} | |
1948 | + Log ${tender} | |
1949 | + ${bid}= openprocurement_client.Отримати пропозицію ${username} ${tender_uaid} | |
1950 | + Log ${bid} | |
1951 | + ${bid_id}= openprocurement_client.Отримати інформацію із пропозиції ${username} ${tender_uaid} id | |
1952 | + Log ${bid_id} | |
1953 | + ${req_id}= get_from_object ${bid.data} requirementResponses[-1].id | |
1954 | + Log ${req_id} | |
1955 | + ${token}= Get Variable Value ${USERS.users['${username}'].access_token} | |
1956 | + Log ${token} | |
1957 | + ${reply}= Call Method ${USERS.users['${username}'].client} create_bid_criteria_contract_guarantee_response | |
1958 | + ... ${tender.data.id} | |
1959 | + ... ${contract_response} | |
1960 | + ... ${bid_id} | |
1961 | + ... ${req_id} | |
1962 | + ... ${token} | |
1963 | + ${reply}= munch_dict arg=${reply} | |
1964 | + [Return] ${reply} | |
1965 | + | |
1904 | 1966 | ############################################################################## |
1905 | 1967 | # QUALIFICATION |
1906 | 1968 | ############################################################################## | ... | ... |
... | ... | @@ -25,6 +25,7 @@ ${ROAD_INDEX} ${False} |
25 | 25 | ${GMDN_INDEX} ${False} |
26 | 26 | ${PLAN_TENDER} ${True} |
27 | 27 | ${ARTICLE_17} ${False} |
28 | +${CRITERIA_GUARANTEE} ${False} | |
28 | 29 | |
29 | 30 | *** Test Cases *** |
30 | 31 | |
... | ... | @@ -111,6 +112,17 @@ ${ARTICLE_17} ${False} |
111 | 112 | Можливість додати до пропозиції відповідь на критерії користувачем ${provider1} |
112 | 113 | Можливість активувати пропозицію коритувачем ${provider1} |
113 | 114 | |
115 | + | |
116 | +Можливість подати пропозицію третім учасником | |
117 | + [Tags] ${USERS.users['${provider1}'].broker}: Подання пропозиції | |
118 | + ... provider2 | |
119 | + ... ${USERS.users['${provider1}'].broker} | |
120 | + ... make_bid_by_provider2 level1 | |
121 | + ... critical | |
122 | + [Setup] Дочекатись дати початку прийому пропозицій ${provider2} ${TENDER['TENDER_UAID']} | |
123 | + [Teardown] Оновити LAST_MODIFICATION_DATE | |
124 | + Можливість подати цінову пропозицію користувачем ${provider2} | |
125 | + | |
114 | 126 | ############################################################################################## |
115 | 127 | # TENDER/LOT COMPLAINT |
116 | 128 | ############################################################################################## |
... | ... | @@ -584,7 +596,7 @@ ${ARTICLE_17} ${False} |
584 | 596 | Дочекатись дати початку періоду кваліфікації ${provider} ${TENDER['TENDER_UAID']} |
585 | 597 | |
586 | 598 | |
587 | -Можливість підтвердити учасника | |
599 | +Можливість підтвердити першого учасника | |
588 | 600 | [Tags] ${USERS.users['${tender_owner}'].broker}: Процес кваліфікації |
589 | 601 | ... tender_owner |
590 | 602 | ... ${USERS.users['${tender_owner}'].broker} |
... | ... | @@ -598,6 +610,78 @@ ${ARTICLE_17} ${False} |
598 | 610 | Remove File ${file_path} |
599 | 611 | |
600 | 612 | |
613 | +Можливість вперше скасувати рішення кваліфікації учасника | |
614 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Процес кваліфікації | |
615 | + ... tender_owner | |
616 | + ... ${USERS.users['${tender_owner}'].broker} | |
617 | + ... qualification_cancel_first_time | |
618 | + ... critical | |
619 | + Run As ${tender_owner} Скасування рішення кваліфікаційної комісії ${TENDER['TENDER_UAID']} ${first_cancel_index} | |
620 | + | |
621 | + | |
622 | +Можливість вперше відхилити постачальника | |
623 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Процес кваліфікації | |
624 | + ... tender_owner | |
625 | + ... ${USERS.users['${tender_owner}'].broker} | |
626 | + ... qualification_reject_first_time | |
627 | + ... critical | |
628 | + Run As ${tender_owner} Дискваліфікувати постачальника ${TENDER['TENDER_UAID']} ${first_reject_index} | |
629 | + | |
630 | + | |
631 | +Можливість підтвердити другого постачальника | |
632 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Процес кваліфікації | |
633 | + ... tender_owner | |
634 | + ... ${USERS.users['${tender_owner}'].broker} | |
635 | + ... qualification_approve_second_participant | |
636 | + ... critical | |
637 | + Run As ${tender_owner} Підтвердити постачальника ${TENDER['TENDER_UAID']} ${second_approve_index} | |
638 | + | |
639 | + | |
640 | +Можливість вдруге скасувати рішення кваліфікації | |
641 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Процес кваліфікації | |
642 | + ... tender_owner | |
643 | + ... ${USERS.users['${tender_owner}'].broker} | |
644 | + ... qualification_cancel_second_time | |
645 | + ... critical | |
646 | + Run As ${tender_owner} Скасування рішення кваліфікаційної комісії ${TENDER['TENDER_UAID']} ${second_cancel_index} | |
647 | + | |
648 | + | |
649 | +Можливість вдруге відхилити постачальника | |
650 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Процес кваліфікації | |
651 | + ... tender_owner | |
652 | + ... ${USERS.users['${tender_owner}'].broker} | |
653 | + ... qualification_reject_second_time | |
654 | + ... critical | |
655 | + Run As ${tender_owner} Дискваліфікувати постачальника ${TENDER['TENDER_UAID']} ${second_reject_index} | |
656 | + | |
657 | + | |
658 | +Можливість підтвердити третього постачальника | |
659 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Процес кваліфікації | |
660 | + ... tender_owner | |
661 | + ... ${USERS.users['${tender_owner}'].broker} | |
662 | + ... qualification_approve_third_participant | |
663 | + ... critical | |
664 | + Run As ${tender_owner} Підтвердити постачальника ${TENDER['TENDER_UAID']} ${third_approve_index} | |
665 | + | |
666 | + | |
667 | +Можливість втретє скасувати рішення кваліфікації | |
668 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Процес кваліфікації | |
669 | + ... tender_owner | |
670 | + ... ${USERS.users['${tender_owner}'].broker} | |
671 | + ... qualification_cancel_third_time | |
672 | + ... critical | |
673 | + Run As ${tender_owner} Скасування рішення кваліфікаційної комісії ${TENDER['TENDER_UAID']} ${third_cancel_index} | |
674 | + | |
675 | + | |
676 | +Можливість втретє відхилити постачальника | |
677 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Процес кваліфікації | |
678 | + ... tender_owner | |
679 | + ... ${USERS.users['${tender_owner}'].broker} | |
680 | + ... qualification_reject_third_time | |
681 | + ... critical | |
682 | + Run As ${tender_owner} Дискваліфікувати постачальника ${TENDER['TENDER_UAID']} ${third_reject_index} | |
683 | + | |
684 | + | |
601 | 685 | Можливість створити чернетку скарги про виправлення визначення переможця |
602 | 686 | [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження визначення переможця |
603 | 687 | ... provider |
... | ... | @@ -618,6 +702,28 @@ ${ARTICLE_17} ${False} |
618 | 702 | Звірити відображення поля status скарги ${award_index} із draft об'єкта awards для користувача ${provider} |
619 | 703 | |
620 | 704 | |
705 | +Неможливість створити скаргу спрощена процедура для оборони | |
706 | + [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження визначення переможця | |
707 | + ... provider | |
708 | + ... ${USERS.users['${provider}'].broker} | |
709 | + ... defense_award_complaint_error | |
710 | + ... critical | |
711 | + [Setup] Дочекатись синхронізації з майданчиком ${provider} | |
712 | + [Teardown] Оновити LAST_MODIFICATION_DATE | |
713 | + run keyword and expect error * Можливість створити чернетку скарги про виправлення визначення ${award_index} переможця | |
714 | + | |
715 | + | |
716 | +Можливість створити чернетку скарги про виправлення визначення переможця | |
717 | + [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження визначення переможця | |
718 | + ... provider | |
719 | + ... ${USERS.users['${provider}'].broker} | |
720 | + ... second_award_complaint_draft | |
721 | + ... critical | |
722 | + [Setup] Дочекатись синхронізації з майданчиком ${provider} | |
723 | + [Teardown] Оновити LAST_MODIFICATION_DATE | |
724 | + Можливість створити чернетку скарги про виправлення визначення 1 переможця | |
725 | + | |
726 | + | |
621 | 727 | Можливість додати документ до скарги про виправлення визначення переможця |
622 | 728 | [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження визначення переможця |
623 | 729 | ... provider | ... | ... |
... | ... | @@ -530,19 +530,40 @@ proztorg: |
530 | 530 | uub: |
531 | 531 | intervals: |
532 | 532 | default: |
533 | - enquiry: [0, 8] | |
533 | + accelerator: 14400 | |
534 | 534 | tender: [0, 10] |
535 | - openua: | |
536 | - accelerator: 1440 | |
537 | - tender: [0, 15] | |
538 | - openeu: | |
539 | - tender: [0, 30] | |
535 | + open_competitive_dialogue: | |
536 | + accelerator: 14400 | |
537 | + tender: [0, 10] | |
538 | + open_esco: | |
539 | + accelerator: 14400 | |
540 | + tender: [0, 10] | |
541 | + belowThreshold: | |
542 | + accelerator: 3000 | |
543 | + enquiry: [0, 8] | |
544 | + tender: [0, 8] | |
545 | + negotiation: | |
546 | + accelerator: 7440 | |
547 | + enquiry: [0, 8] | |
548 | + tender: [0, 8] | |
549 | + open_framework: | |
550 | + accelerator: 14400 | |
551 | + tender: [0, 10] | |
552 | + openua_defense: | |
540 | 553 | accelerator: 1440 |
554 | + tender: [0, 12] | |
555 | + open_simple_defense: | |
556 | + accelerator: 1440 | |
557 | + tender: [0, 10] | |
541 | 558 | keywords_file: uub |
559 | + login_page: 'https://prozorrotest.uub.com.ua/Login.aspx' | |
560 | + tenders_page: 'https://prozorrotest.uub.com.ua/PositionList.aspx' | |
561 | + plans_page: 'https://prozorrotest.uub.com.ua/PlanList.aspx' | |
542 | 562 | roles: |
543 | 563 | tender_owner: uub_Owner |
544 | 564 | provider: uub_Provider |
545 | 565 | provider1: uub_Provider1 |
566 | + provider2: uub_Provider2 | |
546 | 567 | viewer: uub_Viewer |
547 | 568 | timeout_on_wait: 15 |
548 | 569 | APStender: |
... | ... | @@ -794,4 +815,4 @@ avi: |
794 | 815 | provider2: avi_Provider3 |
795 | 816 | tender_owner: avi_Owner |
796 | 817 | viewer: avi_Viewer |
797 | - timeout_on_wait: 120 | |
\ No newline at end of file | ||
818 | + timeout_on_wait: 120 | ... | ... |
... | ... | @@ -341,26 +341,26 @@ users: |
341 | 341 | size: [1366, 800] |
342 | 342 | Newtend_Owner: |
343 | 343 | broker: Newtend |
344 | - homepage: "http://dev23.newtend.com/opc/tenders" | |
345 | - login: ten2312@mailinator.com | |
346 | - password: 123123 | |
344 | + homepage: "https://dev23.newtend.com/" | |
345 | + login: test.gov.comp.1@gmail.com | |
346 | + password: test.gov.comp.1 | |
347 | 347 | browser: chrome |
348 | 348 | position: [0, 0] |
349 | 349 | size: [1200, 1200] |
350 | 350 | Newtend_Provider1: |
351 | 351 | broker: Newtend |
352 | - homepage: "http://dev23.newtend.com/opc/tenders" | |
353 | - login: ten2316@mailinator.com | |
354 | - password: 123123 | |
352 | + homepage: "https://dev23.newtend.com/" | |
353 | + login: test.priv.comp.1@gmail.com | |
354 | + password: test.priv.comp.1 | |
355 | 355 | browser: chrome |
356 | - position: [700, 0] | |
357 | - size: [800, 700] | |
356 | + position: [0, 0] | |
357 | + size: [1200, 1200] | |
358 | 358 | Newtend_Viewer: |
359 | 359 | broker: Newtend |
360 | - homepage: "http://dev23.newtend.com/opc" | |
360 | + homepage: "https://dev23.newtend.com/" | |
361 | 361 | browser: chrome |
362 | - position: [800, 400] | |
363 | - size: [800, 700] | |
362 | + position: [0, 0] | |
363 | + size: [1200, 1200] | |
364 | 364 | PrivatMarket_Viewer: |
365 | 365 | broker: PrivatMarket |
366 | 366 | homepage: "https://zakupivli24.pb.ua/prz-at/tender" |
... | ... | @@ -699,34 +699,42 @@ users: |
699 | 699 | size: [1000, 500] |
700 | 700 | uub_Owner: |
701 | 701 | broker: uub |
702 | - homepage: "https://prozorro.uub.com.ua/Registration.aspx?CN=-1" | |
703 | - default_page: "https://prozorro.uub.com.ua/PositionList.aspx?CN=-1" | |
702 | + homepage: "https://prozorrotest.uub.com.ua/Login.aspx" | |
703 | + default_page: "https://prozorrotest.uub.com.ua/PositionList.aspx" | |
704 | 704 | login: UUB_Owner@1.ua |
705 | - browser: firefox | |
705 | + browser: chrome | |
706 | 706 | position: [0, 0] |
707 | 707 | size: [1366, 800] |
708 | 708 | uub_Provider: |
709 | 709 | broker: uub |
710 | - homepage: "https://prozorro.uub.com.ua/Registration.aspx?CN=-2" | |
711 | - default_page: "https://prozorro.uub.com.ua/PositionList.aspx?CN=-2" | |
710 | + homepage: "https://prozorrotest.uub.com.ua/Login.aspx" | |
711 | + default_page: "https://prozorrotest.uub.com.ua/PositionList.aspx" | |
712 | 712 | login: UUB_Provider@1.ua |
713 | - browser: firefox | |
713 | + browser: chrome | |
714 | 714 | position: [0, 0] |
715 | 715 | size: [1366, 800] |
716 | 716 | uub_Provider1: |
717 | 717 | broker: uub |
718 | - homepage: "https://prozorro.uub.com.ua/Registration.aspx?CN=-3" | |
719 | - default_page: "https://prozorro.uub.com.ua/PositionList.aspx?CN=-3" | |
718 | + homepage: "https://prozorrotest.uub.com.ua/Login.aspx" | |
719 | + default_page: "https://prozorrotest.uub.com.ua/PositionList.aspx" | |
720 | 720 | login: UUB_Provider1@1.ua |
721 | - browser: firefox | |
721 | + browser: chrome | |
722 | + position: [0, 0] | |
723 | + size: [1366, 800] | |
724 | + uub_Provider2: | |
725 | + broker: uub | |
726 | + homepage: "https://prozorrotest.uub.com.ua/Login.aspx" | |
727 | + default_page: "https://prozorrotest.uub.com.ua/PositionList.aspx" | |
728 | + login: UUB_Provider2@1.ua | |
729 | + browser: chrome | |
722 | 730 | position: [0, 0] |
723 | 731 | size: [1366, 800] |
724 | 732 | uub_Viewer: |
725 | 733 | broker: uub |
726 | - homepage: "https://prozorro.uub.com.ua/Registration.aspx?CN=-4" | |
727 | - default_page: "https://prozorro.uub.com.ua/PositionList.aspx?CN=-4" | |
734 | + homepage: "https://prozorrotest.uub.com.ua/Login.aspx" | |
735 | + default_page: "https://prozorrotest.uub.com.ua/PositionList.aspx" | |
728 | 736 | login: UUB_Viewer@1.ua |
729 | - browser: firefox | |
737 | + browser: chrome | |
730 | 738 | position: [0, 0] |
731 | 739 | size: [1366, 800] |
732 | 740 | aps_Owner: |
... | ... | @@ -1036,4 +1044,4 @@ users: |
1036 | 1044 | homepage: "https://test.avi.net.ua/prozorro/tender" |
1037 | 1045 | browser: chrome |
1038 | 1046 | position: [0, 500] |
1039 | - size: [1280, 1000] | |
\ No newline at end of file | ||
1047 | + size: [1280, 1000] | ... | ... |
... | ... | @@ -197,6 +197,8 @@ def test_tender_data(params, |
197 | 197 | "items": [], |
198 | 198 | "features": [] |
199 | 199 | } |
200 | + if params.get("mode") in ["belowThreshold", "openua", "openeu", "esco"]: | |
201 | + data["guarantee"] = test_data_guarantee(value_amount) | |
200 | 202 | if params.get("mode") == "open_framework": |
201 | 203 | data["mainProcurementCategory"] = random.choice(['goods', 'services']) |
202 | 204 | elif params.get("mode") == "open_competitive_dialogue": |
... | ... | @@ -1266,6 +1268,20 @@ def test_article_17_data(): |
1266 | 1268 | }) |
1267 | 1269 | |
1268 | 1270 | |
1271 | +def test_criteria_guarantee_data(): | |
1272 | + criteria = fake.criteria_bid_contract_guarantee() | |
1273 | + return munchify({ | |
1274 | + "data": criteria | |
1275 | + }) | |
1276 | + | |
1277 | + | |
1278 | +def test_data_guarantee(value_amount): | |
1279 | + return munchify({ | |
1280 | + "amount": value_amount * 0.75, | |
1281 | + "currency": u"UAH" | |
1282 | + }) | |
1283 | + | |
1284 | + | |
1269 | 1285 | def test_data_bid_criteria(): |
1270 | 1286 | bid = munchify({ |
1271 | 1287 | "data": [] |
... | ... | @@ -1298,15 +1314,21 @@ def test_bid_criteria(tender_data, criteria_len, bid_data, bid_document): |
1298 | 1314 | for criteria in tender_data["data"]['criteria']: |
1299 | 1315 | if criteria.get('source') == 'tenderer': |
1300 | 1316 | for requirement in criteria['requirementGroups'][0]['requirements']: |
1317 | + mock_tenderer = deepcopy(mock) | |
1318 | + mock_tenderer["requirement"]["id"] = requirement["id"] | |
1319 | + mock_tenderer["requirement"]["title"] = requirement["title"] | |
1320 | + mock_tenderer["evidences"][0]["relatedDocument"]["id"] = bid_document["data"]["id"] | |
1321 | + mock_tenderer["evidences"][0]["relatedDocument"]["title"] = bid_document["data"]["title"] | |
1322 | + if criteria.get('title') == u'Мова (мови), якою (якими) повинні готуватися тендерні пропозиції': | |
1323 | + del mock_tenderer["evidences"][0] | |
1324 | + bid.data.append(mock_tenderer) | |
1325 | + elif criteria.get('source') == 'winner': | |
1326 | + for requirement in criteria['requirementGroups'][0]['requirements']: | |
1301 | 1327 | mock = deepcopy(mock) |
1302 | 1328 | mock["requirement"]["id"] = requirement["id"] |
1303 | 1329 | mock["requirement"]["title"] = requirement["title"] |
1304 | - if criteria.get('title') == u'Мова (мови), якою (якими) повинні готуватися тендерні пропозиції': | |
1305 | - del mock["evidences"][0] | |
1306 | - else: | |
1307 | - mock["evidences"][0]["relatedDocument"]["id"] = bid_document["data"]["id"] | |
1308 | - mock["evidences"][0]["relatedDocument"]["title"] = bid_document["data"]["title"] | |
1309 | - bid.data.append(mock) | |
1330 | + del mock["evidences"][0] | |
1331 | + bid.data.append(mock) | |
1310 | 1332 | else: |
1311 | 1333 | pass |
1312 | 1334 | return bid |
... | ... | @@ -1370,3 +1392,31 @@ def test_awards_criteria(tender_data, award_document): |
1370 | 1392 | else: |
1371 | 1393 | pass |
1372 | 1394 | return bid |
1395 | + | |
1396 | + | |
1397 | +def test_data_contract_criteria_response(): | |
1398 | + return munchify({ | |
1399 | + "data": { | |
1400 | + "title": "виконання умог договору", | |
1401 | + "description": "документ, що підтверджує забезпечення виконання умов договору", | |
1402 | + "type": "document", | |
1403 | + "relatedDocument": { | |
1404 | + "id": "", | |
1405 | + "title": "" | |
1406 | + } | |
1407 | + } | |
1408 | + }) | |
1409 | + | |
1410 | + | |
1411 | +def test_contract_criteria_response_data(bid_doc_id, bid_doc_title): | |
1412 | + return munchify({ | |
1413 | + "data": { | |
1414 | + "title": "виконання умог договору", | |
1415 | + "description": "документ, що підтверджує забезпечення виконання умов договору", | |
1416 | + "type": "document", | |
1417 | + "relatedDocument": { | |
1418 | + "id": bid_doc_id, | |
1419 | + "title": bid_doc_title | |
1420 | + } | |
1421 | + } | |
1422 | + }) | ... | ... |
... | ... | @@ -182,10 +182,10 @@ Get Broker Property By Username |
182 | 182 | Run Keyword And Ignore Error Set To Dictionary ${artifact} tender_owner_access_token=${USERS.users['${tender_owner}'].access_token} |
183 | 183 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider_access_token=${USERS.users['${provider}'].access_token} |
184 | 184 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider1_access_token=${USERS.users['${provider1}'].access_token} |
185 | - Run Keyword And Ignore Error Set To Dictionary ${artifact} provider2_access_token=${USERS.users['${provider1}'].access_token} | |
185 | + Run Keyword And Ignore Error Set To Dictionary ${artifact} provider2_access_token=${USERS.users['${provider2}'].access_token} | |
186 | 186 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider_bid_id=${USERS.users['${provider}'].bid_id} |
187 | 187 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider1_bid_id=${USERS.users['${provider1}'].bid_id} |
188 | - Run Keyword And Ignore Error Set To Dictionary ${artifact} provider2_bid_id=${USERS.users['${provider1}'].bid_id} | |
188 | + Run Keyword And Ignore Error Set To Dictionary ${artifact} provider2_bid_id=${USERS.users['${provider2}'].bid_id} | |
189 | 189 | Run Keyword And Ignore Error Set To Dictionary ${artifact} |
190 | 190 | ... tender_file_properties=${USERS.users['${tender_owner}'].tender_document.file_properties} |
191 | 191 | ... lot_file_properties=${USERS.users['${tender_owner}'].lots_documents[0].file_properties} |
... | ... | @@ -237,6 +237,8 @@ Get Broker Property By Username |
237 | 237 | Run Keyword And Ignore Error Set To Dictionary ${USERS.users['${provider1}']} access_token=${ARTIFACT.provider1_access_token} |
238 | 238 | Run Keyword And Ignore Error Set To Dictionary ${USERS.users['${provider}']} bid_id=${ARTIFACT.provider_bid_id} |
239 | 239 | Run Keyword And Ignore Error Set To Dictionary ${USERS.users['${provider1}']} bid_id=${ARTIFACT.provider1_bid_id} |
240 | + Run Keyword And Ignore Error Set To Dictionary ${USERS.users['${provider2}']} access_token=${ARTIFACT.provider2_access_token} | |
241 | + Run Keyword And Ignore Error Set To Dictionary ${USERS.users['${provider2}']} bid_id=${ARTIFACT.provider2_bid_id} | |
240 | 242 | Set Suite Variable ${MODE} |
241 | 243 | Set Suite Variable ${lot_index} |
242 | 244 | Set Suite Variable ${TENDER} |
... | ... | @@ -470,6 +472,12 @@ Get Broker Property By Username |
470 | 472 | [Return] ${article_17_data} |
471 | 473 | |
472 | 474 | |
475 | +Підготувати дані по критеріям гарантії | |
476 | + ${criteria_guarantee_data}= test_criteria_guarantee_data | |
477 | + Log ${criteria_guarantee_data} | |
478 | + [Return] ${criteria_guarantee_data} | |
479 | + | |
480 | + | |
473 | 481 | Підготувати дані для відповіді на критерії в пропозиції |
474 | 482 | [Arguments] ${username} ${tender_data} ${bid_data} ${bid_data_document} |
475 | 483 | @{criteria}= get_from_object ${tender_data.data} criteria |
... | ... | @@ -502,6 +510,13 @@ Get Broker Property By Username |
502 | 510 | [Return] ${award_criteria} |
503 | 511 | |
504 | 512 | |
513 | +Підготувати дані по гарантії виконання контракту | |
514 | + [Arguments] ${bid_doc_id} ${bid_doc_title} | |
515 | + ${contract_response}= test_contract_criteria_response_data ${bid_doc_id} ${bid_doc_title} | |
516 | + Log ${contract_response} | |
517 | + [Return] ${contract_response} | |
518 | + | |
519 | + | |
505 | 520 | Адаптувати дані для оголошення тендера |
506 | 521 | [Arguments] ${tender_data} |
507 | 522 | # munchify is used to make deep copy of ${tender_data} | ... | ... |
... | ... | @@ -20,6 +20,7 @@ ${ROAD_INDEX} ${False} |
20 | 20 | ${GMDN_INDEX} ${False} |
21 | 21 | ${PLAN_TENDER} ${True} |
22 | 22 | ${ARTICLE_17} ${False} |
23 | +${CRITERIA_GUARANTEE} ${False} | |
23 | 24 | |
24 | 25 | *** Test Cases *** |
25 | 26 | ############################################################################################## | ... | ... |
... | ... | @@ -20,6 +20,7 @@ ${ROAD_INDEX} ${False} |
20 | 20 | ${GMDN_INDEX} ${False} |
21 | 21 | ${PLAN_TENDER} ${True} |
22 | 22 | ${ARTICLE_17} ${False} |
23 | +${CRITERIA_GUARANTEE} ${False} | |
23 | 24 | |
24 | 25 | *** Test Cases *** |
25 | 26 | ############################################################################################## | ... | ... |
... | ... | @@ -40,6 +40,7 @@ class OP_Provider(BaseProvider): |
40 | 40 | profiles_shortlistedfirms_empty = _fake_data.profiles_shortlistedfirms_empty |
41 | 41 | unknown_profile = _fake_data.unknown_profiles |
42 | 42 | criteria = _fake_data.criteria |
43 | + criteria_guarant = _fake_data.criteria_guarantee | |
43 | 44 | |
44 | 45 | @classmethod |
45 | 46 | def randomize_nb_elements(self, number=10, le=60, ge=140): |
... | ... | @@ -259,3 +260,7 @@ class OP_Provider(BaseProvider): |
259 | 260 | @classmethod |
260 | 261 | def criteria_article_17(self): |
261 | 262 | return deepcopy(self.criteria) |
263 | + | |
264 | + @classmethod | |
265 | + def criteria_bid_contract_guarantee(self): | |
266 | + return deepcopy(self.criteria_guarant) | ... | ... |
... | ... | @@ -8184,7 +8184,7 @@ |
8184 | 8184 | ], |
8185 | 8185 | |
8186 | 8186 | "criteria": [ |
8187 | - { | |
8187 | + { | |
8188 | 8188 | "title": "Вчинення злочинів, учинених з корисливих мотивів", |
8189 | 8189 | "description": "Службова (посадова) особа учасника процедури закупівлі, яка підписала тендерну пропозицію (або уповноважена на підписання договору в разі переговорної процедури закупівлі) або фізична особа, яка є учасником процедури закупівлі, не була засуджена за злочин, учинений з корисливих мотивів (зокрема, пов'язаний з хабарництвом та відмиванням коштів), судимість з якої знято або погашено у встановленому законом порядку", |
8190 | 8190 | "source": "tenderer", |
... | ... | @@ -8252,7 +8252,7 @@ |
8252 | 8252 | } |
8253 | 8253 | ] |
8254 | 8254 | }, |
8255 | - { | |
8255 | + { | |
8256 | 8256 | "title": "Вчинення економічних правопорушень", |
8257 | 8257 | "description": "Суб'єкт господарювання (учасник) протягом останніх трьох років не притягувався до відповідальності за порушення, передбачене пунктом 4 частини другої статті 6, пунктом 1 статті 50 Закону України \"Про захист економічної конкуренції\", у вигляді вчинення антиконкурентних узгоджених дій, що стосуються спотворення результатів тендерів", |
8258 | 8258 | "source": "tenderer", |
... | ... | @@ -8313,7 +8313,7 @@ |
8313 | 8313 | } |
8314 | 8314 | ] |
8315 | 8315 | }, |
8316 | - { | |
8316 | + { | |
8317 | 8317 | "title": "Вчинення корупційних правопорушень", |
8318 | 8318 | "description": "Відомості про юридичну особу, яка є учасником процедури закупівлі, не внесено до Єдиного державного реєстру осіб, які вчинили корупційні або пов'язані з корупцією правопорушення. Службову (посадову) особу учасника процедури закупівлі, яку уповноважено учасником представляти його інтереси під час проведення процедури закупівлі, фізичну особу, яка є учасником, не було притягнуто згідно із законом до відповідальності за вчинення корупційного правопорушення або правопорушення, пов'язаного з корупцією", |
8319 | 8319 | "source": "tenderer", |
... | ... | @@ -8376,7 +8376,7 @@ |
8376 | 8376 | } |
8377 | 8377 | ] |
8378 | 8378 | }, |
8379 | - { | |
8379 | + { | |
8380 | 8380 | "title": "Вчинення правопорушень, пов'язаних з використанням дитячої праці чи будь-якими формами торгівлі людьми", |
8381 | 8381 | "description": "Службова (посадова) особа учасника процедури закупівлі, яку уповноважено учасником представляти його інтереси під час проведення процедури закупівлі, фізичну особу, яка є учасником, не було притягнуто згідно із законом до відповідальності за вчинення правопорушення, пов'язаного з використанням дитячої праці чи будь-якими формами торгівлі людьми", |
8382 | 8382 | "source": "tenderer", |
... | ... | @@ -8417,7 +8417,7 @@ |
8417 | 8417 | } |
8418 | 8418 | ] |
8419 | 8419 | }, |
8420 | - { | |
8420 | + { | |
8421 | 8421 | "title": "Заборгованість зі сплати податків і зборів (обов'язкових платежів)", |
8422 | 8422 | "description": "Учасник процедури закупівлі не має заборгованості зі сплати податків і зборів (обов'язкових платежів)", |
8423 | 8423 | "source": "tenderer", |
... | ... | @@ -8520,7 +8520,7 @@ |
8520 | 8520 | } |
8521 | 8521 | ] |
8522 | 8522 | }, |
8523 | - { | |
8523 | + { | |
8524 | 8524 | "title": "Порушення справ про банкрутство", |
8525 | 8525 | "description": "Учасник процедури закупівлі не визнаний у встановленому законом порядку банкрутом та стосовно нього не відкрита ліквідаційна процедура", |
8526 | 8526 | "source": "tenderer", |
... | ... | @@ -8561,7 +8561,7 @@ |
8561 | 8561 | } |
8562 | 8562 | ] |
8563 | 8563 | }, |
8564 | - { | |
8564 | + { | |
8565 | 8565 | "title": "Виявлення факту зв'язку учасника з іншими учасниками процедури або замовником", |
8566 | 8566 | "description": "Тендерна пропозиція подана учасником конкурентної процедури закупівлі або участь у переговорній процедурі бере учасник, який є пов'язаною особою з іншими учасниками процедури закупівлі та/або з уповноваженою особою (особами), та/або з керівником замовника", |
8567 | 8567 | "source": "procuringEntity", |
... | ... | @@ -8601,7 +8601,7 @@ |
8601 | 8601 | } |
8602 | 8602 | ] |
8603 | 8603 | }, |
8604 | - { | |
8604 | + { | |
8605 | 8605 | "title": "Виявлення факту наміру впливу на прийняття рішення замовника", |
8606 | 8606 | "description": "Замовник має незаперечні докази того, що учасник процедури закупівлі пропонує, дає або погоджується дати прямо чи опосередковано будь-якій службовій (посадовій) особі замовника, іншого державного органу винагороду в будь-якій формі (пропозиція щодо найму на роботу, цінна річ, послуга тощо) з метою вплинути на прийняття рішення щодо визначення переможця процедури закупівлі або застосування замовником певної процедури закупівлі", |
8607 | 8607 | "source": "procuringEntity", |
... | ... | @@ -8641,7 +8641,7 @@ |
8641 | 8641 | } |
8642 | 8642 | ] |
8643 | 8643 | }, |
8644 | - { | |
8644 | + { | |
8645 | 8645 | "title": "Наявність інших підстав для відмови в участі у процедурі закупівлі", |
8646 | 8646 | "description": "У Єдиному державному реєстрі юридичних осіб, фізичних осіб - підприємців та громадських формувань присутня інформація, передбачена пунктом 9 частини другої статті 9 Закону України \"Про державну реєстрацію юридичних осіб, фізичних осіб - підприємців та громадських формувань\" (крім нерезидентів)", |
8647 | 8647 | "source": "tenderer", |
... | ... | @@ -8745,7 +8745,7 @@ |
8745 | 8745 | } |
8746 | 8746 | ] |
8747 | 8747 | }, |
8748 | - { | |
8748 | + { | |
8749 | 8749 | "title": "Мова (мови), якою (якими) повинні готуватися тендерні пропозиції", |
8750 | 8750 | "source": "tenderer", |
8751 | 8751 | "classification": { |
... | ... | @@ -8764,7 +8764,7 @@ |
8764 | 8764 | "type": "NATIONAL_LEGISLATION" |
8765 | 8765 | } |
8766 | 8766 | ], |
8767 | - "requirementGroups": [ | |
8767 | + "requirementGroups": [ | |
8768 | 8768 | { |
8769 | 8769 | "description": "Учасник підтверджує, що", |
8770 | 8770 | "requirements": [ |
... | ... | @@ -8778,5 +8778,91 @@ |
8778 | 8778 | } |
8779 | 8779 | ] |
8780 | 8780 | } |
8781 | -] | |
8781 | + ], | |
8782 | + | |
8783 | + "criteria_guarantee": [ | |
8784 | + { | |
8785 | + "title": "Вид та умови надання забезпечення тендерних пропозицій", | |
8786 | + "source": "tenderer", | |
8787 | + "classification": { | |
8788 | + "scheme": "ESPD211", | |
8789 | + "id": "CRITERION.OTHER.BID.GUARANTEE" | |
8790 | + }, | |
8791 | + "relatesTo": "tender", | |
8792 | + "legislation": [ | |
8793 | + { | |
8794 | + "version": "2020-04-19", | |
8795 | + "identifier": { | |
8796 | + "id": "922-VIII", | |
8797 | + "legalName": "Закон України \"Про публічні закупівлі\"", | |
8798 | + "uri": "https://zakon.rada.gov.ua/laws/show/922-19" | |
8799 | + }, | |
8800 | + "type": "NATIONAL_LEGISLATION" | |
8801 | + } | |
8802 | + ], | |
8803 | + "requirementGroups": [ | |
8804 | + { | |
8805 | + "description": "Учасник підтверджує, що", | |
8806 | + "requirements": [ | |
8807 | + { | |
8808 | + "title": "Вид та умови надання забезпечення тендерних пропозицій", | |
8809 | + "description": "Умови забезпечення тендерної пропозиції: строк дії забезпечення тендерної пропозиції повинен бути протягом строку дії тендерної пропозиції, не менше ніж 90 днів з дати розкриття тендерних пропозицій електронною системою закупівель (відповідно до ст. 253 Цивільного кодексу України розраховується з наступного дня після розкриття тендерних пропозицій електронною системою закупівель), вид банківська гарантія", | |
8810 | + "dataType": "boolean", | |
8811 | + "expectedValue": "true", | |
8812 | + "eligibleEvidences": [ | |
8813 | + { | |
8814 | + "type": "document", | |
8815 | + "description": "документ що підтверджує банківську гарантію", | |
8816 | + "title": "Підтвердження банківської гарантії" | |
8817 | + } | |
8818 | + ] | |
8819 | + } | |
8820 | + ] | |
8821 | + | |
8822 | + } | |
8823 | + ] | |
8824 | + }, | |
8825 | + { | |
8826 | + "title": "Розмір та умови надання забезпечення виконання договору", | |
8827 | + "source": "winner", | |
8828 | + "classification": { | |
8829 | + "scheme": "ESPD211", | |
8830 | + "id": "CRITERION.OTHER.CONTRACT.GUARANTEE" | |
8831 | + }, | |
8832 | + "relatesTo": "tender", | |
8833 | + "legislation": [ | |
8834 | + { | |
8835 | + "article": "14.2.12", | |
8836 | + "version": "2020-04-19", | |
8837 | + "identifier": { | |
8838 | + "id": "922-VIII", | |
8839 | + "legalName": "Закон України \"Про публічні закупівлі\"", | |
8840 | + "uri": "https://zakon.rada.gov.ua/laws/show/922-19" | |
8841 | + }, | |
8842 | + "type": "NATIONAL_LEGISLATION" | |
8843 | + } | |
8844 | + ], | |
8845 | + "requirementGroups": [ | |
8846 | + { | |
8847 | + "description": "Учасник підтверджує, що", | |
8848 | + "requirements": [ | |
8849 | + { | |
8850 | + "title": "розмір та умови надання забезпечення виконання договору про закупівлю", | |
8851 | + "description": "Умови забезпечення виконання умов договору: строк дії забезпечення тендерної пропозиції повинен бути протягом строку дії тендерної пропозиції, не менше ніж 90 днів з дати розкриття тендерних пропозицій електронною системою закупівель (відповідно до ст. 253 Цивільного кодексу України розраховується з наступного дня після розкриття тендерних пропозицій електронною системою закупівель), вид забезпечення банківська гарантія, розмір забезпечення 5% від вартості договору", | |
8852 | + "dataType": "boolean", | |
8853 | + "expectedValue": "true", | |
8854 | + "eligibleEvidences": [ | |
8855 | + { | |
8856 | + "description": "Різнокольоровий скан у форматі pdf", | |
8857 | + "type": "document", | |
8858 | + "title": "Підтвердження банківської гарантії" | |
8859 | + } | |
8860 | + ] | |
8861 | + } | |
8862 | + ] | |
8863 | + | |
8864 | + } | |
8865 | + ] | |
8866 | + } | |
8867 | + ] | |
8782 | 8868 | } | ... | ... |
... | ... | @@ -4,7 +4,7 @@ Suite Setup Test Suite Setup |
4 | 4 | Suite Teardown Test Suite Teardown |
5 | 5 | |
6 | 6 | *** Variables *** |
7 | -@{USED_ROLES} tender_owner viewer provider | |
7 | +@{USED_ROLES} tender_owner viewer provider provider1 provider2 | |
8 | 8 | |
9 | 9 | ${award_index} ${0} |
10 | 10 | |
... | ... | @@ -454,3 +454,23 @@ ${award_index} ${0} |
454 | 454 | [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} |
455 | 455 | [Teardown] Оновити LAST_MODIFICATION_DATE |
456 | 456 | Дочекатися перевірки кваліфікацій ДФС ${tender_owner} ${TENDER['TENDER_UAID']} |
457 | + | |
458 | +############################################################################################## | |
459 | +# AWARDING | |
460 | +############################################################################################## | |
461 | + | |
462 | +Дочекатись початку періоду підписання угоди | |
463 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Очікування початку періоду підписання угоди | |
464 | + ... tender_owner | |
465 | + ... ${USERS.users['${tender_owner}'].broker} | |
466 | + ... wait_active_awarding_start | |
467 | + Дочекатись дати початку періоду підписання угоди ${tender_owner} ${TENDER['TENDER_UAID']} | |
468 | + | |
469 | + | |
470 | +Можливість додати підтверждення гарантії контракту | |
471 | + [Tags] Процес кваліфікації | |
472 | + ... qualification_add_contract_guarantee_document | |
473 | + ... critical | |
474 | + [Teardown] Оновити LAST_MODIFICATION_DATE | |
475 | + ${username}= Отримати поточного Переможця тендера | |
476 | + Можливість завантажити підтвердження виконання контракту в пропозицію учасника ${username} ${TENDER['TENDER_UAID']} | |
\ No newline at end of file | ... | ... |
... | ... | @@ -20,6 +20,7 @@ ${ROAD_INDEX} ${False} |
20 | 20 | ${GMDN_INDEX} ${False} |
21 | 21 | ${PLAN_TENDER} ${True} |
22 | 22 | ${ARTICLE_17} ${False} |
23 | +${CRITERIA_GUARANTEE} ${False} | |
23 | 24 | |
24 | 25 | *** Test Cases *** |
25 | 26 | ############################################################################################## | ... | ... |
... | ... | @@ -95,7 +95,9 @@ from .initial_data import ( |
95 | 95 | test_bid_criteria, |
96 | 96 | test_qualification_criteria, |
97 | 97 | test_awards_criteria, |
98 | - test_tender_data_simple_defense | |
98 | + test_tender_data_simple_defense, | |
99 | + test_contract_criteria_response_data, | |
100 | + test_criteria_guarantee_data | |
99 | 101 | ) |
100 | 102 | from barbecue import chef |
101 | 103 | from restkit import request | ... | ... |
... | ... | @@ -7,6 +7,7 @@ |
7 | 7 | -v ITEM_MEAT:True |
8 | 8 | -v LOT_MEAT:True |
9 | 9 | |
10 | +-v CRITERIA_GUARANTEE:True | |
10 | 11 | |
11 | 12 | -i create_tender |
12 | 13 | -i plan_status_complete_view |
... | ... | @@ -52,10 +53,10 @@ |
52 | 53 | -i make_bid_before_tendering_period |
53 | 54 | -i make_bid_without_related_lot |
54 | 55 | -i make_bid_without_parameters |
55 | --i make_bid_by_provider | |
56 | +-i make_bid_with_criteria_by_provider | |
56 | 57 | -i modify_bid_by_provider |
57 | 58 | -i add_doc_to_bid_by_provider |
58 | --i make_bid_by_provider1 | |
59 | +-i make_bid_with_criteria_by_provider1 | |
59 | 60 | -i bid_view_in_tendering_period |
60 | 61 | |
61 | 62 | -i add_bid_doc_after_tendering_period_by_provider |
... | ... | @@ -75,6 +76,9 @@ |
75 | 76 | -i qualification_add_doc_to_second_award |
76 | 77 | -i qualification_approve_second_award |
77 | 78 | |
79 | +-i wait_active_awarding_start | |
80 | +-i qualification_add_contract_guarantee_document | |
81 | + | |
78 | 82 | -i contract_stand_still |
79 | 83 | -i contract_view |
80 | 84 | ... | ... |
1 | +-v MODE:open_simple_defense | |
2 | + | |
3 | +-v NUMBER_OF_ITEMS:1 | |
4 | +-v NUMBER_OF_LOTS:1 | |
5 | + | |
6 | +-v TENDER_MEAT:True | |
7 | +-v ITEM_MEAT:False | |
8 | +-v LOT_MEAT:False | |
9 | + | |
10 | +-v AWARD_INDEX:1 | |
11 | +-v first_cancel_index:0 | |
12 | + | |
13 | +-i create_tender | |
14 | +-i find_tender | |
15 | + | |
16 | +-i make_bid_by_provider | |
17 | +-i make_bid_by_provider1 | |
18 | + | |
19 | +-i open_confirm_first_bid | |
20 | +-i open_confirm_second_bid | |
21 | + | |
22 | +-i awardPeriod_startDate | |
23 | +-i qualification_approve_first_award | |
24 | +-i qualification_cancel_first_time | |
25 | +-i defense_award_complaint_error | |
\ No newline at end of file | ... | ... |
1 | +-v MODE:open_simple_defense | |
2 | + | |
3 | +-v NUMBER_OF_ITEMS:1 | |
4 | +-v NUMBER_OF_LOTS:1 | |
5 | + | |
6 | +-v TENDER_MEAT:True | |
7 | +-v ITEM_MEAT:False | |
8 | +-v LOT_MEAT:False | |
9 | + | |
10 | +-v AWARD_INDEX:3 | |
11 | +-v first_cancel_index:0 | |
12 | +-v first_reject_index:1 | |
13 | +-v second_approve_index:2 | |
14 | +-v second_cancel_index:2 | |
15 | + | |
16 | +-i create_tender | |
17 | +-i find_tender | |
18 | + | |
19 | +-i make_bid_by_provider | |
20 | +-i make_bid_by_provider1 | |
21 | + | |
22 | +-i awardPeriod_startDate | |
23 | +-i qualification_approve_first_award | |
24 | +-i qualification_cancel_first_time | |
25 | +-i qualification_reject_first_time | |
26 | +-i qualification_approve_second_participant | |
27 | +-i qualification_cancel_second_time | |
28 | +-i defense_award_complaint_error | |
\ No newline at end of file | ... | ... |
robot_tests_arguments/defense_complaint_award_cancel_unsuc_cancel_unsuc_cancel_pending.txt
0 → 100644
1 | +-v MODE:open_simple_defense | |
2 | + | |
3 | +-v NUMBER_OF_ITEMS:1 | |
4 | +-v NUMBER_OF_LOTS:1 | |
5 | + | |
6 | +-v TENDER_MEAT:True | |
7 | +-v ITEM_MEAT:False | |
8 | +-v LOT_MEAT:False | |
9 | + | |
10 | +-v AWARD_INDEX:5 | |
11 | +-v first_cancel_index:0 | |
12 | +-v first_reject_index:1 | |
13 | +-v second_approve_index:2 | |
14 | +-v second_cancel_index:2 | |
15 | +-v second_reject_index:3 | |
16 | +-v third_approve_index:4 | |
17 | +-v third_cancel_index:4 | |
18 | + | |
19 | + | |
20 | +-i create_tender | |
21 | +-i find_tender | |
22 | + | |
23 | +-i make_bid_by_provider | |
24 | +-i make_bid_by_provider1 | |
25 | +-i make_bid_by_provider2 | |
26 | + | |
27 | +-i awardPeriod_startDate | |
28 | +-i qualification_approve_first_award | |
29 | +-i qualification_cancel_first_time | |
30 | +-i qualification_reject_first_time | |
31 | +-i qualification_approve_second_participant | |
32 | +-i qualification_cancel_second_time | |
33 | +-i qualification_reject_second_time | |
34 | +-i qualification_approve_third_participant | |
35 | +-i qualification_cancel_third_time | |
36 | +-i defense_award_complaint_error | |
\ No newline at end of file | ... | ... |
1 | +-v MODE:open_simple_defense | |
2 | + | |
3 | +-v NUMBER_OF_ITEMS:1 | |
4 | +-v NUMBER_OF_LOTS:1 | |
5 | + | |
6 | +-v TENDER_MEAT:True | |
7 | +-v ITEM_MEAT:False | |
8 | +-v LOT_MEAT:False | |
9 | + | |
10 | +-v AWARD_INDEX:5 | |
11 | +-v first_cancel_index:0 | |
12 | +-v first_reject_index:1 | |
13 | +-v second_approve_index:2 | |
14 | +-v second_cancel_index:2 | |
15 | +-v second_reject_index:3 | |
16 | +-v third_approve_index:4 | |
17 | +-v third_cancel_index:4 | |
18 | +-v third_reject_index:5 | |
19 | + | |
20 | + | |
21 | +-i create_tender | |
22 | +-i find_tender | |
23 | + | |
24 | +-i make_bid_by_provider | |
25 | +-i make_bid_by_provider1 | |
26 | +-i make_bid_by_provider2 | |
27 | + | |
28 | +-i awardPeriod_startDate | |
29 | +-i qualification_approve_first_award | |
30 | +-i qualification_cancel_first_time | |
31 | +-i qualification_reject_first_time | |
32 | +-i qualification_approve_second_participant | |
33 | +-i qualification_cancel_second_time | |
34 | +-i qualification_reject_second_time | |
35 | +-i qualification_approve_third_participant | |
36 | +-i qualification_cancel_third_time | |
37 | +-i qualification_reject_third_time | |
38 | +-i defense_award_complaint_error | |
\ No newline at end of file | ... | ... |
1 | +-v MODE:open_simple_defense | |
2 | + | |
3 | +-v NUMBER_OF_ITEMS:1 | |
4 | +-v NUMBER_OF_LOTS:1 | |
5 | + | |
6 | +-v TENDER_MEAT:True | |
7 | +-v ITEM_MEAT:False | |
8 | +-v LOT_MEAT:False | |
9 | + | |
10 | +-v AWARD_INDEX:4 | |
11 | +-v first_cancel_index:0 | |
12 | +-v first_reject_index:1 | |
13 | +-v second_approve_index:2 | |
14 | +-v second_cancel_index:2 | |
15 | +-v second_reject_index:3 | |
16 | + | |
17 | +-i create_tender | |
18 | +-i find_tender | |
19 | + | |
20 | +-i make_bid_by_provider | |
21 | +-i make_bid_by_provider1 | |
22 | +-i make_bid_by_provider2 | |
23 | + | |
24 | +-i awardPeriod_startDate | |
25 | +-i qualification_approve_first_award | |
26 | +-i qualification_cancel_first_time | |
27 | +-i qualification_reject_first_time | |
28 | +-i qualification_approve_second_participant | |
29 | +-i qualification_cancel_second_time | |
30 | +-i qualification_reject_second_time | |
31 | +-i defense_award_complaint_error | |
\ No newline at end of file | ... | ... |
1 | +-v MODE:open_simple_defense | |
2 | + | |
3 | +-v NUMBER_OF_ITEMS:1 | |
4 | +-v NUMBER_OF_LOTS:1 | |
5 | + | |
6 | +-v TENDER_MEAT:True | |
7 | +-v ITEM_MEAT:False | |
8 | +-v LOT_MEAT:False | |
9 | + | |
10 | +-v AWARD_INDEX:2 | |
11 | +-v first_cancel_index:0 | |
12 | +-v first_reject_index:1 | |
13 | + | |
14 | +-i create_tender | |
15 | +-i find_tender | |
16 | + | |
17 | +-i make_bid_by_provider | |
18 | +-i make_bid_by_provider1 | |
19 | + | |
20 | +-i open_confirm_first_bid | |
21 | +-i open_confirm_second_bid | |
22 | + | |
23 | +-i awardPeriod_startDate | |
24 | +-i qualification_approve_first_award | |
25 | +-i qualification_cancel_first_time | |
26 | +-i qualification_reject_first_time | |
27 | +-i defense_award_complaint_error | |
\ No newline at end of file | ... | ... |
... | ... | @@ -11,6 +11,8 @@ |
11 | 11 | |
12 | 12 | -v ARTICLE_17:True |
13 | 13 | |
14 | +-v CRITERIA_GUARANTEE:True | |
15 | + | |
14 | 16 | -i create_tender |
15 | 17 | -i find_tender |
16 | 18 | -i tender_view |
... | ... | @@ -59,6 +61,9 @@ |
59 | 61 | -i qualification_add_doc_to_second_award |
60 | 62 | -i qualification_approve_second_award |
61 | 63 | |
64 | +-i wait_active_awarding_start | |
65 | +-i qualification_add_contract_guarantee_document | |
66 | + | |
62 | 67 | -i contract_stand_still |
63 | 68 | -i contract_view |
64 | 69 | -i contract_view_dateSigned | ... | ... |
... | ... | @@ -9,6 +9,8 @@ |
9 | 9 | |
10 | 10 | -v ARTICLE_17:True |
11 | 11 | |
12 | +-v CRITERIA_GUARANTEE:True | |
13 | + | |
12 | 14 | |
13 | 15 | -i create_tender |
14 | 16 | -i find_tender |
... | ... | @@ -96,10 +98,12 @@ |
96 | 98 | -i qualification_add_doc_to_first_award |
97 | 99 | -i qualification_add_criteria_response_first_award |
98 | 100 | -i qualification_reject_first_award |
99 | - | |
100 | 101 | -i qualification_add_doc_to_second_award |
101 | 102 | -i qualification_approve_second_award |
102 | 103 | |
104 | +-i wait_active_awarding_start | |
105 | +-i qualification_add_contract_guarantee_document | |
106 | + | |
103 | 107 | -i contract_stand_still |
104 | 108 | -i contract_view |
105 | 109 | -i modify_contract_invalid_amount | ... | ... |
... | ... | @@ -9,6 +9,8 @@ |
9 | 9 | |
10 | 10 | -v ARTICLE_17:True |
11 | 11 | |
12 | +-v CRITERIA_GUARANTEE:True | |
13 | + | |
12 | 14 | |
13 | 15 | -i create_tender |
14 | 16 | -i find_tender |
... | ... | @@ -80,6 +82,9 @@ |
80 | 82 | -i qualification_add_doc_to_second_award |
81 | 83 | -i qualification_approve_second_award |
82 | 84 | |
85 | +-i wait_active_awarding_start | |
86 | +-i qualification_add_contract_guarantee_document | |
87 | + | |
83 | 88 | -i contract_stand_still |
84 | 89 | -i contract_view |
85 | 90 | -i modify_contract_invalid_amount | ... | ... |
Please
register
or
login
to post a comment