Commit f7120dfb1cebf990bf911ad7b5ecc1b60ca13d7c

Authored by Playtenders
1 parent 9320f82a

rename files

Showing 1 changed file with 661 additions and 0 deletions
  1 +*** Settings ***
  2 +
  3 +Resource playtender_common.robot
  4 +Resource playtender_variables.robot
  5 +Resource playtender_question.robot
  6 +Resource playtender_claim.robot
  7 +Resource playtender_bid.robot
  8 +Resource playtender_viewer.robot
  9 +
  10 +*** Keywords ***
  11 +
  12 +open new tender form
  13 + [Documentation] відкриття сторінки створення тендеру
  14 +
  15 + open page and wait element by locator ${broker_baseurl}/tender/create ${tender_form_locator}
  16 +
  17 +update tender queue
  18 + [Documentation] запускає оновлення тендерів з ЦБД і додає їх в чергу, тобто синхронізація може відбутися не відразу
  19 + ... поточна сторіка повертається
  20 +
  21 + ${current_url} = get location
  22 + go to ${broker_baseurl}/utils/queue-tender-update
  23 + go to ${current_url}
  24 +
  25 +open tender form by uaid
  26 + [Arguments] ${tender_uaid}
  27 + [Documentation] відкриття сторінки редагування плану
  28 +
  29 + open tender page by uaid ${tender_uaid}
  30 + click visible element and wait until page contains element ${tender_edit_btn_locator} ${tender_form_locator}
  31 +
  32 +open tender page by uaid
  33 + [Arguments] ${uaid}
  34 + [Documentation] відкриває сторінку з тендером
  35 +
  36 + open site page and wait content element ${broker_baseurl}/tender/${uaid}
  37 + ${is_tender_found} = get is element exist ${tender_view_checker_element_locator}
  38 + return from keyword if ${is_tender_found} == ${True}
  39 + ${is_tender_not_found} = get is 404 page
  40 + ${is_needed_to_update_and_wait_sync} = set variable if ${is_test_role_owner} == ${False} and ${is_tender_not_found} ${True} ${False}
  41 + run keyword if ${is_needed_to_update_and_wait_sync} update tender queue
  42 + run keyword if ${is_needed_to_update_and_wait_sync} wait until 404 page disappears
  43 + ${is_tender_found} = get is element exist ${tender_view_checker_element_locator}
  44 + run keyword if ${is_tender_found} == ${False} fail Opening tender page by uaid fails.
  45 +
  46 +
  47 +fill tender form
  48 + [Arguments] ${data}
  49 + [Documentation] заповнення форми з масива даних
  50 +
  51 + fill tender general info ${data}
  52 + ${features} = get from dictionary by keys ${data} features
  53 + run keyword if condition is not none ${features} fill tender form features ${features} ${tender_form_general_panel_add_feature_btn_locator}
  54 + ${items} = get from dictionary by keys ${data} items
  55 + run keyword if condition is not none ${items} fill tender form items ${items}
  56 + ${milestones} = get from dictionary by keys ${data} milestones
  57 + run keyword and ignore error run keyword if condition is not none ${milestones} fill tender form milestones ${milestones}
  58 + ${lots} = get from dictionary by keys ${data} lots
  59 + run keyword if condition is not none ${lots} fill tender form lots ${lots}
  60 + ${supplier_data} = op_robot_tests.tests_files.service_keywords . Test Supplier Data
  61 + ##### BOF - TMP for negotiation milestone 1 lot#####
  62 + run keyword if '${mode}' in 'reporting' Set Global Variable ${rep_val} ${data.value.amount}
  63 + ##### EOF - TMP #####
  64 + run keyword if '${mode}' in 'negotiation reporting' fill tender from award reporting ${data.value.amount} ${supplier_data.data.suppliers[0]}
  65 + Run Keyword And Ignore Error fill tender required documents
  66 + ${procurement_method_type} = get from dictionary by keys ${data} procurementMethodType
  67 + Run Keyword And Ignore Error run keyword if '${mode}' in 'openeu open_esco open_framework' or ('${mode}' == 'open_competitive_dialogue' and '${procurement_method_type}' == 'competitiveDialogueEU') fill tender contact person ${data}
  68 +# Run Keyword And Ignore Error Execute Javascript $('a.btn.btn-default.btn-update.js-form-popup-add').click()
  69 +
  70 +fill tender form 2 stage
  71 + [Arguments] ${data}
  72 + [Documentation] заповнення форми з масива даних
  73 +
  74 + fill tender general info 2 stage ${data}
  75 + ${features} = get from dictionary by keys ${data} features
  76 + run keyword if condition is not none ${features} fill tender form features ${features} ${tender_form_general_panel_add_feature_btn_locator}
  77 + ${items} = get from dictionary by keys ${data} items
  78 +# run keyword if condition is not none ${items} fill tender form items ${items}
  79 + run keyword if condition is not none ${items} fill tender form ${items}
  80 + ${milestones} = get from dictionary by keys ${data} milestones
  81 + run keyword and ignore error run keyword if condition is not none ${milestones} fill tender form milestones ${milestones}
  82 + ${lots} = get from dictionary by keys ${data} lots
  83 + run keyword if condition is not none ${lots} fill tender form lots 2 stage ${lots}
  84 + ${supplier_data} = op_robot_tests.tests_files.service_keywords . Test Supplier Data
  85 + run keyword if '${mode}' in 'negotiation reporting' fill tender from award reporting ${data.value.amount} ${supplier_data.data.suppliers[0]}
  86 + Run Keyword And Ignore Error fill tender required documents
  87 +
  88 +fill tender general info
  89 + [Arguments] ${data}
  90 + [Documentation] обирає потрібний тип закупівлі, чекає оновлення форми, вказує мультилотовість, заповнює
  91 + ... приховані поля + відкриває попап основних даних, заповнює його і закриває
  92 +
  93 + Execute Javascript $(window).scrollTop(0)
  94 + wait until page does not contain element ${tender_load_form_after_mode_locator}
  95 + wait until page contains element ${tender_form_procurement_method_type_input_locator}
  96 + capture page screenshot
  97 + ${procurement_method_type} = get from dictionary by keys ${data} procurementMethodType
  98 + capture page screenshot
  99 + run keyword if condition is not none ${procurement_method_type} select from list by value ${tender_form_procurement_method_type_input_locator} ${procurement_method_type}
  100 + wait until page does not contain element ${tender_load_form_after_mode_locator}
  101 +
  102 + ${lots} = get from dictionary by keys ${data} lots
  103 + run keyword if condition is not none ${lots} Run Keyword And Ignore Error Execute Javascript $('[id$="form-is_multilot"]').click()
  104 + wait until page does not contain element ${tender_load_form_after_mode_locator} 20
  105 +
  106 + open popup by btn locator ${plan_form_general_panel_edit_btn_locator}
  107 + ${plan_path} = Get Variable Value ${ARTIFACT_FILE} artifact_plan.yaml
  108 + ${closeFrameworkAgreementSelectionUA_path} = Get Variable Value ${ARTIFACT_FILE} artifact.yaml
  109 + ${ARTIFACT} = load_data_from ${plan_path}
  110 + run keyword and ignore error run keyword if condition is not none ${ARTIFACT.tender_uaid} input text to visible input ${tender_form_general_tender_plan_id_locator} ${ARTIFACT.tender_uaid}
  111 + ${ARTIFACT2} = load_data_from ${closeFrameworkAgreementSelectionUA_path}
  112 + run keyword and ignore error run keyword if condition is not none ${ARTIFACT.tender_uaid} input text to visible input ${tender_form_general_agreementid_input_locator} ${ARTIFACT2.tender_uaid}
  113 + ${title} = get from dictionary by keys ${data} title
  114 + run keyword if condition is not none ${title} input text to visible input ${tender_form_general_tender_title_locator} ${title}
  115 + ${title_en} = get from dictionary by keys ${data} title_en
  116 + run keyword if condition is not none ${title} input text to exist visible input ${tender_form_general_tender_title_en_locator} ${title_en}
  117 + ${description} = get from dictionary by keys ${data} description
  118 + run keyword if condition is not none ${title} input text to visible input ${tender_form_general_tender_description_locator} ${description}
  119 + ${description_en} = get from dictionary by keys ${data} description_en
  120 + run keyword if condition is not none ${title} input text to exist visible input ${tender_form_general_tender_description_en_locator} ${description_en}
  121 + ${funders} = get from dictionary by keys ${data} funders
  122 + run keyword if condition is not none ${funders} Click Element ${tender_form_general_tender_funder_locator}
  123 + run keyword if condition is not none ${funders} fill tender form funders ${funders}
  124 + ${amount} = get from dictionary by keys ${data} value amount
  125 + run keyword and ignore error run keyword if condition is not none ${amount} run keyword and ignore error input number to exist visible input ${tender_form_general_value_amount_input_locator} ${amount}
  126 + ${currency} = get from dictionary by keys ${data} value currency
  127 + run keyword if condition is not none ${currency} select from visible list by value ${tender_form_general_value_currency_input_locator} ${currency}
  128 + ${value_added_tax_included} = get from dictionary by keys ${data} value valueAddedTaxIncluded
  129 + run keyword if condition is not none ${value_added_tax_included} run keyword if ${value_added_tax_included} Execute Javascript $('[id$="form-value_added_tax_included"]').click()
  130 +##run keyword and ignore error
  131 +
  132 +##click element ${tender_form_general_value_added_tax_input_locator}
  133 + Execute Javascript $('[id$="form-test_mode"]').click()
  134 + ${min_step_amount} = get from dictionary by keys ${data} minimalStep amount
  135 + 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}
  136 + ${main_procurement_category} = get from dictionary by keys ${data} mainProcurementCategory
  137 + run keyword if condition is not none ${main_procurement_category} select from visible list by value ${tender_form_general_main_procurement_category_input_locator} ${main_procurement_category}
  138 + ${tender_enquiry_period_start_date} = get from dictionary by keys ${data} enquiryPeriod startDate
  139 +# 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}
  140 + run keyword and ignore error run keyword if condition is not none ${tender_enquiry_period_start_date} input datetime to visible input ${tender_enquiry_period_start_date_input_locator} ${tender_enquiry_period_start_date}
  141 + ${tender_enquiry_period_end_date} = get from dictionary by keys ${data} enquiryPeriod endDate
  142 +# 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}
  143 + 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}
  144 + ${tender_start_date} = get from dictionary by keys ${data} tenderPeriod startDate
  145 + 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}
  146 + ${tender_end_date} = get from dictionary by keys ${data} tenderPeriod endDate
  147 + 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}
  148 +# run keyword and ignore error click element ${tender_tender_quick_mode_locator}
  149 + run keyword and ignore error Execute Javascript $('[id$="form-quick_mode"]').click()
  150 + ${classification} = get from dictionary by keys ${data} classification
  151 + run keyword if condition is not none ${classification} select classification by code attributes ${plan_form_classification_edit_btn_locator} ${classification}
  152 + ${additional_classifications} = get from dictionary by keys ${data} additionalClassifications
  153 + 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}
  154 + 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}
  155 + ${funding_kind} = get from dictionary by keys ${data} fundingKind
  156 + run keyword if condition is not none ${funding_kind} select from visible list by value ${tender_form_general_funding_kind_input_locator} ${funding_kind}
  157 +#esco
  158 + ${nbu_discount_rate} = get from dictionary by keys ${data} NBUdiscountRate
  159 + ${nbu_discount_rate} = Run keyword If '${nbu_discount_rate}' != '${None}' set_value_minimalStepPercentage ${nbu_discount_rate}
  160 + ${nbu_discount_rate} = Run keyword If '${nbu_discount_rate}' != '${None}' convert_esco__float_to_string ${nbu_discount_rate}
  161 + run keyword and ignore error run keyword if condition is not none ${nbu_discount_rate} input number to exist visible input ${tender_form_general_nbu_discount_rate_input_locator} ${nbu_discount_rate}
  162 +#closeframework
  163 + ${max_awards_count} = get from dictionary by keys ${data} maxAwardsCount
  164 + run keyword if condition is not none ${max_awards_count} input text to exist visible input ${tender_form_general_max_awards_count_input_locator} ${max_awards_count}
  165 + ${agreement_duration_years} = get from dictionary by keys ${data} agreementDuration
  166 + ${agreement_duration_years1}= Run keyword If '${agreement_duration_years}' != '${None}' split_agreementDuration ${agreement_duration_years} year
  167 + run keyword if condition is not none ${agreement_duration_years} select from visible list by value ${tender_form_general_agreement_duration_years_input_locator} ${agreement_duration_years1}
  168 + ${agreement_duration_months} = get from dictionary by keys ${data} agreementDuration
  169 + ${agreement_duration_months1}= Run keyword If '${agreement_duration_months}' != '${None}' split_agreementDuration ${agreement_duration_months} month
  170 + run keyword if condition is not none ${agreement_duration_months} select from visible list by value ${tender_form_general_agreement_duration_months_input_locator} ${agreement_duration_months1}
  171 + ${agreement_duration_days} = get from dictionary by keys ${data} agreementDuration
  172 + ${agreement_duration_days1}= Run keyword If '${agreement_duration_days}' != '${None}' split_agreementDuration ${agreement_duration_years} day
  173 + run keyword if condition is not none ${agreement_duration_days} select from visible list by value ${tender_form_general_agreement_duration_days_input_locator} ${agreement_duration_days1}
  174 +#closeFrameworkAgreementSelectionUA
  175 + ${max_awards_count} = get from dictionary by keys ${data} maxAwardsCount
  176 + run keyword if condition is not none ${max_awards_count} input text to exist visible input ${tender_form_general_max_awards_count_input_locator} ${max_awards_count}
  177 + ${agreement_duration_years} = get from dictionary by keys ${data} agreementDuration
  178 + ${agreement_duration_years1}= Run keyword If '${agreement_duration_years}' != '${None}' split_agreementDuration ${agreement_duration_years} year
  179 + run keyword if condition is not none ${agreement_duration_years} select from visible list by value ${tender_form_general_agreement_duration_years_input_locator} ${agreement_duration_years1}
  180 + ${agreement_duration_months} = get from dictionary by keys ${data} agreementDuration
  181 + ${agreement_duration_months1}= Run keyword If '${agreement_duration_months}' != '${None}' split_agreementDuration ${agreement_duration_months} month
  182 + run keyword if condition is not none ${agreement_duration_months} select from visible list by value ${tender_form_general_agreement_duration_months_input_locator} ${agreement_duration_months1}
  183 + ${agreement_duration_days} = get from dictionary by keys ${data} agreementDuration
  184 + ${agreement_duration_days1}= Run keyword If '${agreement_duration_days}' != '${None}' split_agreementDuration ${agreement_duration_years} day
  185 + run keyword if condition is not none ${agreement_duration_days} select from visible list by value ${tender_form_general_agreement_duration_days_input_locator} ${agreement_duration_days1}
  186 +#negotiation
  187 + ${cause} = get from dictionary by keys ${data} cause
  188 + run keyword if condition is not none ${cause} select from visible list by value ${tender_form_general_cause_input_locator} ${cause}
  189 + ${cause_description} = get from dictionary by keys ${data} causeDescription
  190 + run keyword if condition is not none ${cause_description} input text to visible input ${tender_form_general_cause_description_input_locator} ${cause_description}
  191 +#complaints
  192 + Run Keyword If '${SUITE_NAME}' == 'Tests Files.Complaints' click visible element ${tender_form_auction_skip_mode_input_locator}
  193 + submit current visible popup
  194 +
  195 +
  196 +fill tender general info 2 stage
  197 + [Arguments] ${data}
  198 + [Documentation] обирає потрібний тип закупівлі, чекає оновлення форми, вказує мультилотовість, заповнює
  199 + ... приховані поля + відкриває попап основних даних, заповнює його і закриває
  200 +
  201 + Execute Javascript $(window).scrollTop(0)
  202 + wait until page does not contain element ${tender_load_form_after_mode_locator}
  203 + wait until page contains element ${tender_form_procurement_method_type_input_locator}
  204 + capture page screenshot
  205 + ${procurement_method_type} = get from dictionary by keys ${data} procurementMethodType
  206 + capture page screenshot
  207 + run keyword if condition is not none ${procurement_method_type} select from list by value ${tender_form_procurement_method_type_input_locator} ${procurement_method_type}
  208 + wait until page does not contain element ${tender_load_form_after_mode_locator}
  209 +
  210 + ${lots} = get from dictionary by keys ${data} lots
  211 + run keyword if condition is not none ${lots} Run Keyword And Ignore Error Click Element ${tender_multilot_locator}
  212 + wait until page does not contain element ${tender_load_form_after_mode_locator} 20
  213 +
  214 + open popup by btn locator ${plan_form_general_panel_edit_btn_locator}
  215 + ${closeFrameworkAgreementSelectionUA_path} = Get Variable Value ${ARTIFACT_FILE} artifact.yaml
  216 + ${ARTIFACT2} = load_data_from ${closeFrameworkAgreementSelectionUA_path}
  217 + run keyword and ignore error run keyword if condition is not none ${ARTIFACT.tender_uaid} input text to visible input ${tender_form_general_agreementid_input_locator} ${ARTIFACT2.tender_uaid}
  218 + ${main_procurement_category} = get from dictionary by keys ${data} mainProcurementCategory
  219 + run keyword if condition is not none ${main_procurement_category} Execute Javascript $('[id$="form-main_procurement_category"]').val('${main_procurement_category}').change()
  220 + ${title} = get from dictionary by keys ${data} title
  221 + run keyword if condition is not none ${title} input text to visible input ${tender_form_general_tender_title_locator} ${title}
  222 + ${title_en} = get from dictionary by keys ${data} title_en
  223 + run keyword if condition is not none ${title} input text to exist visible input ${tender_form_general_tender_title_en_locator} ${title_en}
  224 + ${description} = get from dictionary by keys ${data} description
  225 + run keyword if condition is not none ${title} input text to visible input ${tender_form_general_tender_description_locator} ${description}
  226 + ${description_en} = get from dictionary by keys ${data} description_en
  227 + run keyword if condition is not none ${title} input text to exist visible input ${tender_form_general_tender_description_en_locator} ${description_en}
  228 + ${amount} = get from dictionary by keys ${data} value amount
  229 + run keyword and ignore error run keyword if condition is not none ${amount} run keyword and ignore error input number to exist visible input ${tender_form_general_value_amount_input_locator} ${amount}
  230 + ${currency} = get from dictionary by keys ${data} value currency
  231 + run keyword if condition is not none ${currency} select from visible list by value ${tender_form_general_value_currency_input_locator} ${currency}
  232 + ${value_added_tax_included} = get from dictionary by keys ${data} value valueAddedTaxIncluded
  233 + run keyword if condition is not none ${value_added_tax_included} run keyword if ${value_added_tax_included} Click Element ${tender_form_general_value_added_tax_input_locator}
  234 + ${min_step_amount} = get from dictionary by keys ${data} minimalStep amount
  235 + 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}
  236 + ${tender_enquiry_period_start_date} = get from dictionary by keys ${data} enquiryPeriod startDate
  237 +# 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}
  238 + run keyword if condition is not none ${tender_enquiry_period_start_date} input datetime to visible input ${tender_enquiry_period_start_date_input_locator} ${tender_enquiry_period_start_date}
  239 + ${tender_enquiry_period_end_date} = get from dictionary by keys ${data} enquiryPeriod endDate
  240 +# 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}
  241 + 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}
  242 + ${tender_start_date} = get from dictionary by keys ${data} tenderPeriod startDate
  243 + 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}
  244 + ${tender_end_date} = get from dictionary by keys ${data} tenderPeriod endDate
  245 + 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}
  246 + ${date_start} = Get Current Date increment=03:00:00
  247 + run keyword if condition is none ${tender_end_date} input datetime to visible input ${tender_tender_period_end_date_input_locator} ${date_start}
  248 + run keyword and ignore error click element ${tender_tender_quick_mode_locator}
  249 + ${classification} = get from dictionary by keys ${data} classification
  250 + run keyword if condition is not none ${classification} select classification by code attributes ${plan_form_classification_edit_btn_locator} ${classification}
  251 + ${additional_classifications} = get from dictionary by keys ${data} additionalClassifications
  252 + 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}
  253 + 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}
  254 + ${funding_kind} = get from dictionary by keys ${data} fundingKind
  255 + run keyword if condition is not none ${funding_kind} select from visible list by value ${tender_form_general_funding_kind_input_locator} ${funding_kind}
  256 +#closeframework
  257 + ${max_awards_count} = get from dictionary by keys ${data} maxAwardsCount
  258 + run keyword if condition is not none ${max_awards_count} input text to exist visible input ${tender_form_general_max_awards_count_input_locator} ${max_awards_count}
  259 + ${agreement_duration_years} = get from dictionary by keys ${data} agreementDuration
  260 + ${agreement_duration_years1}= Run keyword If '${agreement_duration_years}' != '${None}' split_agreementDuration ${agreement_duration_years} year
  261 + run keyword if condition is not none ${agreement_duration_years} select from visible list by value ${tender_form_general_agreement_duration_years_input_locator} ${agreement_duration_years1}
  262 + ${agreement_duration_months} = get from dictionary by keys ${data} agreementDuration
  263 + ${agreement_duration_months1}= Run keyword If '${agreement_duration_months}' != '${None}' split_agreementDuration ${agreement_duration_months} month
  264 + run keyword if condition is not none ${agreement_duration_months} select from visible list by value ${tender_form_general_agreement_duration_months_input_locator} ${agreement_duration_months1}
  265 + ${agreement_duration_days} = get from dictionary by keys ${data} agreementDuration
  266 + ${agreement_duration_days1}= Run keyword If '${agreement_duration_days}' != '${None}' split_agreementDuration ${agreement_duration_years} day
  267 + run keyword if condition is not none ${agreement_duration_days} select from visible list by value ${tender_form_general_agreement_duration_days_input_locator} ${agreement_duration_days1}
  268 +#closeFrameworkAgreementSelectionUA
  269 + ${max_awards_count} = get from dictionary by keys ${data} maxAwardsCount
  270 + run keyword if condition is not none ${max_awards_count} input text to exist visible input ${tender_form_general_max_awards_count_input_locator} ${max_awards_count}
  271 + ${agreement_duration_years} = get from dictionary by keys ${data} agreementDuration
  272 + ${agreement_duration_years1}= Run keyword If '${agreement_duration_years}' != '${None}' split_agreementDuration ${agreement_duration_years} year
  273 + run keyword if condition is not none ${agreement_duration_years} select from visible list by value ${tender_form_general_agreement_duration_years_input_locator} ${agreement_duration_years1}
  274 + ${agreement_duration_months} = get from dictionary by keys ${data} agreementDuration
  275 + ${agreement_duration_months1}= Run keyword If '${agreement_duration_months}' != '${None}' split_agreementDuration ${agreement_duration_months} month
  276 + run keyword if condition is not none ${agreement_duration_months} select from visible list by value ${tender_form_general_agreement_duration_months_input_locator} ${agreement_duration_months1}
  277 + ${agreement_duration_days} = get from dictionary by keys ${data} agreementDuration
  278 + ${agreement_duration_days1}= Run keyword If '${agreement_duration_days}' != '${None}' split_agreementDuration ${agreement_duration_years} day
  279 + run keyword if condition is not none ${agreement_duration_days} select from visible list by value ${tender_form_general_agreement_duration_days_input_locator} ${agreement_duration_days1}
  280 + submit current visible popup
  281 +
  282 +fill tender form items
  283 + [Arguments] ${item_attributes_array}
  284 + [Documentation] заповнення номенклатури тендеру
  285 +
  286 + :FOR ${item_attributes} IN @{item_attributes_array}
  287 + \ run keyword and ignore error open popup by btn locator ${tender_form_item_add_edit_btn_locator}
  288 +# \ wait until popup is visible
  289 + \ fill tender item form in opened popup ${item_attributes}
  290 + \ submit current visible popup
  291 + \ ${features} = get from dictionary by keys ${item_attributes} features
  292 + \ run keyword if condition is not none ${features} fill tender form features ${features} ${tender_form_item_panel_add_feature_btn_locator}
  293 +
  294 +fill tender form items 2 stage
  295 + [Arguments] ${item_attributes_array}
  296 + [Documentation] заповнення номенклатури тендеру
  297 +
  298 + :FOR ${item_attributes} IN @{item_attributes_array}
  299 + \ run keyword and ignore error open popup by btn locator ${tender_form_item_edit_btn_locator}
  300 +# \ wait until popup is visible
  301 + \ fill tender item form in opened popup ${item_attributes}
  302 + \ submit current visible popup
  303 + \ ${features} = get from dictionary by keys ${item_attributes} features
  304 + \ run keyword if condition is not none ${features} fill tender form features ${features} ${tender_form_item_panel_add_feature_btn_locator}
  305 +
  306 +fill tender item form in opened popup
  307 + [Arguments] ${data}
  308 + [Documentation] заповнює відкриту форму згідно вказаних даних
  309 +
  310 + fill item form in opened popup ${data}
  311 +
  312 + ${region} = get from dictionary by keys ${data} deliveryAddress region
  313 + run keyword if condition is not none ${region} select from visible list by label ${item_form_popup_delivery_region_id_input_locator} ${region}
  314 + ${postal_code} = get from dictionary by keys ${data} deliveryAddress postalCode
  315 + run keyword if condition is not none ${postal_code} input text to visible input ${item_form_popup_delivery_postal_code_input_locator} ${postal_code}
  316 + ${locality} = get from dictionary by keys ${data} deliveryAddress locality
  317 + run keyword if condition is not none ${locality} input text to visible input ${item_form_popup_delivery_locality_input_locator} ${locality}
  318 + ${street_address} = get from dictionary by keys ${data} deliveryAddress streetAddress
  319 + run keyword if condition is not none ${street_address} input text to visible input ${item_form_popup_delivery_street_address_input_locator} ${street_address}
  320 + ${delivery_start_date} = get from dictionary by keys ${data} deliveryDate startDate
  321 + ${delivery_start_date} = Run keyword If '${delivery_start_date}' != '${None}' parse_deliveryPeriod_date ${delivery_start_date}
  322 + run keyword if condition is not none ${delivery_start_date} run keyword and ignore error input datetime to exist visible input ${item_form_popup_delivery_start_date_input_locator} ${delivery_start_date}
  323 + ${delivery_end_date} = get from dictionary by keys ${data} deliveryDate endDate
  324 + ${delivery_end_date} = Run keyword If '${delivery_end_date}' != '${None}' parse_deliveryPeriod_date ${delivery_end_date}
  325 + run keyword if condition is not none ${delivery_end_date} run keyword and ignore error input text ${item_form_popup_delivery_end_date_input_locator} ${delivery_end_date}
  326 +## 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}
  327 +
  328 +fill tender form milestones
  329 + [Arguments] ${milestone_attributes_array}
  330 + [Documentation] заповнення умов оплати тендеру
  331 +
  332 + open popup by btn locator ${tender_form_milestones_panel_edit_btn_locator}
  333 +# click visible element ${tender_form_milestones_panel_edit_btn_locator}
  334 +# wait until popup is visible
  335 + :FOR ${milestone_attributes} IN @{milestone_attributes_array}
  336 + \ click visible element ${milestone_form_popup_add_btn_locator}
  337 + \ wait until page does not contain element ${popup_dynamic_form_loading_element_locator}
  338 + \ fill milestone form in opened popup ${milestone_attributes}
  339 + submit current visible popup
  340 +
  341 +fill tender form milestones fake
  342 + [Documentation] заповнення умов оплати тендеру
  343 +
  344 + open popup by btn locator ${tender_form_milestones_panel_edit_btn_locator}
  345 + click visible element ${milestone_form_popup_add_btn_locator}
  346 + wait until page does not contain element ${popup_dynamic_form_loading_element_locator}
  347 + select from visible list by value ${milestone_form_popup_title_input_locator} submissionDateOfApplications
  348 + input text to exist visible input ${milestone_form_popup_description_input_locator} submissionDateOfApplications
  349 + input text to exist visible input ${milestone_form_popup_percentage_input_locator} 100
  350 + select from visible list by value ${milestone_form_popup_code_input_locator} postpayment
  351 + input text to exist visible input ${milestone_form_popup_duration_days_input_locator} 145
  352 + select from visible list by value ${milestone_form_popup_duration_type_input_locator} working
  353 + submit current visible popup
  354 +
  355 +fill milestone form in opened popup
  356 + [Arguments] ${data}
  357 + [Documentation] заповнює відкриту форму в активній вкладці згідно вказаних даних
  358 +
  359 + ${title} = get from dictionary by keys ${data} title
  360 + run keyword if condition is not none ${title} select from visible list by value ${milestone_form_popup_title_input_locator} ${title}
  361 + ${description} = get from dictionary by keys ${data} description
  362 + run keyword if condition is not none ${description} input text to exist visible input ${milestone_form_popup_description_input_locator} ${description}
  363 + ${percentage} = get from dictionary by keys ${data} percentage
  364 + run keyword if condition is not none ${percentage} input text to exist visible input ${milestone_form_popup_percentage_input_locator} ${percentage}
  365 + ${code} = get from dictionary by keys ${data} code
  366 + run keyword if condition is not none ${code} select from visible list by value ${milestone_form_popup_code_input_locator} ${code}
  367 + ${duration_days} = get from dictionary by keys ${data} duration days
  368 + run keyword if condition is not none ${duration_days} input text to exist visible input ${milestone_form_popup_duration_days_input_locator} ${duration_days}
  369 + ${duration_type} = get from dictionary by keys ${data} duration type
  370 + run keyword if condition is not none ${duration_type} select from visible list by value ${milestone_form_popup_duration_type_input_locator} ${duration_type}
  371 +
  372 +fill tender form features
  373 + [Arguments] ${feature_attributes_array} ${add_btn_locator}
  374 + [Documentation] заповнення нецінові крітерії тендеру
  375 +
  376 + open popup by btn locator ${add_btn_locator}
  377 +# click visible element ${add_btn_locator}
  378 +# wait until popup is visible
  379 + :FOR ${feature_attributes} IN @{feature_attributes_array}
  380 +# \ click visible element ${tender_form_features_panel_edit_btn_locator}
  381 + \ execute javascript ${tender_form_features_panel_edit_btn_locator}
  382 + \ wait until page does not contain element ${popup_dynamic_form_loading_element_locator}
  383 + \ fill feature form in opened popup ${feature_attributes}
  384 + submit current visible popup
  385 +
  386 +fill tender form features2
  387 + [Arguments] ${feature_attributes_array} ${add_btn_locator}
  388 + [Documentation] заповнення нецінові крітерії тендеру
  389 +
  390 + open popup by btn locator ${add_btn_locator}
  391 +# click visible element ${add_btn_locator}
  392 +# wait until popup is visible
  393 + click visible element ${tender_form_features_panel_edit_btn_locator}
  394 + wait until page does not contain element ${popup_dynamic_form_loading_element_locator}
  395 + fill feature form in opened popup ${feature_attributes_array}
  396 + submit current visible popup
  397 +
  398 +fill feature form in opened popup
  399 + [Arguments] ${data}
  400 + [Documentation] заповнює відкриту форму в активній вкладці згідно вказаних даних
  401 +
  402 + ${title} = get from dictionary by keys ${data} title
  403 + run keyword if condition is not none ${title} input text to exist visible input ${feature_form_popup_title_input_locator} ${title}
  404 + ${description} = get from dictionary by keys ${data} description
  405 + run keyword if condition is not none ${description} input text to exist visible input ${feature_form_popup_description_input_locator} ${description}
  406 + ${title_en} = get from dictionary by keys ${data} title_en
  407 + run keyword if condition is not none ${title_en} input text to exist visible input ${feature_form_popup_title_en_input_locator} ${title_en}
  408 + ${description_en} = get from dictionary by keys ${data} description
  409 + run keyword if condition is not none ${description_en} input text to exist visible input ${feature_form_popup_description_en_input_locator} ${description_en}
  410 + ${options} = Get From Dictionary ${data} enum
  411 + ${count} = Get Length ${options}
  412 + ${ex}= Evaluate ${count} - 1
  413 + : FOR ${INDEX} IN RANGE 0 ${count}
  414 + \ run keyword if condition is not none ${options[${INDEX}].title} input text to exist visible input ${feature_form_popup_enum_title_input_locator} ${options[${INDEX}].title}
  415 + \ run keyword and ignore error input text to exist visible input ${feature_form_popup_enum_title_en_input_locator} test2
  416 +# \ run keyword if condition is not none ${options[${INDEX}].title_en} input text to exist visible input ${feature_form_popup_enum_title_en_input_locator} ${options[${INDEX}].title_en}
  417 + \ ${value} = convert_float_to_string ${options[${INDEX}].value}
  418 + \ ${value} = Convert To Number ${value}
  419 + \ ${value} = multiply_hundred ${value}
  420 + \ ${value} = convert_float_to_string ${value}
  421 + \ run keyword if condition is not none ${options[${INDEX}].value} input text to exist visible input ${feature_form_popup_enum_value_input_locator} ${value}
  422 + \ Continue For Loop If '${INDEX}' == '${ex}'
  423 + \ Run Keyword If ${count} != 1 click visible element ${feature_form_popup_add-enums_btn_locator}
  424 + \ wait until page does not contain element ${popup_dynamic_form_loading_element_locator}
  425 +
  426 +fill tender form lots
  427 + [Arguments] ${lot_attributes_array}
  428 + [Documentation] заповнення номенклатури тендеру
  429 +
  430 + ##### BOF - TMP for negotiation milestone 1 lot#####
  431 + ${prepared_tender_data} = Get From Dictionary ${td_railway_crutch} data
  432 + ${milestones1} = Run Keyword If "${mode}" in "negotiation" Get From Dictionary ${prepared_tender_data} milestones
  433 + ##### EOF - TMP #####
  434 + :FOR ${lot_attributes} IN @{lot_attributes_array}
  435 + \ run keyword if '${mode}' not in 'open_framework' open popup by btn locator ${tender_form_lots_panel_edit_btn_locator}
  436 + \ ... ELSE click visible element ${tender_form_lots_edit_lot1_btn_locator}
  437 +# \ open popup by btn locator ${tender_form_lots_panel_edit_btn_locator}
  438 +# \ click visible element ${tender_form_lots_panel_edit_btn_locator}
  439 +# \ wait until popup is visible
  440 + \ fill lot form in opened popup ${lot_attributes}
  441 + \ submit current visible popup
  442 + \ ${features} = get from dictionary by keys ${lot_attributes} features
  443 + \ run keyword if condition is not none ${features} fill tender form features ${features} ${tender_form_lot_panel_add_feature_btn_locator}
  444 + \ ${milestones} = get from dictionary by keys ${lot_attributes} milestones
  445 + \ run keyword if condition is not none ${milestones} fill tender form milestones ${milestones}
  446 + \ run keyword if condition is none ${milestones} run keyword if "${mode}" in "negotiation" fill tender form milestones ${milestones1}
  447 + \ ${items} = get from dictionary by keys ${lot_attributes} items
  448 + \ run keyword if condition is not none ${items} fill tender form items ${items}
  449 +
  450 +fill tender form lots 2 stage
  451 + [Arguments] ${lot_attributes_array}
  452 + [Documentation] заповнення номенклатури тендеру
  453 +
  454 + ##### BOF - TMP for negotiation milestone 1 lot#####
  455 + ${prepared_tender_data} = Get From Dictionary ${td_railway_crutch} data
  456 + ${milestones1} = Run Keyword If "${mode}" in "negotiation" Get From Dictionary ${prepared_tender_data} milestones
  457 + ##### EOF - TMP #####
  458 + :FOR ${lot_attributes} IN @{lot_attributes_array}
  459 + \ open popup by btn locator ${tender_form_lots_edit_lot1_btn_locator}
  460 + ##\ open popup by btn locator ${tender_form_lots_panel_edit_btn_locator}
  461 + \ fill lot form in opened popup ${lot_attributes}
  462 + \ submit current visible popup
  463 + \ ${features} = get from dictionary by keys ${lot_attributes} features
  464 + \ run keyword if condition is not none ${features} fill tender form features ${features} ${tender_form_lot_panel_add_feature_btn_locator}
  465 + \ ${milestones} = get from dictionary by keys ${lot_attributes} milestones
  466 + \ run keyword if condition is not none ${milestones} fill tender form milestones ${milestones}
  467 + \ run keyword if condition is none ${milestones} run keyword if "${mode}" in "negotiation" fill tender form milestones ${milestones1}
  468 + \ run keyword if condition is none ${milestones} run keyword if "${mode}" in "framework_selection" fill tender form milestones fake
  469 + \ ${items} = get from dictionary by keys ${lot_attributes} items
  470 + \ run keyword if condition is not none ${items} fill tender form items 2 stage ${items}
  471 +
  472 +fill lot form in opened popup
  473 + [Arguments] ${data}
  474 + [Documentation] заповнює відкриту форму згідно вказаних даних
  475 +
  476 + log many ${data}
  477 + ${title} = get from dictionary by keys ${data} title
  478 + run keyword if condition is not none ${title} input text to visible input ${lot_form_popup_title_input_locator} ${title}
  479 + ${title_en} = get from dictionary by keys ${data} title_en
  480 + run keyword if condition is not none ${title_en} input text to exist visible input ${lot_form_popup_title_en_input_locator} ${title_en}
  481 + ${description} = get from dictionary by keys ${data} description
  482 + run keyword if condition is not none ${description} input text to visible input ${lot_form_popup_description_input_locator} ${description}
  483 + ${description_en} = get from dictionary by keys ${data} description_en
  484 + run keyword if condition is not none ${description_en} input text to exist visible input ${lot_form_popup_description_en_input_locator} ${description_en}
  485 + capture page screenshot
  486 + ${description_ru} = get from dictionary by keys ${data} description_ru
  487 + run keyword if condition is not none ${description_ru} input text to exist visible input ${item_form_popup_description_ru_input_locator} ${description_ru}
  488 + ${amount} = get from dictionary by keys ${data} value amount
  489 + run keyword if condition is not none ${amount} input number to exist visible input ${lot_form_popup_value_amount_input_locator} ${amount}
  490 + ${min_step_amount} = get from dictionary by keys ${data} minimalStep amount
  491 + run keyword if condition is not none ${min_step_amount} input number to exist visible input ${lot_form_popup_minimalstep_amount_input_locator} ${min_step_amount}
  492 +
  493 + ${yearly_payments_percentage_range} = get from dictionary by keys ${data} yearlyPaymentsPercentageRange
  494 + ${yearly_payments_percentage_range} = Run keyword If '${yearly_payments_percentage_range}' != '${None}' set_value_minimalStepPercentage ${yearly_payments_percentage_range}
  495 + ${yearly_payments_percentage_range} = Run keyword If '${yearly_payments_percentage_range}' != '${None}' convert_esco__float_to_string ${yearly_payments_percentage_range}
  496 + run keyword if condition is not none ${yearly_payments_percentage_range} input number to exist visible input ${tender_form_general_yearly_payments_percentage_range_input_locator} ${yearly_payments_percentage_range}
  497 + ${minimal_step_percentage} = get from dictionary by keys ${data} minimalStepPercentage
  498 + ${minimal_step_percentage} = Run keyword If '${minimal_step_percentage}' != '${None}' set_value_minimalStepPercentage ${minimal_step_percentage}
  499 + ${minimal_step_percentage} = Run keyword If '${minimal_step_percentage}' != '${None}' convert_esco__float_to_string ${minimal_step_percentage}
  500 + run keyword if condition is not none ${minimal_step_percentage} input number to exist visible input ${tender_form_general_minimal_step_percentage_input_locator} ${minimal_step_percentage}
  501 +# ${currency} = get from dictionary by keys ${data} value currency
  502 +# run keyword if condition is not none ${currency} select from visible list by value ${tender_form_lots_value_currency_input_locator} ${currency}
  503 +# ${valueAddedTaxIncluded} = get from dictionary by keys ${data} value valueAddedTaxIncluded
  504 +# run keyword if condition is not none ${valueAddedTaxIncluded} run keyword if ${valueAddedTaxIncluded} Click Element ${tender_form_lots_value_added_tax_input_locator}
  505 +
  506 +fill tender form funders
  507 + [Arguments] ${funder_attributes_array}
  508 + [Documentation] заповнення донорів тендеру
  509 +
  510 + :FOR ${funder_attributes} IN @{funder_attributes_array}
  511 + \ ${name} = get from dictionary by keys ${funder_attributes} name
  512 + \ run keyword if condition is not none ${name} select from visible list by label ${tender_form_general_tender_funder_name_locator} ${name}
  513 +
  514 +fill tender required documents
  515 + [Documentation] додає документ до усієї закупівлі для успішної валідації форми
  516 +
  517 + ${file_path} ${file_name} ${file_content} = create_fake_doc
  518 + click visible element ${tender_form_general_panel_add_document_btn_locator}
  519 + choose file ${add_file_to_form_locator} ${file_path}
  520 + wait until page does not contain element ${popup_dynamic_form_loading_element_locator}
  521 + submit current visible popup
  522 +
  523 +fill tender from award reporting
  524 + [Arguments] ${budget} ${award_attributes_array}
  525 + [Documentation] заповнення переможця reporting тендеру
  526 +
  527 + capture page screenshot
  528 + run keyword and ignore error click visible element ${tender_form_general_panel_update_award_negotiation_btn_locator}
  529 + capture page screenshot
  530 +# Run Keyword If "${TEST_NAME}" == "Можливість створити переговорну процедуру" open popup by btn locator ${tender_form_general_panel_add_award_negotiation_btn_locator}
  531 + run keyword and ignore error Run Keyword If "${TEST_NAME}" == "Можливість створити переговорну процедуру" open popup by btn locator ${tender_form_general_panel_add_award_negotiation_btn_locator}
  532 + ... ELSE IF "${TEST_NAME}" == "Можливість створити звіт про укладений договір" open popup by btn locator ${tender_form_general_panel_update_award_reporting_btn_locator}
  533 + capture page screenshot
  534 + Run Keyword If "${TEST_NAME}" == "Можливість зареєструвати і підтвердити постачальника до звіту про укладений договір" open popup by btn locator ${tender_form_general_panel_update_award_reporting_btn_locator}
  535 + capture page screenshot
  536 +# Run Keyword If "${TEST_NAME}" == "Можливість зареєструвати і підтвердити постачальника до переговорної процедури" open popup by btn locator ${tender_form_general_panel_update_award_negotiation_btn_locator}
  537 + capture page screenshot
  538 + fill award reporting form in opened popup ${budget} ${award_attributes_array}
  539 + submit current visible popup
  540 +
  541 +fill award reporting form in opened popup
  542 + [Arguments] ${budget} ${data}
  543 + [Documentation] заповнює відкриту форму в активній вкладці згідно вказаних даних
  544 +
  545 + ${org_name} = get from dictionary by keys ${data} identifier legalName
  546 + run keyword if condition is not none ${org_name} input text to exist visible input ${tender_form_award_organization_name_locator} ${org_name}
  547 + ${organization_identifier_code} = get from dictionary by keys ${data} identifier id
  548 + run keyword if condition is not none ${organization_identifier_code} input text to exist visible input ${tender_form_award_organization_identifier_code_locator} ${organization_identifier_code}
  549 + ${award_organization_scale} = get from dictionary by keys ${data} scale
  550 + run keyword if condition is not none ${award_organization_scale} select from visible list by value ${tender_form_award_organization_scale_locator} ${award_organization_scale}
  551 + ${region} = get from dictionary by keys ${data} address region
  552 + run keyword if condition is not none ${region} select from visible list by label ${tender_form_award_organization_region_id_locator} ${region}
  553 + ${postal_code} = get from dictionary by keys ${data} address postalCode
  554 + run keyword if condition is not none ${postal_code} input text to exist visible input ${tender_form_award_organization_postal_code_locator} ${postal_code}
  555 + ${locality} = get from dictionary by keys ${data} address locality
  556 + run keyword if condition is not none ${locality} input text to exist visible input ${tender_form_award_organization_locality_locator} ${locality}
  557 + ${street_address} = get from dictionary by keys ${data} address streetAddress
  558 + run keyword if condition is not none ${street_address} input text to exist visible input ${tender_form_award_organization_street_address_locator} ${street_address}
  559 + ${contact_point_name} = get from dictionary by keys ${data} contactPoint name
  560 + run keyword if condition is not none ${contact_point_name} input text to exist visible input ${tender_form_award_organization_contact_point_name_locator} ${contact_point_name}
  561 + ${contact_point_email} = get from dictionary by keys ${data} contactPoint email
  562 + run keyword if condition is not none ${contact_point_email} input text to exist visible input ${tender_form_award_organization_contact_point_email_locator} ${contact_point_email}
  563 + ${contact_point_phone} = get from dictionary by keys ${data} contactPoint telephone
  564 + run keyword if condition is not none ${contact_point_phone} input text to exist visible input ${tender_form_award_organization_contact_point_phone_locator} ${contact_point_phone}
  565 +# ${duration_days} = get from dictionary by keys ${data} contactPoint days
  566 +# run keyword if condition is not none ${duration_days} input text to exist visible input ${milestone_form_popup_duration_days_input_locator} ${duration_days}
  567 + input number to exist visible input ${tender_form_award_budget_locator} ${budget}
  568 +
  569 +open tender search form
  570 + [Documentation] відкриває сторінку з пошуком тендерів
  571 +
  572 + open page and wait element by locator ${broker_baseurl}/tenders ${tender_search_form_locator}
  573 +
  574 +save tender form and wait synchronization
  575 + [Documentation] натискає кнопку "Зберегти" і чекає синхронізації тендеру
  576 +
  577 + submit form and check result ${tender_form_submit_btn_locator} ${tender_form_submit_success_msg} ${tender_created_checker_element_locator} ${true}
  578 + wait until page does not contain element with reloading ${tender_sync_element_locator}
  579 +
  580 +add document in tender
  581 + [Arguments] ${filepath}
  582 + [Documentation] Завантажити документ, який знаходиться по шляху filepath.
  583 +
  584 + click visible element ${tender_form_general_panel_edit_add_document_btn_locator}
  585 + choose file ${add_file_to_form_locator} ${filepath}
  586 + wait until page does not contain element ${popup_dynamic_form_loading_element_locator}
  587 + submit current visible popup
  588 +
  589 +add document in lot
  590 + [Arguments] ${filepath} ${lot_id}
  591 + [Documentation] Завантажити в лот (з ідентіфікатором ${lot_id}) документ, який знаходиться по шляху filepath.
  592 +
  593 + ${open_form_add_doc_lot_btn_locator} = replace string ${tender_form_lot_panel_add_document_btn_locator_tpl} %lot_id% ${lot_id}
  594 + click visible element and wait until page contains element ${open_form_add_doc_lot_btn_locator} jquery=.modal.modal-form.js-form-popup.fancybox-content
  595 + choose file ${add_file_to_form_locator} ${filepath}
  596 + wait until page does not contain element ${popup_dynamic_form_loading_element_locator}
  597 + submit current visible popup
  598 +
  599 +confirm-stage2
  600 + [Documentation] Перевести тендер tender_uaid в статус active.stage2.waiting.
  601 +
  602 + Wait Until Keyword Succeeds 300 s 20 s Wait For stage2button
  603 + click visible element ${tender_stage2_open_btn_locator}
  604 + Wait Until Page Contains ${tender_stage2_submit_success_msg} 60
  605 +# click visible element ${tender_stage2_submit_success_btn_locator}
  606 +# submit form and check result ${tender_stage2_submit_success_btn_locator} ${tender_stage2_submit_alert_success_msg} ${tender_created_checker_element_locator}
  607 + execute javascript ${tender_stage2_submit_js_success_btn_locator}
  608 + Wait Until Page Contains ${tender_stage2_submit_alert_success_msg} 60
  609 + wait until alert is visible ${tender_stage2_submit_alert_success_msg}
  610 + run keyword and ignore error close current visible alert
  611 +
  612 +
  613 +activate stage 2
  614 + [Documentation] Перевести тендер tender_uaid в статус active.tendering.
  615 +
  616 + open popup by btn locator ${tender_form_general_panel_edit_btn_locator}
  617 + ${tender_end_date} = Get Current Date increment=00:35:00
  618 + input datetime to visible input ${tender_tender_period_end_date_input_locator} ${tender_end_date}
  619 + capture page screenshot
  620 + click visible element ${tender_form_general_panel_draft_mode_input_locator}
  621 + capture page screenshot
  622 + submit current visible popup
  623 + capture page screenshot
  624 + ${file_path} ${file_name} ${file_content} = create_fake_doc
  625 + click visible element ${tender_form_general_panel_document_stage2_input_locator}
  626 + choose file ${add_file_to_form_locator} ${file_path}
  627 + wait until element is visible ${stage2_form_add_document_type_input_locator}
  628 + click visible element ${stage2_form_add_document_description_btn_locator}
  629 + capture page screenshot
  630 + wait until element is visible ${stage2_form_add_document_description_input_locator}
  631 + input text to exist visible input ${stage2_form_add_document_description_input_locator} test2
  632 + click visible element ${stage2_form_add_document_close_description_btn_locator}
  633 + capture page screenshot
  634 + submit current visible popup
  635 + capture page screenshot
  636 +
  637 +fix awards data in global Users variable
  638 + [Arguments] ${username}
  639 + [Documentation] Фікс для помилки "Resolving variable '${award.value.amount}' failed: AttributeError: value"
  640 +
  641 + :FOR ${user} IN @{USERS}
  642 + \ continue for loop if '${user}' == '${username}'
  643 + \ ${is_user_has_data} = run keyword and return status dictionary should contain key ${USERS.users} ${user}
  644 + \ continue for loop if ${is_user_has_data} == ${False}
  645 + \ ${user_data} = set variable ${USERS.users['${user}']}
  646 + \ ${is_user_has_tender_data} = run keyword and return status dictionary should contain key ${user_data} tender_data
  647 + \ continue for loop if ${is_user_has_tender_data} == ${False}
  648 + \ ${status} ${award_data} = run keyword and ignore error get_from_object ${USERS.users['${user}'].tender_data.data} awards
  649 + \ continue for loop if '${status}' != 'PASS'
  650 + \ set to object ${USERS.users['${username}'].tender_data.data} awards ${award_data}
  651 + \ exit for loop
  652 +
  653 +fill tender contact person
  654 + [Arguments] ${data}
  655 + [Documentation] заповнює відкриту форму згідно вказаних даних
  656 + run keyword and ignore error open popup by btn locator ${tender_form_cp_edit_btn_locator}
  657 + ${organization_name_en} = get from dictionary by keys ${data} procuringEntity name_en
  658 + run keyword if condition is not none ${organization_name_en} input text to visible input ${tender_form_organization_name_en_input_locator} ${organization_name_en}
  659 + ${contact_point_name_en} = get from dictionary by keys ${data} procuringEntity contactPoint name_en
  660 + run keyword if condition is not none ${contact_point_name_en} input text to visible input ${tender_form_contact_point_name_en_input_locator} ${contact_point_name_en}
  661 + submit current visible popup
... ...
Please register or login to post a comment