Commit 74e6f1585cb1b694a5c6cd1b75b5b8f62bc8ac87
1 parent
cda1d559
add lot and feature, milestone, items in lot for create tender. search plan. get…
… information from the plan
Showing
6 changed files
with
242 additions
and
57 deletions
| @@ -51,26 +51,28 @@ Resource playtender_tende | @@ -51,26 +51,28 @@ Resource playtender_tende | ||
| 51 | 51 | ||
| 52 | open plan page by uaid ${plan_uaid} | 52 | open plan page by uaid ${plan_uaid} |
| 53 | 53 | ||
| 54 | +Пошук плану по ідентифікатору | ||
| 55 | + [Arguments] ${username} ${tenderId} | ||
| 56 | + [Documentation] Знайти план з uaid рівним tender_uaid. | ||
| 57 | + search plan ${tenderId} | ||
| 58 | + | ||
| 59 | +Отримати інформацію із плану | ||
| 60 | + [Arguments] ${username} ${tender_uaid} ${field_name} | ||
| 61 | + [Documentation] Отримати інформацію із плану, користуючись ідентіфікатором плану та назвою поля ${field_name}. | ||
| 62 | + | ||
| 63 | + get information from the plan ${tender_uaid} ${field_name} | ||
| 64 | + | ||
| 54 | Створити тендер | 65 | Створити тендер |
| 55 | [Arguments] ${user} ${tender_data} | 66 | [Arguments] ${user} ${tender_data} |
| 56 | [Documentation] Створити тендер з початковими даними tender_data. Повернути uaid створеного тендера. | 67 | [Documentation] Створити тендер з початковими даними tender_data. Повернути uaid створеного тендера. |
| 57 | 68 | ||
| 58 | -<<<<<<< HEAD | 69 | + ${tender_prepared_data} = prepare tender data ${tender_data['data']} |
| 70 | + log ${tender_prepared_data} | ||
| 71 | + | ||
| 59 | open new tender form | 72 | open new tender form |
| 60 | - fill tender form ${tender_data['data']} | 73 | + fill tender form ${tender_prepared_data} |
| 61 | submit form and check result ${tender_form_submit_btn_locator} ${tender_form_submit_success_msg} ${tender_created_checker_element_locator} | 74 | submit form and check result ${tender_form_submit_btn_locator} ${tender_form_submit_success_msg} ${tender_created_checker_element_locator} |
| 62 | wait until page does not contain element with reloading ${tender_sync_element_locator} | 75 | wait until page does not contain element with reloading ${tender_sync_element_locator} |
| 63 | ${tender_uaid} = get text ${tender_uaid_text_locator} | 76 | ${tender_uaid} = get text ${tender_uaid_text_locator} |
| 64 | [Return] ${tender_uaid} | 77 | [Return] ${tender_uaid} |
| 65 | -======= | ||
| 66 | - ${tender_prepared_data} = prepare tender data ${tender_data['data']} | ||
| 67 | - log ${tender_prepared_data} | ||
| 68 | 78 | ||
| 69 | - config acceleration for new tender form ${tender_prepared_data} | ||
| 70 | - open new tender form | ||
| 71 | - fill tender form ${tender_prepared_data} | ||
| 72 | - submit form and check result ${plan_form_submit_btn_locator} ${plan_form_submit_success_msg} ${plan_created_checker_element_locator} | ||
| 73 | - wait until page does not contain element with reloading ${plan_sync_element_locator} | ||
| 74 | - ${plan_uaid} = get text ${plan_uaid_text_locator} | ||
| 75 | - [Return] ${plan_uaid} | ||
| 76 | ->>>>>>> 3facf555e072d9d85d4bc44ada0c5c5280ea5820 |
| @@ -65,10 +65,9 @@ fill item form in opened popup | @@ -65,10 +65,9 @@ fill item form in opened popup | ||
| 65 | run keyword if condition is not none ${classification} select classification by code attributes ${item_form_popup_classification_edit_btn_locator} ${classification} | 65 | run keyword if condition is not none ${classification} select classification by code attributes ${item_form_popup_classification_edit_btn_locator} ${classification} |
| 66 | ${additional_classifications} = get from dictionary by keys ${data} additionalClassifications | 66 | ${additional_classifications} = get from dictionary by keys ${data} additionalClassifications |
| 67 | run keyword if condition is not none ${additional_classifications} select classification by array of code attributes ${item_form_popup_additional_classification_edit_btn_locator} ${additional_classifications} | 67 | run keyword if condition is not none ${additional_classifications} select classification by array of code attributes ${item_form_popup_additional_classification_edit_btn_locator} ${additional_classifications} |
| 68 | - | ||
| 69 | -fill item for tender form in opened popup | ||
| 70 | - [Arguments] ${data} | ||
| 71 | - [Documentation] заповнює відкриту форму згідно вказаних даних | 68 | +#fill item for tender form in opened popup |
| 69 | +# [Arguments] ${data} | ||
| 70 | +# [Documentation] заповнює відкриту форму згідно вказаних даних | ||
| 72 | 71 | ||
| 73 | ${region} = get from dictionary by keys ${data} deliveryAddress region | 72 | ${region} = get from dictionary by keys ${data} deliveryAddress region |
| 74 | run keyword if condition is not none ${region} select from visible list by label ${item_form_popup_delivery_region_id_input_locator} ${region} | 73 | run keyword if condition is not none ${region} select from visible list by label ${item_form_popup_delivery_region_id_input_locator} ${region} |
| @@ -83,11 +82,28 @@ fill item for tender form in opened popup | @@ -83,11 +82,28 @@ fill item for tender form in opened popup | ||
| 83 | ${delivery_end_date} = get from dictionary by keys ${data} deliveryDate endDate | 82 | ${delivery_end_date} = get from dictionary by keys ${data} deliveryDate endDate |
| 84 | run keyword if condition is not none ${delivery_end_date} run keyword and ignore error input datetime to exist visible input ${item_form_popup_delivery_end_date_input_locator} ${delivery_end_date} | 83 | run keyword if condition is not none ${delivery_end_date} run keyword and ignore error input datetime to exist visible input ${item_form_popup_delivery_end_date_input_locator} ${delivery_end_date} |
| 85 | 84 | ||
| 85 | + submit current visible popup | ||
| 86 | + | ||
| 87 | + # features | ||
| 88 | + ${features} = get from dictionary by keys ${data} features | ||
| 89 | + run keyword if condition is not none ${features} fill tender form features ${features} ${tender_form_item_panel_add_feature_btn_locator} | ||
| 90 | + | ||
| 91 | +fill buyer form in opened popup | ||
| 92 | + [Arguments] ${data} | ||
| 93 | + [Documentation] заповнює відкриту форму згідно вказаних даних про замовника | ||
| 94 | + | ||
| 95 | + ${legalName} = get from dictionary by keys ${data} identifier legalName | ||
| 96 | + run keyword if condition is not none ${legalName} input text to visible input ${plan_form_add_buyer_legalName_input_locator} ${legalName} | ||
| 97 | + ${id} = get from dictionary by keys ${data} identifier id | ||
| 98 | + run keyword if condition is not none ${id} input text to exist visible input ${plan_form_add_buyer_id_input_locator} ${id} | ||
| 99 | + | ||
| 86 | fill milestone form in opened popup | 100 | fill milestone form in opened popup |
| 87 | [Arguments] ${data} | 101 | [Arguments] ${data} |
| 88 | [Documentation] заповнює відкриту форму Умови оплати згідно вказаних даних | 102 | [Documentation] заповнює відкриту форму Умови оплати згідно вказаних даних |
| 89 | 103 | ||
| 104 | + Capture Page Screenshot | ||
| 90 | click visible element ${tender_form_milestones_add_btn_locator} | 105 | click visible element ${tender_form_milestones_add_btn_locator} |
| 106 | + Capture Page Screenshot | ||
| 91 | ${title} = get from dictionary by keys ${data} title | 107 | ${title} = get from dictionary by keys ${data} title |
| 92 | run keyword if condition is not none ${title} select from visible list by value ${tender_form_milestones_title_locator} ${title} | 108 | run keyword if condition is not none ${title} select from visible list by value ${tender_form_milestones_title_locator} ${title} |
| 93 | ${description} = get from dictionary by keys ${data} description | 109 | ${description} = get from dictionary by keys ${data} description |
| @@ -115,17 +131,60 @@ fill feature form in opened popup | @@ -115,17 +131,60 @@ fill feature form in opened popup | ||
| 115 | : FOR ${INDEX} IN RANGE 0 ${count} | 131 | : FOR ${INDEX} IN RANGE 0 ${count} |
| 116 | \ run keyword if condition is not none ${options[${INDEX}].title} input text to exist visible input ${tender_form_features_enum_title_locator} ${options[${INDEX}].title} | 132 | \ run keyword if condition is not none ${options[${INDEX}].title} input text to exist visible input ${tender_form_features_enum_title_locator} ${options[${INDEX}].title} |
| 117 | \ Capture Page Screenshot | 133 | \ Capture Page Screenshot |
| 118 | - \ ${description} = get from dictionary by keys ${data} description | ||
| 119 | - \ run keyword if condition is not none ${description} input text to exist visible input ${tender_form_features_description_locator} ${description} | 134 | +# \ ${description} = get from dictionary by keys ${data} description |
| 135 | +# \ run keyword if condition is not none ${description} input text to exist visible input ${tender_form_features_description_locator} ${description} | ||
| 120 | \ Capture Page Screenshot | 136 | \ Capture Page Screenshot |
| 121 | - \ ${value} = convert_float_to_string ${options[${INDEX}].value} | ||
| 122 | - \ ${value} = Convert To Number ${value} | ||
| 123 | - \ ${value} = multiply_hundred ${value} | ||
| 124 | - \ ${value} = convert_float_to_string ${value} | 137 | + \ ${value} = convert_float_to_string ${options[${INDEX}].value} |
| 138 | + \ ${value} = Convert To Number ${value} | ||
| 139 | + \ ${value} = multiply_hundred ${value} | ||
| 140 | + \ ${value} = convert_float_to_string ${value} | ||
| 125 | \ run keyword if condition is not none ${options[${INDEX}].value} input text to exist visible input ${tender_form_features_enum_value_locator} ${value} | 141 | \ run keyword if condition is not none ${options[${INDEX}].value} input text to exist visible input ${tender_form_features_enum_value_locator} ${value} |
| 126 | \ Capture Page Screenshot | 142 | \ Capture Page Screenshot |
| 127 | \ Continue For Loop If '${INDEX}' == '${ex}' | 143 | \ Continue For Loop If '${INDEX}' == '${ex}' |
| 128 | - \ Run Keyword If ${count} != 1 click visible element ${tender_form_features_panel_edit_btn_locator} | 144 | + \ Run Keyword If ${count} != 1 click visible element ${tender_form_features_add-enums_locator} |
| 145 | + | ||
| 146 | +fill lot form in opened popup | ||
| 147 | + [Arguments] ${data} | ||
| 148 | + [Documentation] заповнює відкриту форму згідно вказаних даних | ||
| 149 | + | ||
| 150 | + ${title} = get from dictionary by keys ${data} title | ||
| 151 | + run keyword if condition is not none ${title} input text to visible input ${tender_form_lots_title_locator} ${title} | ||
| 152 | + ${title_en} = get from dictionary by keys ${data} title_en | ||
| 153 | + run keyword if condition is not none ${title_en} input text to exist visible input ${tender_form_lots_title_en_locator} ${title_en} | ||
| 154 | + ${description} = get from dictionary by keys ${data} description | ||
| 155 | + run keyword if condition is not none ${description} input text to visible input ${tender_form_lots_description_locator} ${description} | ||
| 156 | + ${description_en} = get from dictionary by keys ${data} description_en | ||
| 157 | + run keyword if condition is not none ${description_en} input text to exist visible input ${tender_form_lots_description_locator} ${description_en} | ||
| 158 | + capture page screenshot | ||
| 159 | + ${description_ru} = get from dictionary by keys ${data} description_ru | ||
| 160 | + run keyword if condition is not none ${description_ru} input text to exist visible input ${item_form_popup_description_ru_input_locator} ${description_ru} | ||
| 161 | + ${amount} = get from dictionary by keys ${data} value amount | ||
| 162 | + run keyword if condition is not none ${amount} input number to exist visible input ${tender_form_lots_value_amount_input_locator} ${amount} | ||
| 163 | + submit current visible popup | ||
| 164 | +# ${currency} = get from dictionary by keys ${data} value currency | ||
| 165 | +# run keyword if condition is not none ${currency} select from visible list by value ${tender_form_lots_value_currency_input_locator} ${currency} | ||
| 166 | +# ${valueAddedTaxIncluded} = get from dictionary by keys ${data} value valueAddedTaxIncluded | ||
| 167 | +# run keyword if condition is not none ${valueAddedTaxIncluded} run keyword if ${valueAddedTaxIncluded} Click Element ${tender_form_lots_value_added_tax_input_locator} | ||
| 168 | + ${min_step_amount} = get from dictionary by keys ${data} minimalStep amount | ||
| 169 | + run keyword if condition is not none ${min_step_amount} input number to exist visible input ${tender_form_lots_minimalStep_amount_input_locator} ${min_step_amount} | ||
| 170 | + capture page screenshot | ||
| 171 | + # features | ||
| 172 | + ${features} = get from dictionary by keys ${data} features | ||
| 173 | + run keyword if condition is not none ${features} fill tender form features ${features} ${tender_form_lot_panel_add_feature_btn_locator} | ||
| 174 | + | ||
| 175 | + # milestones | ||
| 176 | + ${milestones} = get from dictionary by keys ${data} milestones | ||
| 177 | + run keyword if condition is not none ${milestones} fill tender form milestones ${milestones} | ||
| 178 | + | ||
| 179 | + # items | ||
| 180 | + ${items} = get from dictionary by keys ${data} items | ||
| 181 | + run keyword if condition is not none ${items} fill tender form items ${items} | ||
| 182 | + | ||
| 183 | +Створити FakeDocs | ||
| 184 | + ${file_path} ${file_name} ${file_content}= create_fake_doc | ||
| 185 | + click visible element ${tender_form_general_panel_add_document_btn_locator} | ||
| 186 | + Choose File xpath=//input[@type='file'] ${file_path} | ||
| 187 | + submit current visible popup | ||
| 129 | ######################################################################################################################## | 188 | ######################################################################################################################## |
| 130 | #################################################### COMMON HELPERS #################################################### | 189 | #################################################### COMMON HELPERS #################################################### |
| 131 | ######################################################################################################################## | 190 | ######################################################################################################################## |
| @@ -318,6 +377,15 @@ reload page and fail if element exists | @@ -318,6 +377,15 @@ reload page and fail if element exists | ||
| 318 | ${exists} = __private__get_is_element_exist ${locator} | 377 | ${exists} = __private__get_is_element_exist ${locator} |
| 319 | run keyword if ${exists} == ${True} fail | 378 | run keyword if ${exists} == ${True} fail |
| 320 | 379 | ||
| 380 | +Click and wait for the search | ||
| 381 | + [Arguments] ${click_locator} ${wanted_locator} ${timeout} | ||
| 382 | + [Documentation] Натиснути и дочекатися пошуку | ||
| 383 | + ... click_locator: Where to click | ||
| 384 | + ... wanted_locator: What are we waiting for | ||
| 385 | + ... timeout: Timeout | ||
| 386 | + Press key ${click_locator} \\13 | ||
| 387 | +# Sleep 3 | ||
| 388 | + Wait Until Page Contains Element ${wanted_locator} ${timeout} | ||
| 321 | ######################################################################################################################## | 389 | ######################################################################################################################## |
| 322 | ################################################### PRIVATE KEYWORDS ################################################### | 390 | ################################################### PRIVATE KEYWORDS ################################################### |
| 323 | ######################################################################################################################## | 391 | ######################################################################################################################## |
| @@ -51,6 +51,10 @@ fill plan form | @@ -51,6 +51,10 @@ fill plan form | ||
| 51 | ${items} = get from dictionary by keys ${data} items | 51 | ${items} = get from dictionary by keys ${data} items |
| 52 | run keyword if condition is not none ${items} fill plan form items ${items} | 52 | run keyword if condition is not none ${items} fill plan form items ${items} |
| 53 | 53 | ||
| 54 | + # buyers | ||
| 55 | + ${buyers} = get from dictionary by keys ${data} buyers | ||
| 56 | + run keyword if condition is not none ${buyers} fill plan form buyers ${buyers} | ||
| 57 | + | ||
| 54 | fill plan form items | 58 | fill plan form items |
| 55 | [Arguments] ${item_attributes_array} | 59 | [Arguments] ${item_attributes_array} |
| 56 | [Documentation] заповнення номенклатури плану | 60 | [Documentation] заповнення номенклатури плану |
| @@ -59,5 +63,75 @@ fill plan form items | @@ -59,5 +63,75 @@ fill plan form items | ||
| 59 | \ click visible element ${plan_form_add_item_btn_locator} | 63 | \ click visible element ${plan_form_add_item_btn_locator} |
| 60 | \ wait until popup is visible | 64 | \ wait until popup is visible |
| 61 | \ fill item form in opened popup ${item_attributes} | 65 | \ fill item form in opened popup ${item_attributes} |
| 62 | - \ submit current visible popup | 66 | + \ run keyword and ignore error submit current visible popup |
| 67 | + | ||
| 68 | +fill plan form buyers | ||
| 69 | + [Arguments] ${buyer_attributes_array} | ||
| 70 | + [Documentation] заповнення замовника плану | ||
| 71 | + | ||
| 72 | + :FOR ${buyer_attributes} IN @{buyer_attributes_array} | ||
| 73 | + \ click visible element ${plan_form_add_buyer_btn_locator} | ||
| 74 | + \ wait until popup is visible | ||
| 75 | + \ fill buyer form in opened popup ${buyer_attributes} | ||
| 76 | + \ run keyword and ignore error submit current visible popup | ||
| 77 | + | ||
| 78 | +search plan | ||
| 79 | + [Arguments] ${tenderId} | ||
| 80 | + [Documentation] пошук плану по tenderId | ||
| 81 | + | ||
| 82 | + Go To ${broker_baseurl}/plans | ||
| 83 | + Wait Until Page Contains Element ${form_search_plan} 10 | ||
| 84 | + input text to visible input ${search_plan_input} ${tenderId} | ||
| 85 | + click visible element ${button_search_plan} | ||
| 86 | +# Sleep 1 | ||
| 87 | + ${passed}= Run Keyword And Return Status Wait Until Keyword Succeeds 360 s 0 s Search and find a plan | ||
| 88 | + Run Keyword Unless ${passed} Fatal Error Тендер не знайдено за 360 секунд | ||
| 89 | + Wait Until Page Does Not Contain Element ${search_plan_list-pjax} | ||
| 90 | + click visible element ${search_plan_result} | ||
| 91 | + | ||
| 92 | +Search and find a plan | ||
| 93 | + Click and wait for the search ${button_search_plan} ${search_plan_result} 8 | ||
| 94 | + | ||
| 95 | +get information from the plan | ||
| 96 | + [Arguments] ${tender_uaid} ${key} | ||
| 97 | + [Documentation] Отримати інформацію із плану, користуючись ідентіфікатором плану та назвою поля ${field_name}. | ||
| 63 | 98 | ||
| 99 | + open plan page by uaid ${tender_uaid} | ||
| 100 | + ${budget}= get_invisible_text jquery=#general-info .budget-amount | ||
| 101 | + Run Keyword And Return If '${key}' == 'tender.procurementMethodType' get_invisible_text jquery=#general-info .procurement-method-type | ||
| 102 | + Run Keyword And Return If '${key}' == 'budget.amount' Convert To Number ${budget} | ||
| 103 | + Run Keyword And Return If '${key}' == 'budget.description' get_text jquery=#general-info .budget-description .value | ||
| 104 | + Run Keyword And Return If '${key}' == 'budget.currency' get_invisible_text jquery=#general-info .budget-currency | ||
| 105 | + Run Keyword And Return If '${key}' == 'budget.id' get_text jquery=#general-info .budget-id .value | ||
| 106 | + Run Keyword And Return If '${key}' == 'budget.project.id' get_invisible_text jquery=#general-info .budget-project-id | ||
| 107 | + Run Keyword And Return If '${key}' == 'budget.project.name' get_invisible_text jquery=#general-info .budget-project-name | ||
| 108 | + Run Keyword And Return If '${key}' == 'classification.description' get_invisible_text jquery=#general-info .main-classification-description | ||
| 109 | + Run Keyword And Return If '${key}' == 'classification.scheme' get_invisible_text jquery=#general-info .main-classification-scheme | ||
| 110 | + Run Keyword And Return If '${key}' == 'classification.id' get_invisible_text jquery=#general-info .main-classification-code | ||
| 111 | + Run Keyword And Return If '${key}' == 'tender.tenderPeriod.startDate' get_invisible_text jquery=#general-info .tender-start-date-source | ||
| 112 | + ${procuringEntityNeedToBeVisible}= Run Keyword And Return Status Should Start With ${key} procuringEntity | ||
| 113 | + Run Keyword If ${procuringEntityNeedToBeVisible} JsSetScrollToElementBySelector \#procuring-entity-info | ||
| 114 | + Run Keyword And Return If '${key}' == 'procuringEntity.name' get_invisible_text jquery=#procuring-entity-info .name | ||
| 115 | + Run Keyword And Return If '${key}' == 'procuringEntity.identifier.scheme' get_invisible_text jquery=#procuring-entity-info .identifier-scheme | ||
| 116 | + Run Keyword And Return If '${key}' == 'procuringEntity.identifier.id' get_invisible_text jquery=#procuring-entity-info .identifier-code | ||
| 117 | + Run Keyword And Return If '${key}' == 'procuringEntity.identifier.legalName' get_text jquery=#procuring-entity-info .legal-name .value | ||
| 118 | + ${item0NeedToBeVisible}= Run Keyword And Return Status Should Start With ${key} items[0] | ||
| 119 | + Run Keyword If ${item0NeedToBeVisible} JsCollapseShowAndScroll ${item0Wrapper} | ||
| 120 | + Run Keyword And Return If '${key}' == 'items[0].description' get_text jquery=div#accordionItems.panel-group div.panel.panel-default .panel-collapse.collapse.in div.panel-body div#w1.item-info-wrapper.info-wrapper p.title span.value | ||
| 121 | + Run Keyword And Return If '${key}' == 'items[0].quantity' Get invisible text number by locator jquery=${item0Wrapper} .item-info-wrapper .quantity-source | ||
| 122 | + Run Keyword And Return If '${key}' == 'items[0].deliveryDate.endDate' get_invisible_text jquery=${item0Wrapper} .item-info-wrapper .delivery-end-date-source | ||
| 123 | + Run Keyword And Return If '${key}' == 'items[0].unit.code' get_invisible_text jquery=${item0Wrapper} .item-info-wrapper .unit-code-source | ||
| 124 | + Run Keyword And Return If '${key}' == 'items[0].unit.name' get_invisible_text jquery=${item0Wrapper} .item-info-wrapper .unit-title-source | ||
| 125 | + Run Keyword And Return If '${key}' == 'items[0].classification.description' get_invisible_text jquery=${item0Wrapper} .item-info-wrapper .main-classification-description | ||
| 126 | + Run Keyword And Return If '${key}' == 'items[0].classification.scheme' get_invisible_text jquery=${item0Wrapper} .item-info-wrapper .main-classification-scheme | ||
| 127 | + Run Keyword And Return If '${key}' == 'items[0].classification.id' get_invisible_text jquery=${item0Wrapper} .item-info-wrapper .main-classification-code | ||
| 128 | + ${item1NeedToBeVisible}= Run Keyword And Return Status Should Start With ${key} items[1] | ||
| 129 | + Run Keyword If ${item1NeedToBeVisible} JsCollapseShowAndScroll ${item1Wrapper} | ||
| 130 | + Run Keyword And Return If '${key}' == 'items[1].description' get_text jquery=${item1Wrapper} .item-info-wrapper .title .value | ||
| 131 | + Run Keyword And Return If '${key}' == 'items[1].quantity' Get invisible text number by locator jquery=${item1Wrapper} .item-info-wrapper .quantity-source | ||
| 132 | + Run Keyword And Return If '${key}' == 'items[1].deliveryDate.endDate' get_invisible_text jquery=${item1Wrapper} .item-info-wrapper .delivery-end-date-source | ||
| 133 | + Run Keyword And Return If '${key}' == 'items[1].unit.code' get_invisible_text jquery=${item1Wrapper} .item-info-wrapper .unit-code-source | ||
| 134 | + Run Keyword And Return If '${key}' == 'items[1].unit.name' get_invisible_text jquery=${item1Wrapper} .item-info-wrapper .unit-title-source | ||
| 135 | + Run Keyword And Return If '${key}' == 'items[1].classification.description' get_invisible_text jquery=${item1Wrapper} .item-info-wrapper .main-classification-description | ||
| 136 | + Run Keyword And Return If '${key}' == 'items[1].classification.scheme' get_invisible_text jquery=${item1Wrapper} .item-info-wrapper .main-classification-scheme | ||
| 137 | + Run Keyword And Return If '${key}' == 'items[1].classification.id' get_invisible_text jquery=${item1Wrapper} .item-info-wrapper .main-classification-code |
| @@ -96,11 +96,11 @@ def isodate_format(isodate, format): | @@ -96,11 +96,11 @@ def isodate_format(isodate, format): | ||
| 96 | iso_dt = parse_date(isodate) | 96 | iso_dt = parse_date(isodate) |
| 97 | return iso_dt.strftime(format) | 97 | return iso_dt.strftime(format) |
| 98 | 98 | ||
| 99 | -<<<<<<< HEAD | 99 | + |
| 100 | #Percentage conversion | 100 | #Percentage conversion |
| 101 | def multiply_hundred(number): | 101 | def multiply_hundred(number): |
| 102 | return number*100 | 102 | return number*100 |
| 103 | -======= | 103 | + |
| 104 | 104 | ||
| 105 | # prepares data for filling form in easiest way | 105 | # prepares data for filling form in easiest way |
| 106 | def prepare_tender_data(data): | 106 | def prepare_tender_data(data): |
| @@ -148,4 +148,4 @@ def prepare_tender_data(data): | @@ -148,4 +148,4 @@ def prepare_tender_data(data): | ||
| 148 | del data['milestones'] | 148 | del data['milestones'] |
| 149 | 149 | ||
| 150 | return data | 150 | return data |
| 151 | ->>>>>>> 3facf555e072d9d85d4bc44ada0c5c5280ea5820 | 151 | + |
| @@ -36,22 +36,17 @@ fill tender form | @@ -36,22 +36,17 @@ fill tender form | ||
| 36 | run keyword if condition is not none ${title} input text to visible input ${tender_form_general_tender_description_locator} ${description} | 36 | run keyword if condition is not none ${title} input text to visible input ${tender_form_general_tender_description_locator} ${description} |
| 37 | ${description_en} = get from dictionary by keys ${data} description_en | 37 | ${description_en} = get from dictionary by keys ${data} description_en |
| 38 | run keyword if condition is not none ${title} input text to exist visible input ${tender_form_general_tender_description_en_locator} ${description_en} | 38 | run keyword if condition is not none ${title} input text to exist visible input ${tender_form_general_tender_description_en_locator} ${description_en} |
| 39 | - Capture Page Screenshot | ||
| 40 | ${funders} = get from dictionary by keys ${data} funders | 39 | ${funders} = get from dictionary by keys ${data} funders |
| 41 | run keyword if condition is not none ${funders} Click Element ${tender_form_general_tender_funder_locator} | 40 | run keyword if condition is not none ${funders} Click Element ${tender_form_general_tender_funder_locator} |
| 42 | Capture Page Screenshot | 41 | Capture Page Screenshot |
| 43 | ${amount} = get from dictionary by keys ${data} value amount | 42 | ${amount} = get from dictionary by keys ${data} value amount |
| 44 | run keyword if condition is not none ${amount} run keyword if ${NUMBER_OF_LOTS}==0 input number to exist visible input ${tender_form_general_value_amount_input_locator} ${amount} | 43 | run keyword if condition is not none ${amount} run keyword if ${NUMBER_OF_LOTS}==0 input number to exist visible input ${tender_form_general_value_amount_input_locator} ${amount} |
| 45 | - Capture Page Screenshot | ||
| 46 | ${currency} = get from dictionary by keys ${data} value currency | 44 | ${currency} = get from dictionary by keys ${data} value currency |
| 47 | run keyword if condition is not none ${currency} select from visible list by value ${tender_form_general_value_currency_input_locator} ${currency} | 45 | run keyword if condition is not none ${currency} select from visible list by value ${tender_form_general_value_currency_input_locator} ${currency} |
| 48 | - Capture Page Screenshot | ||
| 49 | ${valueAddedTaxIncluded} = get from dictionary by keys ${data} value valueAddedTaxIncluded | 46 | ${valueAddedTaxIncluded} = get from dictionary by keys ${data} value valueAddedTaxIncluded |
| 50 | run keyword if condition is not none ${valueAddedTaxIncluded} run keyword if ${valueAddedTaxIncluded} Click Element ${tender_form_general_value_added_tax_input_locator} | 47 | run keyword if condition is not none ${valueAddedTaxIncluded} run keyword if ${valueAddedTaxIncluded} Click Element ${tender_form_general_value_added_tax_input_locator} |
| 51 | - Capture Page Screenshot | ||
| 52 | ${min_step_amount} = get from dictionary by keys ${data} minimalStep amount | 48 | ${min_step_amount} = get from dictionary by keys ${data} minimalStep amount |
| 53 | run keyword if condition is not none ${min_step_amount} input number to exist visible input ${tender_form_general_minimalStep_amount_input_locator} ${min_step_amount} | 49 | run keyword if condition is not none ${min_step_amount} input number to exist visible input ${tender_form_general_minimalStep_amount_input_locator} ${min_step_amount} |
| 54 | - Capture Page Screenshot | ||
| 55 | ${mainProcurementCategory} = get from dictionary by keys ${data} mainProcurementCategory | 50 | ${mainProcurementCategory} = get from dictionary by keys ${data} mainProcurementCategory |
| 56 | run keyword if condition is not none ${mainProcurementCategory} select from visible list by value ${tender_form_general_main_procurement_category_input_locator} ${mainProcurementCategory} | 51 | run keyword if condition is not none ${mainProcurementCategory} select from visible list by value ${tender_form_general_main_procurement_category_input_locator} ${mainProcurementCategory} |
| 57 | Capture Page Screenshot | 52 | Capture Page Screenshot |
| @@ -63,28 +58,23 @@ fill tender form | @@ -63,28 +58,23 @@ fill tender form | ||
| 63 | ${tender_enquiry_period_end_date} = get from dictionary by keys ${data} enquiryPeriod endDate | 58 | ${tender_enquiry_period_end_date} = get from dictionary by keys ${data} enquiryPeriod endDate |
| 64 | # run keyword if condition is not none ${tender_enquiry_period_start_date} select from visible list by year of date ${tender_enquiry_period_start_date_input_locator} ${tender_enquiry_period_start_date} | 59 | # run keyword if condition is not none ${tender_enquiry_period_start_date} select from visible list by year of date ${tender_enquiry_period_start_date_input_locator} ${tender_enquiry_period_start_date} |
| 65 | run keyword if condition is not none ${tender_enquiry_period_end_date} input datetime to visible input ${tender_enquiry_period_end_date_input_locator} ${tender_enquiry_period_end_date} | 60 | run keyword if condition is not none ${tender_enquiry_period_end_date} input datetime to visible input ${tender_enquiry_period_end_date_input_locator} ${tender_enquiry_period_end_date} |
| 66 | - Capture Page Screenshot | ||
| 67 | ${tender_start_date} = get from dictionary by keys ${data} tenderPeriod startDate | 61 | ${tender_start_date} = get from dictionary by keys ${data} tenderPeriod startDate |
| 68 | run keyword if condition is not none ${tender_start_date} run keyword and ignore error input datetime to visible input ${tender_tender_period_start_date_input_locator} ${tender_start_date} | 62 | run keyword if condition is not none ${tender_start_date} run keyword and ignore error input datetime to visible input ${tender_tender_period_start_date_input_locator} ${tender_start_date} |
| 69 | - Capture Page Screenshot | ||
| 70 | ${tender_end_date} = get from dictionary by keys ${data} tenderPeriod endDate | 63 | ${tender_end_date} = get from dictionary by keys ${data} tenderPeriod endDate |
| 71 | run keyword if condition is not none ${tender_end_date} input datetime to visible input ${tender_tender_period_end_date_input_locator} ${tender_end_date} | 64 | run keyword if condition is not none ${tender_end_date} input datetime to visible input ${tender_tender_period_end_date_input_locator} ${tender_end_date} |
| 72 | - Capture Page Screenshot | ||
| 73 | click element ${tender_tender_quick_mode_locator} | 65 | click element ${tender_tender_quick_mode_locator} |
| 74 | 66 | ||
| 75 | ${classification} = get from dictionary by keys ${data} classification | 67 | ${classification} = get from dictionary by keys ${data} classification |
| 76 | run keyword if condition is not none ${classification} select classification by code attributes ${plan_form_classification_edit_btn_locator} ${classification} | 68 | run keyword if condition is not none ${classification} select classification by code attributes ${plan_form_classification_edit_btn_locator} ${classification} |
| 77 | - Capture Page Screenshot | ||
| 78 | ${additional_classifications} = get from dictionary by keys ${data} additionalClassifications | 69 | ${additional_classifications} = get from dictionary by keys ${data} additionalClassifications |
| 79 | run keyword if condition is not none ${additional_classifications} select classification by array of code attributes ${plan_form_additional_classification_edit_btn_locator} ${additional_classifications} ${None} ${kekv_schemes} | 70 | run keyword if condition is not none ${additional_classifications} select classification by array of code attributes ${plan_form_additional_classification_edit_btn_locator} ${additional_classifications} ${None} ${kekv_schemes} |
| 80 | - Capture Page Screenshot | ||
| 81 | run keyword if condition is not none ${additional_classifications} select classification by array of code attributes ${plan_form_kekv_classification_edit_btn_locator} ${additional_classifications} ${kekv_schemes} | 71 | run keyword if condition is not none ${additional_classifications} select classification by array of code attributes ${plan_form_kekv_classification_edit_btn_locator} ${additional_classifications} ${kekv_schemes} |
| 82 | submit current visible popup | 72 | submit current visible popup |
| 83 | 73 | ||
| 84 | # features | 74 | # features |
| 85 | ${features} = get from dictionary by keys ${data} features | 75 | ${features} = get from dictionary by keys ${data} features |
| 86 | - run keyword if condition is not none ${features} fill tender form features ${features} | ||
| 87 | - #tenderer ${empty} ${tender_form_general_panel_add_feature_btn_locator} | 76 | + run keyword if condition is not none ${features} fill tender form features ${features} ${tender_form_general_panel_add_feature_btn_locator} |
| 77 | + | ||
| 88 | # items | 78 | # items |
| 89 | ${items} = get from dictionary by keys ${data} items | 79 | ${items} = get from dictionary by keys ${data} items |
| 90 | run keyword if condition is not none ${items} fill tender form items ${items} | 80 | run keyword if condition is not none ${items} fill tender form items ${items} |
| @@ -92,6 +82,11 @@ fill tender form | @@ -92,6 +82,11 @@ fill tender form | ||
| 92 | # milestones | 82 | # milestones |
| 93 | ${milestones} = get from dictionary by keys ${data} milestones | 83 | ${milestones} = get from dictionary by keys ${data} milestones |
| 94 | run keyword if condition is not none ${milestones} fill tender form milestones ${milestones} | 84 | run keyword if condition is not none ${milestones} fill tender form milestones ${milestones} |
| 85 | + Створити FakeDocs | ||
| 86 | + | ||
| 87 | + #lots | ||
| 88 | + ${lots} = get from dictionary by keys ${data} lots | ||
| 89 | + run keyword if condition is not none ${lots} fill tender form lots ${lots} | ||
| 95 | 90 | ||
| 96 | fill tender form items | 91 | fill tender form items |
| 97 | [Arguments] ${item_attributes_array} | 92 | [Arguments] ${item_attributes_array} |
| @@ -101,31 +96,39 @@ fill tender form items | @@ -101,31 +96,39 @@ fill tender form items | ||
| 101 | \ click visible element ${tender_form_item_add_edit_btn_locator} | 96 | \ click visible element ${tender_form_item_add_edit_btn_locator} |
| 102 | \ wait until popup is visible | 97 | \ wait until popup is visible |
| 103 | \ fill item form in opened popup ${item_attributes} | 98 | \ fill item form in opened popup ${item_attributes} |
| 104 | - \ fill item for tender form in opened popup ${item_attributes} | ||
| 105 | - \ submit current visible popup | 99 | +# \ fill item for tender form in opened popup ${item_attributes} |
| 100 | + \ run keyword and ignore error submit current visible popup | ||
| 106 | 101 | ||
| 107 | fill tender form milestones | 102 | fill tender form milestones |
| 108 | [Arguments] ${milestone_attributes_array} | 103 | [Arguments] ${milestone_attributes_array} |
| 109 | [Documentation] заповнення умов оплати тендеру | 104 | [Documentation] заповнення умов оплати тендеру |
| 110 | 105 | ||
| 111 | - Capture Page Screenshot | ||
| 112 | Log Many ${milestone_attributes_array} | 106 | Log Many ${milestone_attributes_array} |
| 113 | :FOR ${milestone_attributes} IN @{milestone_attributes_array} | 107 | :FOR ${milestone_attributes} IN @{milestone_attributes_array} |
| 108 | +# \ click visible element ${button_selector} | ||
| 114 | \ click visible element ${tender_form_milestones_panel_edit_btn_locator} | 109 | \ click visible element ${tender_form_milestones_panel_edit_btn_locator} |
| 110 | + \ capture page screenshot | ||
| 115 | \ wait until popup is visible | 111 | \ wait until popup is visible |
| 116 | \ fill milestone form in opened popup ${milestone_attributes} | 112 | \ fill milestone form in opened popup ${milestone_attributes} |
| 117 | \ submit current visible popup | 113 | \ submit current visible popup |
| 118 | 114 | ||
| 119 | fill tender form features | 115 | fill tender form features |
| 120 | - [Arguments] ${feature_attributes_array} | 116 | + [Arguments] ${feature_attributes_array} ${button_add} |
| 121 | [Documentation] заповнення нецінові крітерії тендеру | 117 | [Documentation] заповнення нецінові крітерії тендеру |
| 122 | 118 | ||
| 123 | - Capture Page Screenshot | ||
| 124 | - Log Many ${feature_attributes_array} | ||
| 125 | :FOR ${feature_attributes} IN @{feature_attributes_array} | 119 | :FOR ${feature_attributes} IN @{feature_attributes_array} |
| 126 | - \ click visible element ${tender_form_general_panel_add_feature_btn_locator} | 120 | + \ click visible element ${button_add} |
| 127 | #${tender_form_features_panel_edit_btn_locator} | 121 | #${tender_form_features_panel_edit_btn_locator} |
| 128 | \ wait until popup is visible | 122 | \ wait until popup is visible |
| 129 | - \ fill feature form in opened popup ${feature_attributes} | 123 | + \ fill feature form in opened popup ${feature_attributes} |
| 130 | \ submit current visible popup | 124 | \ submit current visible popup |
| 131 | 125 | ||
| 126 | +fill tender form lots | ||
| 127 | + [Arguments] ${lot_attributes_array} | ||
| 128 | + [Documentation] заповнення номенклатури тендеру | ||
| 129 | + | ||
| 130 | + :FOR ${lot_attributes} IN @{lot_attributes_array} | ||
| 131 | + \ click visible element ${tender_form_lots_panel_edit_btn_locator} | ||
| 132 | + \ wait until popup is visible | ||
| 133 | + \ fill lot form in opened popup ${lot_attributes} | ||
| 134 | + \ run keyword and ignore error submit current visible popup |
| @@ -66,6 +66,17 @@ ${plan_form_kekv_classification_edit_btn_locator} = jquery=.fiel | @@ -66,6 +66,17 @@ ${plan_form_kekv_classification_edit_btn_locator} = jquery=.fiel | ||
| 66 | ${plan_form_add_item_btn_locator} = jquery=#Items .js-form-popup-add | 66 | ${plan_form_add_item_btn_locator} = jquery=#Items .js-form-popup-add |
| 67 | ${plan_form_submit_btn_locator} = jquery=#plan-form .js-submit-btn | 67 | ${plan_form_submit_btn_locator} = jquery=#plan-form .js-submit-btn |
| 68 | ${plan_created_checker_element_locator} = id=plan-part-pjax | 68 | ${plan_created_checker_element_locator} = id=plan-part-pjax |
| 69 | +${plan_form_add_buyer_btn_locator} = jquery=#Buyer .js-form-popup-update | ||
| 70 | +${plan_form_add_buyer_legalName_input_locator} = jquery=#planform-procuring_entity_name | ||
| 71 | +${plan_form_add_buyer_id_input_locator} = jquery=#planform-procuring_entity_identifier_code | ||
| 72 | + | ||
| 73 | +#search plan | ||
| 74 | +${button_search_plan} xpath=//button[@class='btn btn-default js-submit-btn'] | ||
| 75 | +${form_search_plan} id=plansearchform-query | ||
| 76 | +${search_plan_input} xpath=//input[@data-ds='query-input'] | ||
| 77 | +${search_plan_list-pjax} jquery=#plan-list-pjax.loading-wrapper | ||
| 78 | +#${search_plan_result} xpath=(//div[@id='plan-list-pjax'])//a[contains(@href, '/plan/')][1] | ||
| 79 | +${search_plan_result} jquery=a[class="lot__title"] | ||
| 69 | 80 | ||
| 70 | # plan view | 81 | # plan view |
| 71 | ${plan_view_checker_element_locator} = id=plan-general-info | 82 | ${plan_view_checker_element_locator} = id=plan-general-info |
| @@ -73,7 +84,7 @@ ${plan_sync_element_locator} = jquery=#asid | @@ -73,7 +84,7 @@ ${plan_sync_element_locator} = jquery=#asid | ||
| 73 | ${plan_uaid_text_locator} = jquery=#plan-general-info .plan-id .value | 84 | ${plan_uaid_text_locator} = jquery=#plan-general-info .plan-id .value |
| 74 | 85 | ||
| 75 | # tender form | 86 | # tender form |
| 76 | -${tender_form_submit_success_msg} = дочекайтесь опублікування на сайті уповноваженого органу | 87 | +${tender_form_submit_success_msg} = Закупівля створена, дочекайтесь опублікування на сайті уповноваженого органу. |
| 77 | ${tender_form_locator} = id=tender-form | 88 | ${tender_form_locator} = id=tender-form |
| 78 | ${tender_form_procurement_method_type_input_locator} = jquery=[id$="form-procurement_method_type"] | 89 | ${tender_form_procurement_method_type_input_locator} = jquery=[id$="form-procurement_method_type"] |
| 79 | ${tender_multilot_locator} = jquery=[id$="form-is_multilot"] | 90 | ${tender_multilot_locator} = jquery=[id$="form-is_multilot"] |
| @@ -94,20 +105,24 @@ ${tender_tender_period_start_date_input_locator} = jquery=[id$= | @@ -94,20 +105,24 @@ ${tender_tender_period_start_date_input_locator} = jquery=[id$= | ||
| 94 | ${tender_tender_period_end_date_input_locator} = jquery=[id$="form-tender_period_end_date"] | 105 | ${tender_tender_period_end_date_input_locator} = jquery=[id$="form-tender_period_end_date"] |
| 95 | ${tender_tender_quick_mode_locator} = jquery=[id$="form-quick_mode"] | 106 | ${tender_tender_quick_mode_locator} = jquery=[id$="form-quick_mode"] |
| 96 | 107 | ||
| 97 | -${tender_form_general_panel_add_feature_btn_locator} = jquery=#collapseGeneral div.form-content.js-form-content div.actions-wrapper a:contains("Додати нецінові критерії") | ||
| 98 | -${tender_form_features_panel_edit_btn_locator} = jquery=[href$="#add-features"] | 108 | +${tender_form_general_panel_add_feature_btn_locator} = jquery=#collapseGeneral .btn[data-attribute="features"] |
| 109 | +${tender_form_features_panel_edit_btn_locator} = jquery=.fancybox-content [href$="#add-features"] | ||
| 99 | ${tender_form_features_title_locator} = jquery=.fancybox-is-open .tab-content:first > .tab-pane.active:first [id$="-title"]:first | 110 | ${tender_form_features_title_locator} = jquery=.fancybox-is-open .tab-content:first > .tab-pane.active:first [id$="-title"]:first |
| 100 | ${tender_form_features_description_locator} = jquery=.fancybox-is-open .tab-content:first > .tab-pane.active:first [id$="-description"]:first | 111 | ${tender_form_features_description_locator} = jquery=.fancybox-is-open .tab-content:first > .tab-pane.active:first [id$="-description"]:first |
| 101 | ${tender_form_features_value_locator} = jquery=[id$="-value"] | 112 | ${tender_form_features_value_locator} = jquery=[id$="-value"] |
| 102 | -${tender_form_features_add-enums_locator} = jquery=[id$="#add-enums"] | ||
| 103 | -${tender_form_features_enum_title_locator} = jquery=.fancybox-is-open .form-group.featureform-enums-dynamic-forms-wrapper .tab-content:first > .tab-pane.active input[id$="-title"] | ||
| 104 | -${tender_form_features_enum_value_locator} = jquery=.fancybox-is-open .form-group.featureform-enums-dynamic-forms-wrapper .tab-content:first > .tab-pane.active input[id$="-value"] | 113 | +${tender_form_features_add-enums_locator} = jquery=.fancybox-is-open .enums-dynamic-forms-wrapper .btn-add a[href$="#add-enums"] |
| 114 | +${tender_form_features_enum_title_locator} = jquery=.fancybox-is-open .enums-dynamic-forms-wrapper .tab-content:first > .tab-pane.active input[id$="-title"] | ||
| 115 | +${tender_form_features_enum_value_locator} = jquery=.fancybox-is-open .enums-dynamic-forms-wrapper .tab-content:first > .tab-pane.active input[id$="-value"] | ||
| 105 | 116 | ||
| 106 | -${tender_form_general_panel_add_document_btn_locator} = jquery=#collapseGeneral div.form-content.js-form-content div.actions-wrapper a:contains("Додати документ") | 117 | +${tender_form_general_panel_add_document_btn_locator} = jquery=#collapseGeneral .btn[data-attribute="documents"] |
| 107 | 118 | ||
| 108 | -${tender_form_item_add_edit_btn_locator} = jquery=.js-form-group-popup-panel .panel-heading .actions-wrapper .js-form-popup-add | 119 | +#${tender_form_item_add_edit_btn_locator} = jquery=.js-form-group-popup-panel .panel-heading .actions-wrapper .js-form-popup-add |
| 120 | +#последняя кнопка “Додати” для номенклатуры (для лотовой и безлотовой) | ||
| 121 | +${tender_form_item_add_edit_btn_locator} = jquery=.form-group-popup-panel[data-attribute="items"]:last > .panel-heading .js-form-popup-add | ||
| 122 | +${tender_form_item_panel_add_feature_btn_locator} = jquery=.form-group-popup-panel[data-attribute="items"]:last .js-form-popup-panel-list:first > .js-form-popup-panel-item:last .actions-wrapper .btn[data-attribute="features"] | ||
| 109 | 123 | ||
| 110 | -${tender_form_milestones_panel_edit_btn_locator} = jquery=[data-url$="#milestones-form-popup"] | 124 | +#${tender_form_milestones_panel_edit_btn_locator} = jquery=[data-url$="#milestones-form-popup"] |
| 125 | +${tender_form_milestones_panel_edit_btn_locator} = jquery=.form-popup-panel[data-attribute="milestones"]:last > .panel-heading .js-form-popup-update | ||
| 111 | ${tender_form_milestones_add_btn_locator} = jquery=[href$="#add-milestones"] | 126 | ${tender_form_milestones_add_btn_locator} = jquery=[href$="#add-milestones"] |
| 112 | ${tender_form_milestones_title_locator} = jquery=.milestones-dynamic-forms-wrapper.dynamic-forms-wrapper.js-dynamic-forms-wrapper .js-dynamic-form-content-item.item-wrapper.js-item.tab-pane.active [id$="-title"] | 127 | ${tender_form_milestones_title_locator} = jquery=.milestones-dynamic-forms-wrapper.dynamic-forms-wrapper.js-dynamic-forms-wrapper .js-dynamic-form-content-item.item-wrapper.js-item.tab-pane.active [id$="-title"] |
| 113 | ${tender_form_milestones_description_locator} = jquery=.milestones-dynamic-forms-wrapper.dynamic-forms-wrapper.js-dynamic-forms-wrapper .js-dynamic-form-content-item.item-wrapper.js-item.tab-pane.active [id$="-description"] | 128 | ${tender_form_milestones_description_locator} = jquery=.milestones-dynamic-forms-wrapper.dynamic-forms-wrapper.js-dynamic-forms-wrapper .js-dynamic-form-content-item.item-wrapper.js-item.tab-pane.active [id$="-description"] |
| @@ -116,7 +131,30 @@ ${tender_form_milestones_code_locator} = jquery=.mile | @@ -116,7 +131,30 @@ ${tender_form_milestones_code_locator} = jquery=.mile | ||
| 116 | ${tender_form_milestones_duration_days_locator} = jquery=.milestones-dynamic-forms-wrapper.dynamic-forms-wrapper.js-dynamic-forms-wrapper .js-dynamic-form-content-item.item-wrapper.js-item.tab-pane.active [id$="-duration_days"] | 131 | ${tender_form_milestones_duration_days_locator} = jquery=.milestones-dynamic-forms-wrapper.dynamic-forms-wrapper.js-dynamic-forms-wrapper .js-dynamic-form-content-item.item-wrapper.js-item.tab-pane.active [id$="-duration_days"] |
| 117 | ${tender_form_milestones_duration_type_locator} = jquery=.milestones-dynamic-forms-wrapper.dynamic-forms-wrapper.js-dynamic-forms-wrapper .js-dynamic-form-content-item.item-wrapper.js-item.tab-pane.active [id$="-duration_type"] | 132 | ${tender_form_milestones_duration_type_locator} = jquery=.milestones-dynamic-forms-wrapper.dynamic-forms-wrapper.js-dynamic-forms-wrapper .js-dynamic-form-content-item.item-wrapper.js-item.tab-pane.active [id$="-duration_type"] |
| 118 | 133 | ||
| 134 | +${tender_form_lots_panel_edit_btn_locator} = jquery=a.btn.btn-default.btn-update.js-form-popup-add | ||
| 135 | +${tender_form_lots_add_btn_locator} = jquery=[href$="#add-milestones"] | ||
| 136 | +${tender_form_lots_title_locator} = jquery=.fancybox-is-open [id$="-title"] | ||
| 137 | +${tender_form_lots_description_locator} = jquery=.fancybox-is-open [id$="-description"] | ||
| 138 | +${tender_form_lots_title_en_locator} = jquery=.fancybox-is-open [id$="-title_en"] | ||
| 139 | +${tender_form_lots_description_en_locator} = jquery=.fancybox-is-open [id$="-description_en"] | ||
| 140 | +${tender_form_lots_value_amount_input_locator} = jquery=.fancybox-is-open [id$="-value_amount"] | ||
| 141 | +${tender_form_lots_value_currency_input_locator} = jquery=.fancybox-is-open [id$="-value_currency"] | ||
| 142 | +${tender_form_lots_value_added_tax_input_locator} = jquery=.fancybox-is-open [id$="-value_added_tax_included"] | ||
| 143 | +${tender_form_lots_minimalStep_amount_input_locator} = jquery=.fancybox-is-open [id$="-min_step_amount"] | ||
| 144 | +${tender_form_lot_panel_add_feature_btn_locator} = jquery=#Lots .js-form-popup-panel-list:first > .js-form-popup-panel-item:last .actions-wrapper .btn[data-attribute="features"] | ||
| 145 | + | ||
| 146 | +${tender_form_milestones_percentage_locator} = jquery=.js-item.tab-pane.active [id$="-percentage"] | ||
| 147 | +${tender_form_milestones_code_locator} = jquery=.tab-pane.active [id$="-code"] | ||
| 148 | +${tender_form_milestones_duration_days_locator} = jquery=-pane.active [id$="-duration_days"] | ||
| 149 | +${tender_form_milestones_duration_type_locator} = jquery=-pane.active [id$="-duration_type"] | ||
| 150 | + | ||
| 119 | 151 | ||
| 120 | ${tender_form_procuringEntity_contactPoint_edit_btn_locator} = jquery=(#tender-form .panel.panel-default.form-popup-panel.js-form-popup-panel .panel-heading .actions-wrapper .js-form-popup-update)[4] | 152 | ${tender_form_procuringEntity_contactPoint_edit_btn_locator} = jquery=(#tender-form .panel.panel-default.form-popup-panel.js-form-popup-panel .panel-heading .actions-wrapper .js-form-popup-update)[4] |
| 121 | ${tender_form_submit_btn_locator} = jquery=#tender-form .js-submit-btn | 153 | ${tender_form_submit_btn_locator} = jquery=#tender-form .js-submit-btn |
| 122 | ${tender_created_checker_element_locator} = id=tender-part-pjax | 154 | ${tender_created_checker_element_locator} = id=tender-part-pjax |
| 155 | + | ||
| 156 | +# tender view | ||
| 157 | +${tender_view_checker_element_locator} = id=tender-general-info | ||
| 158 | +${tender_sync_element_locator} = jquery=#aside-part-pjax .status-label .fa-refresh | ||
| 159 | +${tender_uaid_text_locator} = jquery=#tender-general-info .tender-id .value | ||
| 160 | + |
Please
register
or
login
to post a comment