Showing
14 changed files
with
232 additions
and
11 deletions
| @@ -11,7 +11,7 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | @@ -11,7 +11,7 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | ||
| 11 | 11 | ||
| 12 | *** Keywords *** | 12 | *** Keywords *** |
| 13 | Можливість оголосити тендер | 13 | Можливість оголосити тендер |
| 14 | - ${file_path}= Get Variable Value ${ARTIFACT_FILE} artifact.yaml | 14 | + ${file_path}= Get Variable Value ${ARTIFACT_FILE} artifact_plan.yaml |
| 15 | ${ARTIFACT}= load_data_from ${file_path} | 15 | ${ARTIFACT}= load_data_from ${file_path} |
| 16 | Log ${ARTIFACT.tender_uaid} | 16 | Log ${ARTIFACT.tender_uaid} |
| 17 | ${NUMBER_OF_LOTS}= Convert To Integer ${NUMBER_OF_LOTS} | 17 | ${NUMBER_OF_LOTS}= Convert To Integer ${NUMBER_OF_LOTS} |
| @@ -242,6 +242,7 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | @@ -242,6 +242,7 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | ||
| 242 | 242 | ||
| 243 | Можливість створити план закупівлі | 243 | Можливість створити план закупівлі |
| 244 | ${NUMBER_OF_ITEMS}= Convert To Integer ${NUMBER_OF_ITEMS} | 244 | ${NUMBER_OF_ITEMS}= Convert To Integer ${NUMBER_OF_ITEMS} |
| 245 | + ${NUMBER_OF_BREAKDOWN}= Convert To Integer ${NUMBER_OF_BREAKDOWN} | ||
| 245 | ${tender_parameters}= Create Dictionary | 246 | ${tender_parameters}= Create Dictionary |
| 246 | ... mode=${MODE} | 247 | ... mode=${MODE} |
| 247 | ... number_of_items=${NUMBER_OF_ITEMS} | 248 | ... number_of_items=${NUMBER_OF_ITEMS} |
| @@ -250,6 +251,7 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | @@ -250,6 +251,7 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | ||
| 250 | ... moz_integration=${${MOZ_INTEGRATION}} | 251 | ... moz_integration=${${MOZ_INTEGRATION}} |
| 251 | ... road_index=${${ROAD_INDEX}} | 252 | ... road_index=${${ROAD_INDEX}} |
| 252 | ... gmdn_index=${${GMDN_INDEX}} | 253 | ... gmdn_index=${${GMDN_INDEX}} |
| 254 | + ... number_of_breakdown=${NUMBER_OF_BREAKDOWN} | ||
| 253 | ${DIALOGUE_TYPE}= Get Variable Value ${DIALOGUE_TYPE} | 255 | ${DIALOGUE_TYPE}= Get Variable Value ${DIALOGUE_TYPE} |
| 254 | Run keyword if '${DIALOGUE_TYPE}' != '${None}' Set to dictionary ${tender_parameters} dialogue_type=${DIALOGUE_TYPE} | 256 | Run keyword if '${DIALOGUE_TYPE}' != '${None}' Set to dictionary ${tender_parameters} dialogue_type=${DIALOGUE_TYPE} |
| 255 | ${tender_data}= Підготувати дані для створення плану ${tender_parameters} | 257 | ${tender_data}= Підготувати дані для створення плану ${tender_parameters} |
| @@ -378,6 +380,7 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | @@ -378,6 +380,7 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | ||
| 378 | Перевірити неможливість зміни поля ${field_name} тендера на значення ${field_value} для користувача ${username} | 380 | Перевірити неможливість зміни поля ${field_name} тендера на значення ${field_value} для користувача ${username} |
| 379 | Require Failure ${username} Внести зміни в тендер ${TENDER['TENDER_UAID']} ${field_name} ${field_value} | 381 | Require Failure ${username} Внести зміни в тендер ${TENDER['TENDER_UAID']} ${field_name} ${field_value} |
| 380 | 382 | ||
| 383 | + | ||
| 381 | Можливість змінити поле ${field_name} плану на ${field_value} | 384 | Можливість змінити поле ${field_name} плану на ${field_value} |
| 382 | Run As ${tender_owner} Внести зміни в план ${TENDER['TENDER_UAID']} ${field_name} ${field_value} | 385 | Run As ${tender_owner} Внести зміни в план ${TENDER['TENDER_UAID']} ${field_name} ${field_value} |
| 383 | 386 | ||
| @@ -1708,3 +1711,28 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | @@ -1708,3 +1711,28 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | ||
| 1708 | ${document}= openprocurement_client.Отримати останній документ кваліфікації з типом registerExtract ${username} ${tender_uaid} ${award_id} | 1711 | ${document}= openprocurement_client.Отримати останній документ кваліфікації з типом registerExtract ${username} ${tender_uaid} ${award_id} |
| 1709 | Порівняти об'єкти ${document['title']} edr_identification.yaml | 1712 | Порівняти об'єкти ${document['title']} edr_identification.yaml |
| 1710 | 1713 | ||
| 1714 | +############################################################################################## | ||
| 1715 | +# PLAN | ||
| 1716 | +############################################################################################## | ||
| 1717 | + | ||
| 1718 | +Можливість скасувати план | ||
| 1719 | + ${cancellation_data}= Підготувати дані про скасування плану | ||
| 1720 | + Run As ${tender_owner} | ||
| 1721 | + ... Скасувати план | ||
| 1722 | + ... ${TENDER['TENDER_UAID']} | ||
| 1723 | + ... ${cancellation_data} | ||
| 1724 | + Set To Dictionary ${USERS.users['${tender_owner}']} plan_cancellation_data=${cancellation_data} | ||
| 1725 | + | ||
| 1726 | + | ||
| 1727 | +Можливість перевірити статус плану після публікації тендера | ||
| 1728 | + ${file_path}= Get Variable Value ${ARTIFACT_FILE} artifact_plan.yaml | ||
| 1729 | + ${ARTIFACT}= load_data_from ${file_path} | ||
| 1730 | + Log ${ARTIFACT.tender_uaid} | ||
| 1731 | + Звірити статус плану ${tender_owner} ${ARTIFACT.tender_uaid} complete | ||
| 1732 | + | ||
| 1733 | + | ||
| 1734 | +Можливість змінити на ${percent} відсотки бюджет плану | ||
| 1735 | + ${percent}= Convert To Number ${percent} | ||
| 1736 | + ${divider}= Convert To Number 0.01 | ||
| 1737 | + ${value}= mult_and_round ${USERS.users['${tender_owner}'].tender_data.data.budget.amount} ${percent} ${divider} precision=${2} | ||
| 1738 | + Можливість змінити поле budget.amount плану на ${value} |
| @@ -190,7 +190,7 @@ Library openprocurement_client.utils | @@ -190,7 +190,7 @@ Library openprocurement_client.utils | ||
| 190 | 190 | ||
| 191 | Створити тендер | 191 | Створити тендер |
| 192 | [Arguments] ${username} ${tender_data} | 192 | [Arguments] ${username} ${tender_data} |
| 193 | - ${file_path}= Get Variable Value ${ARTIFACT_FILE} artifact.yaml | 193 | + ${file_path}= Get Variable Value ${ARTIFACT_FILE} artifact_plan.yaml |
| 194 | ${ARTIFACT}= load_data_from ${file_path} | 194 | ${ARTIFACT}= load_data_from ${file_path} |
| 195 | Log ${ARTIFACT.tender_owner_access_token} | 195 | Log ${ARTIFACT.tender_owner_access_token} |
| 196 | Log ${ARTIFACT.tender_id} | 196 | Log ${ARTIFACT.tender_id} |
| @@ -1681,6 +1681,36 @@ Library openprocurement_client.utils | @@ -1681,6 +1681,36 @@ Library openprocurement_client.utils | ||
| 1681 | ${filename}= download_file_from_url ${document.url} ${OUTPUT_DIR}${/}${document.title} | 1681 | ${filename}= download_file_from_url ${document.url} ${OUTPUT_DIR}${/}${document.title} |
| 1682 | [return] ${filename} | 1682 | [return] ${filename} |
| 1683 | 1683 | ||
| 1684 | + | ||
| 1685 | +Скасувати план | ||
| 1686 | + [Arguments] ${username} ${tender_uaid} ${cancellation_reason} | ||
| 1687 | + ${tender}= openprocurement_client.Пошук плану по ідентифікатору ${username} ${tender_uaid} | ||
| 1688 | + ${data}= Create dictionary cancellation=${cancellation_reason} | ||
| 1689 | + ${cancellation_data}= Create dictionary data=${data} | ||
| 1690 | + ${cancellation_data}= munch_dict arg=${cancellation_data} | ||
| 1691 | + ${cancel_reply}= Call Method ${USERS.users['${username}'].plan_client} patch_plan | ||
| 1692 | + ... ${tender.data.id} | ||
| 1693 | + ... ${cancellation_data} | ||
| 1694 | + ... access_token=${tender.access.token} | ||
| 1695 | + ${cancellation_id}= Set variable ${cancel_reply.data.id} | ||
| 1696 | + openprocurement_client.Підтвердити скасування плану ${username} ${tender_uaid} ${cancellation_id} | ||
| 1697 | + | ||
| 1698 | + | ||
| 1699 | +Підтвердити скасування плану | ||
| 1700 | + [Documentation] | ||
| 1701 | + ... [Arguments] Username, tender uaid | ||
| 1702 | + ... Find plan using uaid, get cancellation test_confirmation data and call patch_plan | ||
| 1703 | + ... [Return] Nothing | ||
| 1704 | + [Arguments] ${username} ${tender_uaid} ${cancellation_id} | ||
| 1705 | + ${tender}= openprocurement_client.Пошук плану по ідентифікатору ${username} ${tender_uaid} | ||
| 1706 | + ${data}= test_confirm_plan_cancel_data | ||
| 1707 | + Log ${data} | ||
| 1708 | + ${reply}= Call Method ${USERS.users['${username}'].plan_client} patch_plan | ||
| 1709 | + ... ${tender.data.id} | ||
| 1710 | + ... ${data} | ||
| 1711 | + ... access_token=${tender.access.token} | ||
| 1712 | + Log ${reply} | ||
| 1713 | + | ||
| 1684 | ############################################################################## | 1714 | ############################################################################## |
| 1685 | # OpenUA procedure | 1715 | # OpenUA procedure |
| 1686 | ############################################################################## | 1716 | ############################################################################## |
| @@ -298,6 +298,7 @@ def test_tender_data_planning(params): | @@ -298,6 +298,7 @@ def test_tender_data_planning(params): | ||
| 298 | "currency": "UAH", | 298 | "currency": "UAH", |
| 299 | "amount": round(random.uniform(3000, 99999999999.99), 2), | 299 | "amount": round(random.uniform(3000, 99999999999.99), 2), |
| 300 | "id": str(fake.random_int(min=1, max=99999999999)) + "-" + str(fake.random_int(min=1, max=9)), | 300 | "id": str(fake.random_int(min=1, max=99999999999)) + "-" + str(fake.random_int(min=1, max=9)), |
| 301 | + "breakdown": [] | ||
| 301 | }, | 302 | }, |
| 302 | "procuringEntity": { | 303 | "procuringEntity": { |
| 303 | "identifier": { | 304 | "identifier": { |
| @@ -349,6 +350,12 @@ def test_tender_data_planning(params): | @@ -349,6 +350,12 @@ def test_tender_data_planning(params): | ||
| 349 | data["tender"]["procurementMethod"] = "open" | 350 | data["tender"]["procurementMethod"] = "open" |
| 350 | if params['mode'] in mode_limited: | 351 | if params['mode'] in mode_limited: |
| 351 | data["tender"]["procurementMethod"] = "limited" | 352 | data["tender"]["procurementMethod"] = "limited" |
| 353 | + if params.get('number_of_breakdown'): | ||
| 354 | + value_data = breakdown_value_generation(params['number_of_breakdown'], data['budget']['amount']) | ||
| 355 | + for value in value_data: | ||
| 356 | + breakdown_element = test_breakdown_data() | ||
| 357 | + breakdown_element['value']['amount'] = value | ||
| 358 | + data['budget']['breakdown'].append(breakdown_element) | ||
| 352 | return munchify(data) | 359 | return munchify(data) |
| 353 | 360 | ||
| 354 | 361 | ||
| @@ -784,7 +791,6 @@ def test_modification_data(item_id, field_name, field_value): | @@ -784,7 +791,6 @@ def test_modification_data(item_id, field_name, field_value): | ||
| 784 | return munchify({'data':data}) | 791 | return munchify({'data':data}) |
| 785 | 792 | ||
| 786 | 793 | ||
| 787 | - | ||
| 788 | def get_hash(file_contents): | 794 | def get_hash(file_contents): |
| 789 | return ("md5:"+hashlib.md5(file_contents).hexdigest()) | 795 | return ("md5:"+hashlib.md5(file_contents).hexdigest()) |
| 790 | 796 | ||
| @@ -970,3 +976,39 @@ def invalid_buyers_data(): | @@ -970,3 +976,39 @@ def invalid_buyers_data(): | ||
| 970 | "name": "Київський Тестовий Ліцей" | 976 | "name": "Київський Тестовий Ліцей" |
| 971 | } | 977 | } |
| 972 | return munchify(buyers) | 978 | return munchify(buyers) |
| 979 | + | ||
| 980 | + | ||
| 981 | +def test_plan_cancel_data(): | ||
| 982 | + plan_cancel = { | ||
| 983 | + "cancellation": { | ||
| 984 | + "reason": "Підстава для скасування", | ||
| 985 | + "reason_en": "Reason of the cancellation" | ||
| 986 | + } | ||
| 987 | + } | ||
| 988 | + return munchify(plan_cancel) | ||
| 989 | + | ||
| 990 | + | ||
| 991 | +def test_confirm_plan_cancel_data(): | ||
| 992 | + return munchify({ | ||
| 993 | + "data": { | ||
| 994 | + "cancellation": { | ||
| 995 | + "status": "active" | ||
| 996 | + } | ||
| 997 | + } | ||
| 998 | + }) | ||
| 999 | + | ||
| 1000 | + | ||
| 1001 | +def test_breakdown_data(): | ||
| 1002 | + return munchify({ | ||
| 1003 | + "title": random.choice(["state", "local"]), | ||
| 1004 | + "description": fake.description(), | ||
| 1005 | + "value": { | ||
| 1006 | + "currency": "UAH" | ||
| 1007 | + } | ||
| 1008 | + }) | ||
| 1009 | + | ||
| 1010 | + | ||
| 1011 | +def breakdown_value_generation(number_of_breakdown, plan_value): | ||
| 1012 | + value_data = [round(random.uniform(1, plan_value / number_of_breakdown), 2) for _ in range(number_of_breakdown - 1)] | ||
| 1013 | + value_data.append(plan_value - sum(value_data)) | ||
| 1014 | + return value_data |
| @@ -28,6 +28,11 @@ Test Suite Teardown | @@ -28,6 +28,11 @@ Test Suite Teardown | ||
| 28 | Run Keyword And Ignore Error Створити артефакт | 28 | Run Keyword And Ignore Error Створити артефакт |
| 29 | 29 | ||
| 30 | 30 | ||
| 31 | +Test Suite Teardown Plan | ||
| 32 | + Close all browsers | ||
| 33 | + Run Keyword And Ignore Error Створити артефакт план | ||
| 34 | + | ||
| 35 | + | ||
| 31 | Set Suite Variable With Default Value | 36 | Set Suite Variable With Default Value |
| 32 | [Arguments] ${suite_var} ${def_value} | 37 | [Arguments] ${suite_var} ${def_value} |
| 33 | ${tmp}= Get Variable Value ${${suite_var}} ${def_value} | 38 | ${tmp}= Get Variable Value ${${suite_var}} ${def_value} |
| @@ -188,6 +193,23 @@ Get Broker Property By Username | @@ -188,6 +193,23 @@ Get Broker Property By Username | ||
| 188 | log_object_data ${artifact} file_name=artifact update=${True} artifact=${True} | 193 | log_object_data ${artifact} file_name=artifact update=${True} artifact=${True} |
| 189 | 194 | ||
| 190 | 195 | ||
| 196 | +Створити артефакт план | ||
| 197 | + ${artifact}= Create Dictionary | ||
| 198 | + ... api_version=${API_VERSION} | ||
| 199 | + ... tender_uaid=${TENDER['TENDER_UAID']} | ||
| 200 | + ... last_modification_date=${TENDER['LAST_MODIFICATION_DATE']} | ||
| 201 | + ... mode=${MODE} | ||
| 202 | + Run Keyword And Ignore Error Set To Dictionary ${artifact} | ||
| 203 | + ... tender_owner=${USERS.users['${tender_owner}'].broker} | ||
| 204 | + ... access_token=${USERS.users['${tender_owner}'].access_token} | ||
| 205 | + ... tender_id=${USERS.users['${tender_owner}'].tender_data.data.id} | ||
| 206 | + ... tender_owner_access_token=${USERS.users['${tender_owner}'].access_token} | ||
| 207 | + Run Keyword And Ignore Error Set To Dictionary ${artifact} | ||
| 208 | + ... tender_file_properties=${USERS.users['${tender_owner}'].tender_document.file_properties} | ||
| 209 | + Log ${artifact} | ||
| 210 | + log_object_data ${artifact} file_name=artifact_plan update=${True} artifact=${True} | ||
| 211 | + | ||
| 212 | + | ||
| 191 | Завантажити дані про тендер | 213 | Завантажити дані про тендер |
| 192 | ${file_path}= Get Variable Value ${ARTIFACT_FILE} artifact.yaml | 214 | ${file_path}= Get Variable Value ${ARTIFACT_FILE} artifact.yaml |
| 193 | ${ARTIFACT}= load_data_from ${file_path} | 215 | ${ARTIFACT}= load_data_from ${file_path} |
| @@ -336,6 +358,19 @@ Get Broker Property By Username | @@ -336,6 +358,19 @@ Get Broker Property By Username | ||
| 336 | ... document=${document} | 358 | ... document=${document} |
| 337 | ... description=${new_description} | 359 | ... description=${new_description} |
| 338 | ${cancellation_data}= munchify ${cancellation_data} | 360 | ${cancellation_data}= munchify ${cancellation_data} |
| 361 | + Log ${cancellation_data} | ||
| 362 | + [Return] ${cancellation_data} | ||
| 363 | + | ||
| 364 | + | ||
| 365 | +Підготувати дані про скасування плану | ||
| 366 | + ${cancellation_reason}= create_fake_sentence | ||
| 367 | + ${cancellation_reason_en}= create_fake_sentence | ||
| 368 | + ${cancellation_data}= Create Dictionary | ||
| 369 | + ... reason=${cancellation_reason} | ||
| 370 | + ... reason_en=${cancellation_reason_en} | ||
| 371 | + ${cancellation_data}= munchify ${cancellation_data} | ||
| 372 | + #${cancellation_data}= test_plan_cancel_data | ||
| 373 | + Log ${cancellation_data} | ||
| 339 | [Return] ${cancellation_data} | 374 | [Return] ${cancellation_data} |
| 340 | 375 | ||
| 341 | 376 | ||
| @@ -951,6 +986,12 @@ Require Failure | @@ -951,6 +986,12 @@ Require Failure | ||
| 951 | [Arguments] ${username} ${tender_uaid} ${left} | 986 | [Arguments] ${username} ${tender_uaid} ${left} |
| 952 | ${right}= Run as ${username} Отримати інформацію із тендера ${tender_uaid} status | 987 | ${right}= Run as ${username} Отримати інформацію із тендера ${tender_uaid} status |
| 953 | Порівняти об'єкти ${left} ${right} | 988 | Порівняти об'єкти ${left} ${right} |
| 989 | + Порівняти об'єкти ${left} ${right} | ||
| 990 | + | ||
| 991 | + | ||
| 992 | +Звірити статус плану | ||
| 993 | + [Arguments] ${username} ${tender_uaid} ${left} | ||
| 994 | + ${right}= Run as ${username} Отримати інформацію із плану ${tender_uaid} status | ||
| 954 | 995 | ||
| 955 | 996 | ||
| 956 | Звірити статус об'єкта моніторингу | 997 | Звірити статус об'єкта моніторингу |
| @@ -263,6 +263,15 @@ ${PLAN_TENDER} ${True} | @@ -263,6 +263,15 @@ ${PLAN_TENDER} ${True} | ||
| 263 | Run Keyword And Expect Error * Можливість оголосити тендер з використанням валідації план-тендер ${4} | 263 | Run Keyword And Expect Error * Можливість оголосити тендер з використанням валідації план-тендер ${4} |
| 264 | 264 | ||
| 265 | 265 | ||
| 266 | +Перевірити статус плану - завершено | ||
| 267 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Відображення основних даних плану | ||
| 268 | + ... tender_owner | ||
| 269 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 270 | + ... plan_status_complete_view | ||
| 271 | + ... critical | ||
| 272 | + Можливість перевірити статус плану після публікації тендера | ||
| 273 | + | ||
| 274 | + | ||
| 266 | Можливість знайти тендер по ідентифікатору | 275 | Можливість знайти тендер по ідентифікатору |
| 267 | [Tags] ${USERS.users['${viewer}'].broker}: Пошук тендера | 276 | [Tags] ${USERS.users['${viewer}'].broker}: Пошук тендера |
| 268 | ... viewer tender_owner provider provider1 | 277 | ... viewer tender_owner provider provider1 |
| 1 | *** Settings *** | 1 | *** Settings *** |
| 2 | Resource base_keywords.robot | 2 | Resource base_keywords.robot |
| 3 | Suite Setup Test Suite Setup | 3 | Suite Setup Test Suite Setup |
| 4 | -Suite Teardown Test Suite Teardown | 4 | +Suite Teardown Test Suite Teardown Plan |
| 5 | 5 | ||
| 6 | *** Variables *** | 6 | *** Variables *** |
| 7 | ${RESOURCE} plans | 7 | ${RESOURCE} plans |
| @@ -14,6 +14,7 @@ ${ITEM_MEAT} ${False} | @@ -14,6 +14,7 @@ ${ITEM_MEAT} ${False} | ||
| 14 | ${MOZ_INTEGRATION} ${False} | 14 | ${MOZ_INTEGRATION} ${False} |
| 15 | ${ROAD_INDEX} ${False} | 15 | ${ROAD_INDEX} ${False} |
| 16 | ${GMDN_INDEX} ${False} | 16 | ${GMDN_INDEX} ${False} |
| 17 | +${NUMBER_OF_BREAKDOWN} ${2} | ||
| 17 | 18 | ||
| 18 | *** Test Cases *** | 19 | *** Test Cases *** |
| 19 | Неможливість створити план закупівлі з двома buyers | 20 | Неможливість створити план закупівлі з двома buyers |
| @@ -55,6 +56,16 @@ ${GMDN_INDEX} ${False} | @@ -55,6 +56,16 @@ ${GMDN_INDEX} ${False} | ||
| 55 | Можливість знайти план по ідентифікатору | 56 | Можливість знайти план по ідентифікатору |
| 56 | 57 | ||
| 57 | 58 | ||
| 59 | +Відображення статусу плану - заплановано | ||
| 60 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Відображення основних даних плану | ||
| 61 | + ... tender_owner | ||
| 62 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 63 | + ... status_sheduled_view | ||
| 64 | + ... critical | ||
| 65 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 66 | + Звірити статус плану ${tender_owner} ${TENDER['TENDER_UAID']} scheduled | ||
| 67 | + | ||
| 68 | + | ||
| 58 | Відображення типу запланованого тендера | 69 | Відображення типу запланованого тендера |
| 59 | [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних плану | 70 | [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних плану |
| 60 | ... viewer | 71 | ... viewer |
| @@ -265,8 +276,7 @@ ${GMDN_INDEX} ${False} | @@ -265,8 +276,7 @@ ${GMDN_INDEX} ${False} | ||
| 265 | ... critical | 276 | ... critical |
| 266 | [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | 277 | [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} |
| 267 | [Teardown] Оновити LAST_MODIFICATION_DATE | 278 | [Teardown] Оновити LAST_MODIFICATION_DATE |
| 268 | - ${new_amount}= create_fake_value_amount | ||
| 269 | - Можливість змінити поле budget.amount плану на ${new_amount} | 279 | + Можливість змінити на 150 відсотки бюджет плану |
| 270 | 280 | ||
| 271 | 281 | ||
| 272 | Можливість змінити кінцеву дату доставки | 282 | Можливість змінити кінцеву дату доставки |
| @@ -337,3 +347,22 @@ ${GMDN_INDEX} ${False} | @@ -337,3 +347,22 @@ ${GMDN_INDEX} ${False} | ||
| 337 | [Teardown] Оновити LAST_MODIFICATION_DATE | 347 | [Teardown] Оновити LAST_MODIFICATION_DATE |
| 338 | ${new_period}= create_fake_period days=${1460} | 348 | ${new_period}= create_fake_period days=${1460} |
| 339 | Можливість змінити поле budget.period плану на ${new_period} | 349 | Можливість змінити поле budget.period плану на ${new_period} |
| 350 | + | ||
| 351 | + | ||
| 352 | +Можливість скасувати план | ||
| 353 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Скасування плану | ||
| 354 | + ... tender_owner | ||
| 355 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 356 | + ... plan_cancellation | ||
| 357 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 358 | + Можливість скасувати план | ||
| 359 | + | ||
| 360 | + | ||
| 361 | +Відображення статусу плану - скасовано | ||
| 362 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Відображення основних даних плану | ||
| 363 | + ... tender_owner | ||
| 364 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 365 | + ... status_cancelled_view | ||
| 366 | + ... critical | ||
| 367 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 368 | + Звірити статус плану ${tender_owner} ${TENDER['TENDER_UAID']} cancelled |
| @@ -78,7 +78,9 @@ from .initial_data import ( | @@ -78,7 +78,9 @@ from .initial_data import ( | ||
| 78 | invalid_INN_data, | 78 | invalid_INN_data, |
| 79 | invalid_cost_data, | 79 | invalid_cost_data, |
| 80 | invalid_gmdn_data, | 80 | invalid_gmdn_data, |
| 81 | - invalid_buyers_data | 81 | + invalid_buyers_data, |
| 82 | + test_plan_cancel_data, | ||
| 83 | + test_confirm_plan_cancel_data | ||
| 82 | ) | 84 | ) |
| 83 | from barbecue import chef | 85 | from barbecue import chef |
| 84 | from restkit import request | 86 | from restkit import request |
| 1 | +-v MODE:negotiation | ||
| 2 | + | ||
| 3 | +-v NUMBER_OF_ITEMS:2 | ||
| 4 | +-v NUMBER_OF_LOTS:0 | ||
| 5 | + | ||
| 6 | +-i create_tender | ||
| 7 | +-i add_tender_doc | ||
| 8 | +-i add_award | ||
| 9 | +-i find_tender | ||
| 10 | +-i tender_view_milestone | ||
| 11 | +-i tender_view | ||
| 12 | +-i add_tender_doc | ||
| 13 | +-i award_view | ||
| 14 | +-i add_contract | ||
| 15 | +-i modify_contract_amount_net | ||
| 16 | +-i modify_contract_value | ||
| 17 | + |
| 1 | +-v MODE:negotiation | ||
| 2 | + | ||
| 3 | +-v NUMBER_OF_ITEMS:2 | ||
| 4 | +-v NUMBER_OF_LOTS:0 | ||
| 5 | + | ||
| 6 | +-i create_tender | ||
| 7 | +-i add_tender_doc | ||
| 8 | +-i add_award | ||
| 9 | +-i find_tender | ||
| 10 | +-i tender_view_title | ||
| 11 | +-i tender_view | ||
| 12 | +-i tender_view_description | ||
| 13 | +-i tender_view_cause_description | ||
| 14 | +-i tender_view_cause | ||
| 15 | +-i tender_view_milestone | ||
| 16 | +-i tender_view_contactPoint_url | ||
| 17 | +-i tender_view_unit_code | ||
| 18 | +-i tender_view_delivery_address | ||
| 19 | +-i add_tender_doc | ||
| 20 | +-i award_view | ||
| 21 | +-i add_contract | ||
| 22 | +-i modify_contract_amount_net | ||
| 23 | +-i modify_contract_value | ||
| 24 | + |
Please
register
or
login
to post a comment