Commit d8e954c6a5802f67e7ffb35f2f88d0f63970c7b6

Authored by Playtenders
1 parent 5c91c0fb

begin start

@@ -46,8 +46,11 @@ Resource playtender_contr @@ -46,8 +46,11 @@ Resource playtender_contr
46 [Documentation] Створити план з початковими даними plan_data. Повернути uaid створеного плану. 46 [Documentation] Створити план з початковими даними plan_data. Повернути uaid створеного плану.
47 47
48 # check buyers 48 # check buyers
  49 + ${plan_data} = procuring_entity_name ${plan_data}
  50 + log many ${plan_data}
49 ${buyers_count} = get length ${plan_data['data']['buyers']} 51 ${buyers_count} = get length ${plan_data['data']['buyers']}
50 run keyword if ${buyers_count} != 1 fail Buyer must be one 52 run keyword if ${buyers_count} != 1 fail Buyer must be one
  53 + log many ${plan_data['data']}
51 54
52 open new plan form 55 open new plan form
53 fill plan form ${plan_data['data']} 56 fill plan form ${plan_data['data']}
@@ -66,6 +69,7 @@ Resource playtender_contr @@ -66,6 +69,7 @@ Resource playtender_contr
66 [Documentation] Знайти план за зазначеним plan_uaid. 69 [Documentation] Знайти план за зазначеним plan_uaid.
67 70
68 open plan search form 71 open plan search form
  72 + Execute Javascript $('#plan-filter-form .dynamic-search-query input').click()
69 input to search form and wait results ${plan_search_form_query_input_locator} ${plan_uaid} ${plan_search_form_result_locator_tpl} 73 input to search form and wait results ${plan_search_form_query_input_locator} ${plan_uaid} ${plan_search_form_result_locator_tpl}
70 74
71 Внести зміни в план 75 Внести зміни в план
@@ -109,11 +113,14 @@ Resource playtender_contr @@ -109,11 +113,14 @@ Resource playtender_contr
109 ######################################################################################################################## 113 ########################################################################################################################
110 114
111 Створити тендер 115 Створити тендер
112 - [Arguments] ${user} ${tender_data} 116 + [Arguments] ${user} ${tender_data} ${tender_aid}
113 [Documentation] Створити тендер з початковими даними tender_data. Повернути 117 [Documentation] Створити тендер з початковими даними tender_data. Повернути
114 ... uaid створеного тендера. 118 ... uaid створеного тендера.
115 119
  120 + ${tender_data} = procuring_entity_name ${tender_data}
  121 + log many ${tender_data}
116 ${tender_prepared_data} = prepare tender data ${tender_data['data']} 122 ${tender_prepared_data} = prepare tender data ${tender_data['data']}
  123 + log many ${tender_prepared_data}
117 ##### BOF - TMP for negotiation milestone 1 lot##### 124 ##### BOF - TMP for negotiation milestone 1 lot#####
118 Set Global Variable ${td_railway_crutch} ${tender_data} 125 Set Global Variable ${td_railway_crutch} ${tender_data}
119 ##### EOF - TMP ##### 126 ##### EOF - TMP #####
@@ -320,10 +320,18 @@ submit form and check result @@ -320,10 +320,18 @@ submit form and check result
320 [Documentation] сабмітить форму і чекає повідомлення (якщо задано) + елемент (якщо задано) 320 [Documentation] сабмітить форму і чекає повідомлення (якщо задано) + елемент (якщо задано)
321 321
322 click visible element ${submit_btn_locator} 322 click visible element ${submit_btn_locator}
  323 + run keyword and ignore error run keyword if condition is not none ${wait_msg} wait until element is visible ${tender_cpv_form_submit_success_msg} 5
  324 +# run keyword and ignore error Wait Until Page Contains ${tender_cpv_form_submit_success_msg} 60
  325 + Capture Page Screenshot
  326 + run keyword and ignore error execute javascript ${tender_cpv_js_submit_btn_locator}
  327 + Capture Page Screenshot
323 run keyword if condition is not none ${wait_msg} Wait Until Page Contains ${wait_msg} 60 328 run keyword if condition is not none ${wait_msg} Wait Until Page Contains ${wait_msg} 60
324 run keyword if condition is not none ${wait_msg} wait until alert is visible ${wait_msg} 329 run keyword if condition is not none ${wait_msg} wait until alert is visible ${wait_msg}
325 run keyword and ignore error run keyword if condition is not none ${wait_msg} close current visible alert 330 run keyword and ignore error run keyword if condition is not none ${wait_msg} close current visible alert
  331 +
326 #cat проба 332 #cat проба
  333 + run keyword and ignore error Load Sign
  334 + run keyword and ignore error close current visible alert
327 run keyword if condition is not none ${wait_element_locator} wait until element is visible ${wait_element_locator} 60 335 run keyword if condition is not none ${wait_element_locator} wait until element is visible ${wait_element_locator} 60
328 run keyword if condition is not none ${wait_element_locator} wait until page contains element ${wait_element_locator} 60s Element was not shown after form submitting 336 run keyword if condition is not none ${wait_element_locator} wait until page contains element ${wait_element_locator} 60s Element was not shown after form submitting
329 337
@@ -518,6 +526,7 @@ __private__select_classification_code_in_opened_popup @@ -518,6 +526,7 @@ __private__select_classification_code_in_opened_popup
518 click visible element ${code_item_locator} 526 click visible element ${code_item_locator}
519 527
520 Load Sign 528 Load Sign
  529 + run keyword and ignore error click visible element ${plan_form_ecp_btn_locator}
521 ${loadingfakeKey} = Run keyword And Return Status Wait Until Page Contains Це фейкове накладання ЕЦП 30 530 ${loadingfakeKey} = Run keyword And Return Status Wait Until Page Contains Це фейкове накладання ЕЦП 30
522 run keyword and ignore error Run Keyword If ${loadingfakeKey} == True submit form and check result id=SignDataButton ${qualification_ecp_form_submit_success_msg} 531 run keyword and ignore error Run Keyword If ${loadingfakeKey} == True submit form and check result id=SignDataButton ${qualification_ecp_form_submit_success_msg}
523 ${loadingKey} = Run keyword And Return Status Wait Until Page Contains Серійний номер 30 532 ${loadingKey} = Run keyword And Return Status Wait Until Page Contains Серійний номер 30
@@ -530,9 +539,9 @@ Load Sign Data @@ -530,9 +539,9 @@ Load Sign Data
530 Wait Until Page Contains Element id=CAsServersSelect 60 539 Wait Until Page Contains Element id=CAsServersSelect 60
531 Select From List By Label id=CAsServersSelect Тестовий ЦСК АТ "ІІТ" 540 Select From List By Label id=CAsServersSelect Тестовий ЦСК АТ "ІІТ"
532 Wait Until Page Contains Element id=PKeyFileName 60 541 Wait Until Page Contains Element id=PKeyFileName 60
533 - Choose File id=PKeyFileInput ${CURDIR}/kai.dat 542 + Choose File id=PKeyFileInput ${CURDIR}/Key-6.dat
534 Wait Until Page Contains Element id=PKeyPassword 60 543 Wait Until Page Contains Element id=PKeyPassword 60
535 - Input Text id=PKeyPassword 123qwe 544 + Input Text id=PKeyPassword 12345677
536 Wait Until Page Contains Element id=PKeyReadButton 60 545 Wait Until Page Contains Element id=PKeyReadButton 60
537 Click Element id=PKeyReadButton 546 Click Element id=PKeyReadButton
538 547
@@ -32,8 +32,11 @@ open plan page by uaid @@ -32,8 +32,11 @@ open plan page by uaid
32 ${current_location} = get location 32 ${current_location} = get location
33 ${needed_location} = set variable ${broker_baseurl}/plan/${uaid} 33 ${needed_location} = set variable ${broker_baseurl}/plan/${uaid}
34 run keyword if '${current_location}' != '${needed_location}' or ${refresh} == ${True} open site page and wait content element ${needed_location} 34 run keyword if '${current_location}' != '${needed_location}' or ${refresh} == ${True} open site page and wait content element ${needed_location}
  35 + log many 1
35 ${is_plan_found} = get is element exist ${plan_view_checker_element_locator} 36 ${is_plan_found} = get is element exist ${plan_view_checker_element_locator}
  37 + log many 2
36 return from keyword if ${is_plan_found} == ${True} 38 return from keyword if ${is_plan_found} == ${True}
  39 + log many 3
37 ${is_plan_not_found} = get is 404 page 40 ${is_plan_not_found} = get is 404 page
38 ${is_needed_to_update_and_wait_sync} = set variable if ${is_test_role_owner} == ${False} and ${is_plan_not_found} ${True} ${False} 41 ${is_needed_to_update_and_wait_sync} = set variable if ${is_test_role_owner} == ${False} and ${is_plan_not_found} ${True} ${False}
39 run keyword if ${is_needed_to_update_and_wait_sync} update plan queue 42 run keyword if ${is_needed_to_update_and_wait_sync} update plan queue
@@ -56,9 +59,9 @@ fill plan form @@ -56,9 +59,9 @@ fill plan form
56 ${buyers} = get from dictionary by keys ${data} buyers 59 ${buyers} = get from dictionary by keys ${data} buyers
57 run keyword if condition is not none ${buyers} fill plan form buyers ${buyers} 60 run keyword if condition is not none ${buyers} fill plan form buyers ${buyers}
58 #Пока не передает Дятлов 61 #Пока не передает Дятлов
59 -# ${budget_breakdowns} = get from dictionary by keys ${data} BudgetBreakdowns  
60 -# run keyword if condition is not none ${budget_breakdowns} fill plan form budgetbreakdowns ${budget_breakdowns}  
61 - fill plan form budgetbreakdowns 62 + ${budget_breakdowns} = get from dictionary by keys ${data} budget breakdown
  63 + run keyword if condition is not none ${budget_breakdowns} fill plan form budgetbreakdowns ${budget_breakdowns}
  64 +# fill plan form budgetbreakdowns
62 65
63 fill plan general info 66 fill plan general info
64 [Arguments] ${data} 67 [Arguments] ${data}
@@ -90,6 +93,7 @@ fill plan general info @@ -90,6 +93,7 @@ fill plan general info
90 ${additional_classifications} = get from dictionary by keys ${data} additionalClassifications 93 ${additional_classifications} = get from dictionary by keys ${data} additionalClassifications
91 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} 94 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}
92 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} 95 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}
  96 + Execute Javascript $('[id$="planform-test_mode"]').click()
93 submit current visible popup 97 submit current visible popup
94 98
95 fill plan form items 99 fill plan form items
@@ -134,34 +138,34 @@ fill buyer form in opened popup @@ -134,34 +138,34 @@ fill buyer form in opened popup
134 run keyword if condition is not none ${identifier_id} input text to visible input ${buyer_form_popup_identifier_id_input_locator} ${identifier_id} 138 run keyword if condition is not none ${identifier_id} input text to visible input ${buyer_form_popup_identifier_id_input_locator} ${identifier_id}
135 139
136 fill plan form budgetbreakdowns 140 fill plan form budgetbreakdowns
137 -# [Arguments] ${budgetbreakdowns_attributes_array} 141 + [Arguments] ${budgetbreakdowns_attributes_array}
138 [Documentation] заповнення Джерел фінансування плану 142 [Documentation] заповнення Джерел фінансування плану
139 143
140 click visible element ${plan_form_update_budgetbreakdowns_btn_locator} 144 click visible element ${plan_form_update_budgetbreakdowns_btn_locator}
141 wait until popup is visible 145 wait until popup is visible
142 -# :FOR ${budgetbreakdowns_attributes} IN @{budgetbreakdowns_attributes_array}  
143 -# \ click visible element ${plan_form_add_budgetbreakdowns_btn_locator}  
144 -# \ wait until page does not contain element ${popup_dynamic_form_loading_element_locator}  
145 -# \ fill budgetbreakdowns form in opened popup ${budgetbreakdowns_attributes}  
146 -# \ submit current visible popup  
147 - click visible element ${plan_form_add_budgetbreakdowns_btn_locator}  
148 - wait until page does not contain element ${popup_dynamic_form_loading_element_locator}  
149 - fill budgetbreakdowns form in opened popup 146 + :FOR ${budgetbreakdowns_attributes} IN @{budgetbreakdowns_attributes_array}
  147 + \ click visible element ${plan_form_add_budgetbreakdowns_btn_locator}
  148 + \ wait until page does not contain element ${popup_dynamic_form_loading_element_locator}
  149 + \ fill budgetbreakdowns form in opened popup ${budgetbreakdowns_attributes}
  150 +### \ submit current visible popup
  151 +## click visible element ${plan_form_add_budgetbreakdowns_btn_locator}
  152 +## wait until page does not contain element ${popup_dynamic_form_loading_element_locator}
  153 +## fill budgetbreakdowns form in opened popup
150 # fill budgetbreakdowns form in opened popup ${budgetbreakdowns_attributes} 154 # fill budgetbreakdowns form in opened popup ${budgetbreakdowns_attributes}
151 submit current visible popup 155 submit current visible popup
152 156
153 fill budgetbreakdowns form in opened popup 157 fill budgetbreakdowns form in opened popup
154 -# [Arguments] ${data} 158 + [Arguments] ${data}
155 [Documentation] заповнює відкриту форму згідно вказаних даних про Джерела фінансування 159 [Documentation] заповнює відкриту форму згідно вказаних даних про Джерела фінансування
156 160
157 -# ${title} = get from dictionary by keys ${data} title  
158 -# run keyword if condition is not none ${title} select from visible list by label ${plan_budgetbreakdowns_form_popup_title_input_locator} ${title}  
159 -# ${value_amount} = get from dictionary by keys ${data} value amount  
160 -# run keyword if condition is not none ${value_amount} input number to visible input ${plan_budgetbreakdowns_value_amount_input_locator} ${amount}  
161 - input number to visible input ${plan_budgetbreakdowns_value_amount_input_locator} 56333.77  
162 -# ${description} = get from dictionary by keys ${data} description  
163 -# run keyword if condition is not none ${description} input text to visible input ${plan_budgetbreakdowns_description_input_locator} ${description}  
164 - input text to visible input ${plan_budgetbreakdowns_description_input_locator} description 161 + ${title} = get from dictionary by keys ${data} title
  162 + run keyword if condition is not none ${title} select from visible list by label ${plan_budgetbreakdowns_form_popup_title_input_locator} ${title}
  163 + ${value_amount} = get from dictionary by keys ${data} value amount
  164 + run keyword if condition is not none ${value_amount} input number to visible input ${plan_budgetbreakdowns_value_amount_input_locator} ${value_amount}
  165 +## input number to visible input ${plan_budgetbreakdowns_value_amount_input_locator} 56333.77
  166 + ${description} = get from dictionary by keys ${data} description
  167 + run keyword if condition is not none ${description} input text to visible input ${plan_budgetbreakdowns_description_input_locator} ${description}
  168 +## input text to visible input ${plan_budgetbreakdowns_description_input_locator} description
165 169
166 save plan form and wait synchronization 170 save plan form and wait synchronization
167 [Documentation] натискає кнопку "Зберегти" і чекає синхронізації плану 171 [Documentation] натискає кнопку "Зберегти" і чекає синхронізації плану
1 *** Variables *** 1 *** Variables ***
2 2
3 # plan form 3 # plan form
4 -${plan_form_submit_success_msg} = дочекайтесь опублікування на сайті уповноваженого органу 4 +${plan_form_submit_success_msg} = Рядок плану завантажений, наступний крок - накладання ЕЦП/КЕП і підтвердження
  5 +#${plan_form_submit_success_msg} = дочекайтесь опублікування на сайті уповноваженого органу
5 ${plan_form_locator} = id=plan-form 6 ${plan_form_locator} = id=plan-form
6 ${plan_form_general_panel_edit_btn_locator} = jquery=#General .panel-heading .js-form-popup-update 7 ${plan_form_general_panel_edit_btn_locator} = jquery=#General .panel-heading .js-form-popup-update
7 ${plan_form_procurement_method_type_input_locator} = id=planform-procurement_method_type 8 ${plan_form_procurement_method_type_input_locator} = id=planform-procurement_method_type
@@ -11,7 +12,7 @@ ${plan_form_project_name_input_locator} = id=planform- @@ -11,7 +12,7 @@ ${plan_form_project_name_input_locator} = id=planform-
11 ${plan_form_title_input_locator} = id=planform-title 12 ${plan_form_title_input_locator} = id=planform-title
12 ${plan_form_year_input_locator} = id=planform-year 13 ${plan_form_year_input_locator} = id=planform-year
13 ${plan_form_tender_start_date_input_locator} = id=planform-tender_start_date 14 ${plan_form_tender_start_date_input_locator} = id=planform-tender_start_date
14 -${plan_form_value_amount_input_locator} = id=planform-value_amount 15 +${plan_form_value_amount_input_locator} = id=planform-value_amount-disp
15 ${plan_form_value_currency_input_locator} = id=planform-value_currency 16 ${plan_form_value_currency_input_locator} = id=planform-value_currency
16 ${plan_form_classification_edit_btn_locator} = jquery=.field-planform-classification_id .js-classification-input-wrapper [data-toggle="classification"] 17 ${plan_form_classification_edit_btn_locator} = jquery=.field-planform-classification_id .js-classification-input-wrapper [data-toggle="classification"]
17 ${plan_form_additional_classification_edit_btn_locator} = jquery=.field-planform-additional_classification_ids .js-additional-classification-input-wrapper [data-toggle="additional-classification"] 18 ${plan_form_additional_classification_edit_btn_locator} = jquery=.field-planform-additional_classification_ids .js-additional-classification-input-wrapper [data-toggle="additional-classification"]
@@ -25,7 +26,8 @@ ${plan_created_checker_element_locator} = id=plan-part @@ -25,7 +26,8 @@ ${plan_created_checker_element_locator} = id=plan-part
25 ${plan_form_update_budgetbreakdowns_btn_locator} = jquery=#BudgetBreakdowns .js-form-popup-update 26 ${plan_form_update_budgetbreakdowns_btn_locator} = jquery=#BudgetBreakdowns .js-form-popup-update
26 ${plan_form_add_budgetbreakdowns_btn_locator} = jquery=#budgetbreakdowns-form-popup a[href*="#add-budgetBreakdowns"] 27 ${plan_form_add_budgetbreakdowns_btn_locator} = jquery=#budgetbreakdowns-form-popup a[href*="#add-budgetBreakdowns"]
27 ${plan_budgetbreakdowns_form_popup_title_input_locator} = jquery=.fancybox-is-open:last .tab-content:first > .tab-pane.active:first [id$="-title"] 28 ${plan_budgetbreakdowns_form_popup_title_input_locator} = jquery=.fancybox-is-open:last .tab-content:first > .tab-pane.active:first [id$="-title"]
28 -${plan_budgetbreakdowns_value_amount_input_locator} = jquery=.fancybox-is-open:last .tab-content:first > .tab-pane.active:first [id$="-value_amount"] 29 +${plan_budgetbreakdowns_value_amount_input_locator} = jquery=.fancybox-is-open:last .tab-content:first > .tab-pane.active:first [id$="-value_amount-disp"]
  30 +#${plan_budgetbreakdowns_value_amount_input_locator} = jquery=.fancybox-is-open:last .tab-content:first > .tab-pane.active:first [id$="-value_amount"]
29 ${plan_budgetbreakdowns_description_input_locator} = jquery=.fancybox-is-open:last .tab-content:first > .tab-pane.active:first [id$="-description"] 31 ${plan_budgetbreakdowns_description_input_locator} = jquery=.fancybox-is-open:last .tab-content:first > .tab-pane.active:first [id$="-description"]
30 32
31 # plan view 33 # plan view
@@ -70,5 +72,8 @@ ${plan_status_value_locator} = jquery=#asid @@ -70,5 +72,8 @@ ${plan_status_value_locator} = jquery=#asid
70 72
71 # plan index + search 73 # plan index + search
72 ${plan_search_form_locator} = id=plan-filter-form 74 ${plan_search_form_locator} = id=plan-filter-form
73 -${plan_search_form_query_input_locator} = jquery=#plan-filter-form .dynamic-search-query input  
74 -${plan_search_form_result_locator_tpl} = jquery=#plan-list .lots__item .lot__characteristic li:contains(%query%)  
  75 +##${plan_search_form_query_input_locator} = jquery=#plan-filter-form .dynamic-search-query input
  76 +${plan_search_form_query_input_locator} = jquery=#plan-filter-form [data-ds-filter="query"] input.select2-search__field
  77 +${plan_search_form_result_locator_tpl} = jquery=#plan-list .lots__item .lot__characteristic li:contains(%query%)
  78 +
  79 +${plan_form_ecp_btn_locator} = id=submitBtn
@@ -128,8 +128,10 @@ confirm award qualification @@ -128,8 +128,10 @@ confirm award qualification
128 capture page screenshot 128 capture page screenshot
129 run keyword and ignore error wait until page contains element ${qualification_form_eligible_input_locator} 129 run keyword and ignore error wait until page contains element ${qualification_form_eligible_input_locator}
130 capture page screenshot 130 capture page screenshot
131 - run keyword and ignore error click visible element ${qualification_form_eligible_input_locator}  
132 - run keyword and ignore error click visible element ${qualification_form_qualified_input_locator} 131 +# run keyword and ignore error click visible element ${qualification_form_eligible_input_locator}
  132 +# run keyword and ignore error click visible element ${qualification_form_qualified_input_locator}
  133 + run keyword and ignore error Execute Javascript $('#qualificationform-qualified').click()
  134 + run keyword and ignore error Execute Javascript $('#qualificationform-eligible').click()
133 choose file ${add_file_to_qualification_form_locator} ${file_path} 135 choose file ${add_file_to_qualification_form_locator} ${file_path}
134 wait until page does not contain element ${popup_dynamic_form_loading_element_locator} 60 136 wait until page does not contain element ${popup_dynamic_form_loading_element_locator} 60
135 wait until element is visible ${qualification_form_add_document_type_input_locator} 60 137 wait until element is visible ${qualification_form_add_document_type_input_locator} 60
@@ -3,8 +3,10 @@ @@ -3,8 +3,10 @@
3 #question 3 #question
4 ${question_form_open_btn_locator} = jquery=#aside-part-pjax a[href*="/tender/questions"] 4 ${question_form_open_btn_locator} = jquery=#aside-part-pjax a[href*="/tender/questions"]
5 ${question_open_form_answer_btn_locator_tpl} = jquery=#tender-question-list .js-item div[data-title*="%title%"] 5 ${question_open_form_answer_btn_locator_tpl} = jquery=#tender-question-list .js-item div[data-title*="%title%"]
6 -${question_open_form_answer_js_btn_locator_tpl} = $('#tender-question-list .js-item div[data-title*="%title%"] .btn.btn-default').click()  
7 -${question_form_open_form_answer_btn_locator_tpl} = jquery=#tender-question-list .js-item div[data-title*="%title%"] .btn.btn-default 6 +#${question_open_form_answer_js_btn_locator_tpl} = $('#tender-question-list .js-item div[data-title*="%title%"] .btn.btn-default').click()
  7 +#${question_form_open_form_answer_btn_locator_tpl} = jquery=#tender-question-list .js-item div[data-title*="%title%"] .btn.btn-default
  8 +${question_open_form_answer_js_btn_locator_tpl} = $('#tender-question-list .js-item div[data-title*="%title%"] .btn.btn-success.btn-custom').click()
  9 +${question_form_open_form_answer_btn_locator_tpl} = jquery=#tender-question-list .js-item div[data-title*="%title%"] .btn.btn-success.btn-custom
8 ${question_form_open_form_answer_input_locator} = jquery=.fancybox-is-open .fancybox-content #tender-question-answer-form #questionanswerform-answer 10 ${question_form_open_form_answer_input_locator} = jquery=.fancybox-is-open .fancybox-content #tender-question-answer-form #questionanswerform-answer
9 ${question_form_answer_submit_btn_locator} = jquery=.fancybox-is-open .fancybox-content button.js-submit-btn 11 ${question_form_answer_submit_btn_locator} = jquery=.fancybox-is-open .fancybox-content button.js-submit-btn
10 ${question_form_submit_answer_success_msg} = Відповідь на питання успішно надана. 12 ${question_form_submit_answer_success_msg} = Відповідь на питання успішно надана.
@@ -170,6 +170,29 @@ def isodate_format(isodate, format): @@ -170,6 +170,29 @@ def isodate_format(isodate, format):
170 return iso_dt.strftime(format) 170 return iso_dt.strftime(format)
171 171
172 172
  173 +def procuring_entity_name(tender_data):
  174 + tender_data.data.procuringEntity['name'] = u"ТОВ \"ПлейТендер\""
  175 + tender_data.data.procuringEntity['name_en'] = u"TOV \"playtender\""
  176 + tender_data.data.procuringEntity.identifier['id'] = u"1234567890-playtender"
  177 + tender_data.data.procuringEntity.identifier['legalName'] = u"ТОВ \"ПлейТендер\""
  178 + tender_data.data.procuringEntity.identifier['legalName_en'] = u"TOV \"playtender\""
  179 + if 'address' in tender_data.data.procuringEntity:
  180 + tender_data.data.procuringEntity.address['region'] = u"Житомирська область"
  181 + tender_data.data.procuringEntity.address['postalCode'] = u"123123"
  182 + tender_data.data.procuringEntity.address['locality'] = u"населений пункт"
  183 + tender_data.data.procuringEntity.address['streetAddress'] = u"адреса"
  184 + if 'contactPoint' in tender_data.data.procuringEntity:
  185 + tender_data.data.procuringEntity.contactPoint['name'] = u"Замовник Тест"
  186 + tender_data.data.procuringEntity.contactPoint['name_en'] = u"Test"
  187 + tender_data.data.procuringEntity.contactPoint['email'] = u"chuzhin@mail.ua"
  188 + tender_data.data.procuringEntity.contactPoint['telephone'] = u"+3801111111111"
  189 + tender_data.data.procuringEntity.contactPoint['url'] = u"http://playtender.com.ua"
  190 + if 'buyers' in tender_data.data:
  191 + tender_data.data.buyers[0]['name'] = u"ТОВ \"ПлейТендер\""
  192 + tender_data.data.buyers[0].identifier['id'] = u"1234567890-playtender"
  193 + tender_data.data.buyers[0].identifier['legalName'] = u"ТОВ \"ПлейТендер\""
  194 + return tender_data
  195 +
173 # prepare data 196 # prepare data
174 def prepare_procuring_entity_data(data): 197 def prepare_procuring_entity_data(data):
175 try: 198 try:
@@ -357,3 +380,15 @@ def parse_complaintPeriod_date(date_string): @@ -357,3 +380,15 @@ def parse_complaintPeriod_date(date_string):
357 date_str.microsecond) 380 date_str.microsecond)
358 date = TZ.localize(date).isoformat() 381 date = TZ.localize(date).isoformat()
359 return date 382 return date
  383 +
  384 +def parse_deliveryPeriod_date1(date):
  385 + date = dateutil.parser.parse(date)
  386 + date = date.strftime("%d.%m.%Y")
  387 + return date
  388 +
  389 +def parse_deliveryPeriod_date(date_string):
  390 + date_str = datetime.strptime(date_string, "%Y-%m-%dT%H:%M:%S+03:00")
  391 + date = datetime(date_str.year, date_str.month, date_str.day)
  392 + date = date.strftime("%d.%m.%Y")
  393 + return date
  394 +
@@ -60,6 +60,7 @@ fill tender form @@ -60,6 +60,7 @@ fill tender form
60 ${supplier_data} = op_robot_tests.tests_files.service_keywords . Test Supplier Data 60 ${supplier_data} = op_robot_tests.tests_files.service_keywords . Test Supplier Data
61 run keyword if '${mode}' in 'negotiation reporting' fill tender from award reporting ${supplier_data.data.value.amount} ${supplier_data.data.suppliers[0]} 61 run keyword if '${mode}' in 'negotiation reporting' fill tender from award reporting ${supplier_data.data.value.amount} ${supplier_data.data.suppliers[0]}
62 Run Keyword And Ignore Error fill tender required documents 62 Run Keyword And Ignore Error fill tender required documents
  63 +# Run Keyword And Ignore Error Execute Javascript $('a.btn.btn-default.btn-update.js-form-popup-add').click()
63 64
64 fill tender form 2 stage 65 fill tender form 2 stage
65 [Arguments] ${data} 66 [Arguments] ${data}
@@ -120,14 +121,18 @@ fill tender general info @@ -120,14 +121,18 @@ fill tender general info
120 ${currency} = get from dictionary by keys ${data} value currency 121 ${currency} = get from dictionary by keys ${data} value currency
121 run keyword if condition is not none ${currency} select from visible list by value ${tender_form_general_value_currency_input_locator} ${currency} 122 run keyword if condition is not none ${currency} select from visible list by value ${tender_form_general_value_currency_input_locator} ${currency}
122 ${value_added_tax_included} = get from dictionary by keys ${data} value valueAddedTaxIncluded 123 ${value_added_tax_included} = get from dictionary by keys ${data} value valueAddedTaxIncluded
123 - 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} 124 + 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()
  125 +##run keyword and ignore error
  126 +
  127 +##click element ${tender_form_general_value_added_tax_input_locator}
  128 + Execute Javascript $('[id$="form-test_mode"]').click()
124 ${min_step_amount} = get from dictionary by keys ${data} minimalStep amount 129 ${min_step_amount} = get from dictionary by keys ${data} minimalStep amount
125 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} 130 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}
126 ${main_procurement_category} = get from dictionary by keys ${data} mainProcurementCategory 131 ${main_procurement_category} = get from dictionary by keys ${data} mainProcurementCategory
127 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} 132 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}
128 ${tender_enquiry_period_start_date} = get from dictionary by keys ${data} enquiryPeriod startDate 133 ${tender_enquiry_period_start_date} = get from dictionary by keys ${data} enquiryPeriod startDate
129 # 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} 134 # 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}
130 - 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} 135 + 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}
131 ${tender_enquiry_period_end_date} = get from dictionary by keys ${data} enquiryPeriod endDate 136 ${tender_enquiry_period_end_date} = get from dictionary by keys ${data} enquiryPeriod endDate
132 # 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} 137 # 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}
133 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} 138 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}
@@ -181,6 +186,7 @@ fill tender general info @@ -181,6 +186,7 @@ fill tender general info
181 Run Keyword If '${SUITE_NAME}' == 'Tests Files.Complaints' click visible element ${tender_form_auction_skip_mode_input_locator} 186 Run Keyword If '${SUITE_NAME}' == 'Tests Files.Complaints' click visible element ${tender_form_auction_skip_mode_input_locator}
182 submit current visible popup 187 submit current visible popup
183 188
  189 +
184 fill tender general info 2 stage 190 fill tender general info 2 stage
185 [Arguments] ${data} 191 [Arguments] ${data}
186 [Documentation] обирає потрібний тип закупівлі, чекає оновлення форми, вказує мультилотовість, заповнює 192 [Documentation] обирає потрібний тип закупівлі, чекає оновлення форми, вказує мультилотовість, заповнює
@@ -306,9 +312,12 @@ fill tender item form in opened popup @@ -306,9 +312,12 @@ fill tender item form in opened popup
306 ${street_address} = get from dictionary by keys ${data} deliveryAddress streetAddress 312 ${street_address} = get from dictionary by keys ${data} deliveryAddress streetAddress
307 run keyword if condition is not none ${street_address} input text to visible input ${item_form_popup_delivery_street_address_input_locator} ${street_address} 313 run keyword if condition is not none ${street_address} input text to visible input ${item_form_popup_delivery_street_address_input_locator} ${street_address}
308 ${delivery_start_date} = get from dictionary by keys ${data} deliveryDate startDate 314 ${delivery_start_date} = get from dictionary by keys ${data} deliveryDate startDate
  315 + ${delivery_start_date} = parse_deliveryPeriod_date ${delivery_start_date}
309 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} 316 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}
310 ${delivery_end_date} = get from dictionary by keys ${data} deliveryDate endDate 317 ${delivery_end_date} = get from dictionary by keys ${data} deliveryDate endDate
311 - 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} 318 + ${delivery_end_date} = parse_deliveryPeriod_date ${delivery_end_date}
  319 + 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}
  320 +## 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}
312 321
313 fill tender form milestones 322 fill tender form milestones
314 [Arguments] ${milestone_attributes_array} 323 [Arguments] ${milestone_attributes_array}
@@ -631,4 +640,4 @@ fix awards data in global Users variable @@ -631,4 +640,4 @@ fix awards data in global Users variable
631 \ ${status} ${award_data} = run keyword and ignore error get_from_object ${USERS.users['${user}'].tender_data.data} awards 640 \ ${status} ${award_data} = run keyword and ignore error get_from_object ${USERS.users['${user}'].tender_data.data} awards
632 \ continue for loop if '${status}' != 'PASS' 641 \ continue for loop if '${status}' != 'PASS'
633 \ set to object ${USERS.users['${username}'].tender_data.data} awards ${award_data} 642 \ set to object ${USERS.users['${username}'].tender_data.data} awards ${award_data}
634 - \ exit for loop  
  643 + \ exit for loop
@@ -33,7 +33,8 @@ ${classification_popup_serach_item_locator_tpl} = jquery=.fanc @@ -33,7 +33,8 @@ ${classification_popup_serach_item_locator_tpl} = jquery=.fanc
33 33
34 # authorization 34 # authorization
35 ${login_popup_open_locator} = jquery=.page__header a[data-action="login"] 35 ${login_popup_open_locator} = jquery=.page__header a[data-action="login"]
36 -${login_popup_login_input_locator} = id=loginform-email 36 +${login_popup_login_input_locator} = id=loginform-identity
  37 +#${login_popup_login_input_locator} = id=loginform-email
37 ${login_popup_password_input_locator} = id=loginform-password 38 ${login_popup_password_input_locator} = id=loginform-password
38 ${login_popup_submit_btn_locator} = jquery=#login-form .js-submit-btn 39 ${login_popup_submit_btn_locator} = jquery=#login-form .js-submit-btn
39 ${user_logged_checker_element_locator} = id=notifications-button # елемент для перевірки чи авторизований користувач 40 ${user_logged_checker_element_locator} = id=notifications-button # елемент для перевірки чи авторизований користувач
@@ -59,7 +60,8 @@ ${buyer_form_popup_identifier_id_input_locator} = jquery=.fanc @@ -59,7 +60,8 @@ ${buyer_form_popup_identifier_id_input_locator} = jquery=.fanc
59 60
60 # tender form 61 # tender form
61 ${tender_load_form_after_mode_locator} = jquery=#tender-form-pjax.loading-wrapper 62 ${tender_load_form_after_mode_locator} = jquery=#tender-form-pjax.loading-wrapper
62 -${tender_form_submit_success_msg} = дочекайтесь опублікування на сайті уповноваженого органу. 63 +#${tender_form_submit_success_msg} = дочекайтеся опублікування на сайті уповноваженого органу
  64 +${tender_form_submit_success_msg} = опублікування на сайті уповноваженого органу
63 ${tender_form_locator} = id=tender-form 65 ${tender_form_locator} = id=tender-form
64 ${tender_form_procurement_method_type_input_locator} = jquery=.form-inline [id$="form-procurement_method_type"] 66 ${tender_form_procurement_method_type_input_locator} = jquery=.form-inline [id$="form-procurement_method_type"]
65 ${tender_multilot_locator} = jquery=[id$="form-is_multilot"] 67 ${tender_multilot_locator} = jquery=[id$="form-is_multilot"]
@@ -71,16 +73,20 @@ ${tender_form_general_tender_description_locator} = jquery=[id$= @@ -71,16 +73,20 @@ ${tender_form_general_tender_description_locator} = jquery=[id$=
71 ${tender_form_general_tender_description_en_locator} = jquery=[id$="form-description_en"] 73 ${tender_form_general_tender_description_en_locator} = jquery=[id$="form-description_en"]
72 ${tender_form_general_tender_funder_locator} = jquery=[id$="form-is_donor"] 74 ${tender_form_general_tender_funder_locator} = jquery=[id$="form-is_donor"]
73 ${tender_form_general_tender_funder_name_locator} = jquery=[id$="-funder_organization_id"] 75 ${tender_form_general_tender_funder_name_locator} = jquery=[id$="-funder_organization_id"]
74 -${tender_form_general_value_amount_input_locator} = jquery=[id$="form-value_amount"] 76 +${tender_form_general_value_amount_input_locator} = jquery=[id$="form-value_amount-disp"]
75 ${tender_form_general_value_currency_input_locator} = jquery=[id$="form-value_currency"] 77 ${tender_form_general_value_currency_input_locator} = jquery=[id$="form-value_currency"]
76 ${tender_form_general_value_added_tax_input_locator} = jquery=[id$="form-value_added_tax_included"] 78 ${tender_form_general_value_added_tax_input_locator} = jquery=[id$="form-value_added_tax_included"]
77 -${tender_form_general_minimalStep_amount_input_locator} = jquery=[id$="form-min_step_amount"] 79 +#${tender_form_general_minimalStep_amount_input_locator} = jquery=[id$="form-min_step_amount"]
  80 +${tender_form_general_minimalStep_amount_input_locator} = jquery=[id$="form-min_step_amount-disp"]
78 ${tender_form_general_main_procurement_category_input_locator} = jquery=[id$="form-main_procurement_category"] 81 ${tender_form_general_main_procurement_category_input_locator} = jquery=[id$="form-main_procurement_category"]
79 ${tender_enquiry_period_start_date_input_locator} = jquery=[id$="form-enquiry_period_start_date"] 82 ${tender_enquiry_period_start_date_input_locator} = jquery=[id$="form-enquiry_period_start_date"]
80 ${tender_enquiry_period_end_date_input_locator} = jquery=[id$="form-enquiry_period_end_date"] 83 ${tender_enquiry_period_end_date_input_locator} = jquery=[id$="form-enquiry_period_end_date"]
81 ${tender_tender_period_start_date_input_locator} = jquery=[id$="form-tender_period_start_date"] 84 ${tender_tender_period_start_date_input_locator} = jquery=[id$="form-tender_period_start_date"]
82 ${tender_tender_period_end_date_input_locator} = jquery=[id$="form-tender_period_end_date"] 85 ${tender_tender_period_end_date_input_locator} = jquery=[id$="form-tender_period_end_date"]
83 ${tender_tender_quick_mode_locator} = jquery=[id$="form-quick_mode"] 86 ${tender_tender_quick_mode_locator} = jquery=[id$="form-quick_mode"]
  87 +${tender_cpv_form_submit_success_msg} = Вид предмету закупівлі не відповідає вказаному коду CPV
  88 +${tender_cpv_submit_btn_locator} = jquery=.animated-content .js-btn-confirm
  89 +${tender_cpv_js_submit_btn_locator} = $('.animated-content .js-btn-confirm').click()
84 90
85 #esco 91 #esco
86 ${tender_form_general_funding_kind_input_locator} = id=tenderescoform-funding_kind 92 ${tender_form_general_funding_kind_input_locator} = id=tenderescoform-funding_kind
@@ -148,10 +154,12 @@ ${lot_form_popup_title_input_locator} = jquery=.fanc @@ -148,10 +154,12 @@ ${lot_form_popup_title_input_locator} = jquery=.fanc
148 ${lot_form_popup_description_input_locator} = jquery=.fancybox-is-open [id$="-description"] 154 ${lot_form_popup_description_input_locator} = jquery=.fancybox-is-open [id$="-description"]
149 ${lot_form_popup_title_en_input_locator} = jquery=.fancybox-is-open [id$="-title_en"] 155 ${lot_form_popup_title_en_input_locator} = jquery=.fancybox-is-open [id$="-title_en"]
150 ${lot_form_popup_description_en_input_locator} = jquery=.fancybox-is-open [id$="-description_en"] 156 ${lot_form_popup_description_en_input_locator} = jquery=.fancybox-is-open [id$="-description_en"]
151 -${lot_form_popup_value_amount_input_locator} = jquery=.fancybox-is-open [id$="-value_amount"] 157 +${lot_form_popup_value_amount_input_locator} = jquery=.fancybox-is-open [id$="-value_amount-disp"]
  158 +##${lot_form_popup_value_amount_input_locator} = jquery=.fancybox-is-open [id$="-value_amount"]
152 ${lot_form_popup_value_currency_input_locator} = jquery=.fancybox-is-open [id$="-value_currency"] 159 ${lot_form_popup_value_currency_input_locator} = jquery=.fancybox-is-open [id$="-value_currency"]
153 ${lot_form_popup_value_added_tax_input_locator} = jquery=.fancybox-is-open [id$="-value_added_tax_included"] 160 ${lot_form_popup_value_added_tax_input_locator} = jquery=.fancybox-is-open [id$="-value_added_tax_included"]
154 -${lot_form_popup_minimalstep_amount_input_locator} = jquery=.fancybox-is-open [id$="-min_step_amount"] 161 +${lot_form_popup_minimalstep_amount_input_locator} = jquery=.fancybox-is-open [id$="-min_step_amount-disp"]
  162 +##${lot_form_popup_minimalstep_amount_input_locator} = jquery=.fancybox-is-open [id$="-min_step_amount"]
155 ${lot_form_popup_min_step_percentage_amount_input_locator} = jquery=.fancybox-is-open [id$="-min_step_percentage"] 163 ${lot_form_popup_min_step_percentage_amount_input_locator} = jquery=.fancybox-is-open [id$="-min_step_percentage"]
156 164
157 ${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"] 165 ${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"]
@@ -228,6 +236,7 @@ ${tender_cause_value_locator} = jquery=#tend @@ -228,6 +236,7 @@ ${tender_cause_value_locator} = jquery=#tend
228 ${tender_causeDescription_value_locator} = jquery=#tender-general-info .cause-description .value 236 ${tender_causeDescription_value_locator} = jquery=#tender-general-info .cause-description .value
229 237
230 ${tender_items_0_description_value_locator} = jquery=#tender-part-pjax .tabs__pane--visible .pseudo-table .item-item-wrapper .textvalue.hidden 238 ${tender_items_0_description_value_locator} = jquery=#tender-part-pjax .tabs__pane--visible .pseudo-table .item-item-wrapper .textvalue.hidden
  239 +#${tender_items_0_description_value_locator} = jquery=execute javascript return $('#tender-part-pjax .tabs__pane--visible .pseudo-table .item-item-wrapper').attr("data-title")
231 240
232 #lots 241 #lots
233 ${tender_lot_switch_tabs_lot_btn_locator_tpl} jquery=#lots .tabs__list .tabs__item span.tabs__tab-big-text:contains("%lot_id%") 242 ${tender_lot_switch_tabs_lot_btn_locator_tpl} jquery=#lots .tabs__list .tabs__item span.tabs__tab-big-text:contains("%lot_id%")
Please register or login to post a comment