Commit c1bcf9b33ca4f2def5b7aea410f8ac606652dc98
Merge remote-tracking branch 'rsav/netcast' into candy
Conflicts: op_robot_tests/tests_files/brokers/netcast.robot op_robot_tests/tests_files/data/users.yaml
Showing
5 changed files
with
190 additions
and
280 deletions
| @@ -3,54 +3,68 @@ Library Selenium2Screenshots | @@ -3,54 +3,68 @@ Library Selenium2Screenshots | ||
| 3 | Library String | 3 | Library String |
| 4 | Library DateTime | 4 | Library DateTime |
| 5 | 5 | ||
| 6 | + | ||
| 6 | *** Variables *** | 7 | *** Variables *** |
| 7 | -${locator.tenderId} jquery=h3 | ||
| 8 | ${file_path} local_path_to_file("TestDocument.docx") | 8 | ${file_path} local_path_to_file("TestDocument.docx") |
| 9 | +${locator.tenderId} xpath=//td[./text()='TenderID']/following-sibling::td[1] | ||
| 10 | +${locator.title} xpath=//td[./text()='Загальна назва закупівлі']/following-sibling::td[1] | ||
| 11 | +${locator.description} xpath=//td[./text()='Предмет закупівлі']/following-sibling::td[1] | ||
| 12 | +${locator.value.amount} xpath=//td[./text()='Максимальний бюджет']/following-sibling::td[1] | ||
| 13 | +${locator.minimalStep.amount} xpath=//td[./text()='Крок зменшення ціни']/following-sibling::td[1] | ||
| 14 | +${locator.enquiryPeriod.endDate} xpath=//td[./text()='Завершення періоду обговорення']/following-sibling::td[1] | ||
| 15 | +${locator.tenderPeriod.endDate} xpath=//td[./text()='Завершення періоду прийому пропозицій']/following-sibling::td[1] | ||
| 16 | +${locator.items[0].deliveryAddress.countryName} xpath=//td[@class='nameField'][./text()='Адреса поставки']/following-sibling::td[1] | ||
| 17 | +${locator.items[0].deliveryDate} xpath=//td[./text()='Кінцева дата поставки']/following-sibling::td[1] | ||
| 18 | +${locator.items[0].classification.scheme} xpath=//td[@class = 'nameField'][./text()='Клас CPV'] | ||
| 19 | +${locator.items[0].additionalClassifications[0].scheme} xpath=//td[@class = 'nameField'][./text()='Клас ДКПП'] | ||
| 9 | 20 | ||
| 10 | *** Keywords *** | 21 | *** Keywords *** |
| 11 | Підготувати клієнт для користувача | 22 | Підготувати клієнт для користувача |
| 12 | [Arguments] @{ARGUMENTS} | 23 | [Arguments] @{ARGUMENTS} |
| 13 | - [Documentation] Відкрити брaвзер, створити обєкт api wrapper, тощо | 24 | + [Documentation] Відкрити брaузер, створити обєкт api wrapper, тощо |
| 14 | ... ${ARGUMENTS[0]} == username | 25 | ... ${ARGUMENTS[0]} == username |
| 15 | Open Browser ${BROKERS['${USERS.users['${ARGUMENTS[0]}'].broker}'].url} ${USERS.users['${ARGUMENTS[0]}'].browser} alias=${ARGUMENTS[0]} | 26 | Open Browser ${BROKERS['${USERS.users['${ARGUMENTS[0]}'].broker}'].url} ${USERS.users['${ARGUMENTS[0]}'].browser} alias=${ARGUMENTS[0]} |
| 16 | Set Window Size @{USERS.users['${ARGUMENTS[0]}'].size} | 27 | Set Window Size @{USERS.users['${ARGUMENTS[0]}'].size} |
| 17 | Set Window Position @{USERS.users['${ARGUMENTS[0]}'].position} | 28 | Set Window Position @{USERS.users['${ARGUMENTS[0]}'].position} |
| 18 | - Run Keyword And Ignore Error Pre Login ${ARGUMENTS[0]} | 29 | + Run Keyword And Ignore Error Pre Login ${ARGUMENTS[0]} |
| 30 | + Wait Until Page Contains Element jquery=a[href="/cabinet"] | ||
| 31 | + Click Element jquery=a[href="/cabinet"] | ||
| 32 | + Run Keyword If '${username}' != 'Netcast_Viewer' Login | ||
| 19 | 33 | ||
| 20 | - Wait Until Page Contains Element jquery=a[href="/cabinet"] | ||
| 21 | - Click Element jquery=a[href="/cabinet"] | ||
| 22 | - Wait Until Page Contains Element name=email 10 | 34 | +Login |
| 35 | + [Arguments] @{ARGUMENTS} | ||
| 36 | + Wait Until Page Contains Element name=email 10 | ||
| 23 | Input text name=email mail | 37 | Input text name=email mail |
| 24 | Sleep 1 | 38 | Sleep 1 |
| 25 | - Input text name=email ${USERS.users['${username}'].login} | 39 | + Input text name=email ${USERS.users['${username}'].login} |
| 26 | Sleep 2 | 40 | Sleep 2 |
| 27 | - Input text name=psw ${USERS.users['${username}'].password} | ||
| 28 | - Wait Until Page Contains Element xpath=//button[contains(@class, 'btn')][./text()='Вхід в кабінет'] 100 | ||
| 29 | - Click Element xpath=//button[contains(@class, 'btn')][./text()='Вхід в кабінет'] | 41 | + Input text name=psw ${USERS.users['${username}'].password} |
| 42 | + Wait Until Page Contains Element xpath=//button[contains(@class, 'btn')][./text()='Вхід в кабінет'] 20 | ||
| 43 | + Click Element xpath=//button[contains(@class, 'btn')][./text()='Вхід в кабінет'] | ||
| 30 | 44 | ||
| 31 | Pre Login | 45 | Pre Login |
| 32 | [Arguments] @{ARGUMENTS} | 46 | [Arguments] @{ARGUMENTS} |
| 33 | [Documentation] | 47 | [Documentation] |
| 34 | ... ${ARGUMENTS[0]} == username | 48 | ... ${ARGUMENTS[0]} == username |
| 35 | Wait Until Page Contains Element name=siteLogin 10 | 49 | Wait Until Page Contains Element name=siteLogin 10 |
| 36 | - Input text name=siteLogin ${BROKERS['${USERS.users['${username}'].broker}'].login} | ||
| 37 | - Input text name=sitePass ${BROKERS['${USERS.users['${username}'].broker}'].password} | ||
| 38 | - Click Button xpath=.//*[@id='table1']/tbody/tr/td/form/p[3]/input | 50 | + Input text name=siteLogin ${BROKERS['${USERS.users['${username}'].broker}'].login} |
| 51 | + Input text name=sitePass ${BROKERS['${USERS.users['${username}'].broker}'].password} | ||
| 52 | + Click Button xpath=.//*[@id='table1']/tbody/tr/td/form/p[3]/input | ||
| 39 | 53 | ||
| 40 | Створити тендер | 54 | Створити тендер |
| 41 | [Arguments] @{ARGUMENTS} | 55 | [Arguments] @{ARGUMENTS} |
| 42 | [Documentation] | 56 | [Documentation] |
| 43 | ... ${ARGUMENTS[0]} == username | 57 | ... ${ARGUMENTS[0]} == username |
| 44 | ... ${ARGUMENTS[1]} == tender_data | 58 | ... ${ARGUMENTS[1]} == tender_data |
| 45 | - ${prepared_tender_data}= Add_data_for_GUI_FrontEnds ${ARGUMENTS[1]} | ||
| 46 | - ${items}= Get From Dictionary ${prepared_tender_data.data} items | ||
| 47 | - ${title}= Get From Dictionary ${prepared_tender_data.data} title | ||
| 48 | - ${description}= Get From Dictionary ${prepared_tender_data.data} description | ||
| 49 | - ${budget}= Get From Dictionary ${prepared_tender_data.data.value} amount | ||
| 50 | - ${step_rate}= Get From Dictionary ${prepared_tender_data.data.minimalStep} amount | ||
| 51 | - ${items_description}= Get From Dictionary ${prepared_tender_data.data} description | 59 | + #{tender_data}= Add_time_for_GUI_FrontEnds ${ARGUMENTS[1]} |
| 60 | + ${items}= Get From Dictionary ${ARGUMENTS[1].data} items | ||
| 61 | + ${title}= Get From Dictionary ${ARGUMENTS[1].data} title | ||
| 62 | + ${description}= Get From Dictionary ${ARGUMENTS[1].data} description | ||
| 63 | + ${budget}= Get From Dictionary ${ARGUMENTS[1].data.value} amount | ||
| 64 | + ${step_rate}= Get From Dictionary ${ARGUMENTS[1].data.minimalStep} amount | ||
| 65 | + ${items_description}= Get From Dictionary ${ARGUMENTS[1].data} description | ||
| 52 | ${quantity}= Get From Dictionary ${items[0]} quantity | 66 | ${quantity}= Get From Dictionary ${items[0]} quantity |
| 53 | - ${countryName}= Get From Dictionary ${prepared_tender_data.data.procuringEntity.address} countryName | 67 | + ${countryName}= Get From Dictionary ${ARGUMENTS[1].data.procuringEntity.address} countryName |
| 54 | ${delivery_end_date}= Get From Dictionary ${items[0].deliveryDate} endDate | 68 | ${delivery_end_date}= Get From Dictionary ${items[0].deliveryDate} endDate |
| 55 | ${delivery_end_date}= convert_date_to_slash_format ${delivery_end_date} | 69 | ${delivery_end_date}= convert_date_to_slash_format ${delivery_end_date} |
| 56 | ${cpv}= Convert To String Картонки | 70 | ${cpv}= Convert To String Картонки |
| @@ -59,9 +73,9 @@ Pre Login | @@ -59,9 +73,9 @@ Pre Login | ||
| 59 | ${dkpp_desc}= Get From Dictionary ${items[0].additionalClassifications[0]} description | 73 | ${dkpp_desc}= Get From Dictionary ${items[0].additionalClassifications[0]} description |
| 60 | ${dkpp_id}= Get From Dictionary ${items[0].additionalClassifications[0]} id | 74 | ${dkpp_id}= Get From Dictionary ${items[0].additionalClassifications[0]} id |
| 61 | ${dkpp_id1}= Replace String ${dkpp_id} - _ | 75 | ${dkpp_id1}= Replace String ${dkpp_id} - _ |
| 62 | - ${enquiry_end_date}= Get From Dictionary ${prepared_tender_data.data.enquiryPeriod} endDate | 76 | + ${enquiry_end_date}= Get From Dictionary ${ARGUMENTS[1].data.enquiryPeriod} endDate |
| 63 | ${enquiry_end_date}= convert_date_to_slash_format ${enquiry_end_date} | 77 | ${enquiry_end_date}= convert_date_to_slash_format ${enquiry_end_date} |
| 64 | - ${end_date}= Get From Dictionary ${prepared_tender_data.data.tenderPeriod} endDate | 78 | + ${end_date}= Get From Dictionary ${ARGUMENTS[1].data.tenderPeriod} endDate |
| 65 | ${end_date}= convert_date_to_slash_format ${end_date} | 79 | ${end_date}= convert_date_to_slash_format ${end_date} |
| 66 | 80 | ||
| 67 | Selenium2Library.Switch Browser ${ARGUMENTS[0]} | 81 | Selenium2Library.Switch Browser ${ARGUMENTS[0]} |
| @@ -110,12 +124,6 @@ Set Multi Ids | @@ -110,12 +124,6 @@ Set Multi Ids | ||
| 110 | ${id}= Get Text xpath=//*/section[6]/table/tbody/tr[1]/td[2] | 124 | ${id}= Get Text xpath=//*/section[6]/table/tbody/tr[1]/td[2] |
| 111 | ${Ids}= Create List ${tender_UAid} ${id} | 125 | ${Ids}= Create List ${tender_UAid} ${id} |
| 112 | 126 | ||
| 113 | -Get Rough Copy Tender Id | ||
| 114 | - [Arguments] @{ARGUMENTS} | ||
| 115 | - ${tender_id}= Get Text xpath=//*/section[6]/table/tbody/tr[2]/td[2] | ||
| 116 | - ${tender_UA_ID}= Convert To String ${tender_UAid} | ||
| 117 | - [return] ${tender_UA_ID} | ||
| 118 | - | ||
| 119 | Додати предмет | 127 | Додати предмет |
| 120 | [Arguments] @{ARGUMENTS} | 128 | [Arguments] @{ARGUMENTS} |
| 121 | [Documentation] | 129 | [Documentation] |
| @@ -197,13 +205,14 @@ Get Rough Copy Tender Id | @@ -197,13 +205,14 @@ Get Rough Copy Tender Id | ||
| 197 | Go to ${BROKERS['${USERS.users['${username}'].broker}'].url} | 205 | Go to ${BROKERS['${USERS.users['${username}'].broker}'].url} |
| 198 | Wait Until Page Contains Держзакупівлі.онлайн 10 | 206 | Wait Until Page Contains Держзакупівлі.онлайн 10 |
| 199 | Click Element xpath=//a[text()='Закупівлі'] | 207 | Click Element xpath=//a[text()='Закупівлі'] |
| 200 | - sleep 5 | 208 | + sleep 1 |
| 201 | Click Element xpath=//select[@name='filter[object]']/option[@value='tenderID'] | 209 | Click Element xpath=//select[@name='filter[object]']/option[@value='tenderID'] |
| 202 | Input text xpath=//input[@name='filter[search]'] ${ARGUMENTS[1]} | 210 | Input text xpath=//input[@name='filter[search]'] ${ARGUMENTS[1]} |
| 203 | Click Element xpath=//button[@class='btn'][./text()='Пошук'] | 211 | Click Element xpath=//button[@class='btn'][./text()='Пошук'] |
| 204 | - Wait Until Page Contains ${ARGUMENTS[1]} 10 | ||
| 205 | - sleep 1 | 212 | + Wait Until Page Contains ${ARGUMENTS[1]} 10 |
| 206 | Capture Page Screenshot | 213 | Capture Page Screenshot |
| 214 | + sleep 1 | ||
| 215 | + Click Element xpath=//a[@class='reverse tenderLink'] | ||
| 207 | 216 | ||
| 208 | Задати питання | 217 | Задати питання |
| 209 | [Arguments] @{ARGUMENTS} | 218 | [Arguments] @{ARGUMENTS} |
| @@ -214,10 +223,10 @@ Get Rough Copy Tender Id | @@ -214,10 +223,10 @@ Get Rough Copy Tender Id | ||
| 214 | ${title}= Get From Dictionary ${ARGUMENTS[2].data} title | 223 | ${title}= Get From Dictionary ${ARGUMENTS[2].data} title |
| 215 | ${description}= Get From Dictionary ${ARGUMENTS[2].data} description | 224 | ${description}= Get From Dictionary ${ARGUMENTS[2].data} description |
| 216 | 225 | ||
| 226 | + | ||
| 217 | Selenium2Library.Switch Browser ${ARGUMENTS[0]} | 227 | Selenium2Library.Switch Browser ${ARGUMENTS[0]} |
| 218 | netcast.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} | 228 | netcast.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} |
| 219 | 229 | ||
| 220 | - Click Element xpath=//a[@class='reverse tenderLink'] | ||
| 221 | Wait Until Page Contains Element xpath=//a[@class='reverse openCPart'][span[text()='Обговорення']] 20 | 230 | Wait Until Page Contains Element xpath=//a[@class='reverse openCPart'][span[text()='Обговорення']] 20 |
| 222 | Click Element xpath=//a[@class='reverse openCPart'][span[text()='Обговорення']] | 231 | Click Element xpath=//a[@class='reverse openCPart'][span[text()='Обговорення']] |
| 223 | Wait Until Page Contains Element name=title 20 | 232 | Wait Until Page Contains Element name=title 20 |
| @@ -239,7 +248,6 @@ Get Rough Copy Tender Id | @@ -239,7 +248,6 @@ Get Rough Copy Tender Id | ||
| 239 | Selenium2Library.Switch Browser ${ARGUMENTS[0]} | 248 | Selenium2Library.Switch Browser ${ARGUMENTS[0]} |
| 240 | netcast.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} | 249 | netcast.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} |
| 241 | 250 | ||
| 242 | - Click Element xpath=//a[@class='reverse tenderLink'] | ||
| 243 | Wait Until Page Contains Element xpath=//a[@class='reverse openCPart'][span[text()='Обговорення']] 20 | 251 | Wait Until Page Contains Element xpath=//a[@class='reverse openCPart'][span[text()='Обговорення']] 20 |
| 244 | Click Element xpath=//a[@class='reverse openCPart'][span[text()='Обговорення']] | 252 | Click Element xpath=//a[@class='reverse openCPart'][span[text()='Обговорення']] |
| 245 | Wait Until Page Contains Element xpath=//textarea[@name='answer'] 20 | 253 | Wait Until Page Contains Element xpath=//textarea[@name='answer'] 20 |
| @@ -253,14 +261,13 @@ Get Rough Copy Tender Id | @@ -253,14 +261,13 @@ Get Rough Copy Tender Id | ||
| 253 | [Documentation] | 261 | [Documentation] |
| 254 | ... ${ARGUMENTS[0]} = username | 262 | ... ${ARGUMENTS[0]} = username |
| 255 | ... ${ARGUMENTS[1]} = tenderUaId | 263 | ... ${ARGUMENTS[1]} = tenderUaId |
| 256 | - | 264 | + ... ${ARGUMENTS[2]} = complaintsId |
| 257 | ${complaint}= Get From Dictionary ${ARGUMENTS[2].data} title | 265 | ${complaint}= Get From Dictionary ${ARGUMENTS[2].data} title |
| 258 | ${description}= Get From Dictionary ${ARGUMENTS[2].data} description | 266 | ${description}= Get From Dictionary ${ARGUMENTS[2].data} description |
| 259 | 267 | ||
| 260 | Selenium2Library.Switch Browser ${ARGUMENTS[0]} | 268 | Selenium2Library.Switch Browser ${ARGUMENTS[0]} |
| 261 | netcast.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} | 269 | netcast.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} |
| 262 | - Click Element xpath=//a[@class='reverse tenderLink'] | ||
| 263 | - sleep 5 | 270 | + sleep 1 |
| 264 | Click Element xpath=//a[@class='reverse openCPart'][span[text()='Скарги']] | 271 | Click Element xpath=//a[@class='reverse openCPart'][span[text()='Скарги']] |
| 265 | Wait Until Page Contains Element name=title 20 | 272 | Wait Until Page Contains Element name=title 20 |
| 266 | Input text name=title ${complaint} | 273 | Input text name=title ${complaint} |
| @@ -269,11 +276,31 @@ Get Rough Copy Tender Id | @@ -269,11 +276,31 @@ Get Rough Copy Tender Id | ||
| 269 | Wait Until Page Contains ${complaint} 30 | 276 | Wait Until Page Contains ${complaint} 30 |
| 270 | Capture Page Screenshot | 277 | Capture Page Screenshot |
| 271 | 278 | ||
| 272 | -Внести зміни в тендер | 279 | +Порівняти скаргу |
| 273 | [Arguments] @{ARGUMENTS} | 280 | [Arguments] @{ARGUMENTS} |
| 274 | [Documentation] | 281 | [Documentation] |
| 275 | ... ${ARGUMENTS[0]} = username | 282 | ... ${ARGUMENTS[0]} = username |
| 276 | ... ${ARGUMENTS[1]} = tenderUaId | 283 | ... ${ARGUMENTS[1]} = tenderUaId |
| 284 | + ... ${ARGUMENTS[2]} = complaintsData | ||
| 285 | + ${complaint}= Get From Dictionary ${ARGUMENTS[2].data} title | ||
| 286 | + ${description}= Get From Dictionary ${ARGUMENTS[2].data} description | ||
| 287 | + | ||
| 288 | + Selenium2Library.Switch Browser ${ARGUMENTS[0]} | ||
| 289 | + netcast.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} | ||
| 290 | + sleep 1 | ||
| 291 | + Click Element xpath=//a[@class='reverse openCPart'][span[text()='Скарги']] | ||
| 292 | + Wait Until Page Contains ${complaint} 30 | ||
| 293 | + Capture Page Screenshot | ||
| 294 | + | ||
| 295 | + | ||
| 296 | + | ||
| 297 | +Внести зміни в тендер | ||
| 298 | + # Тест написано для уже існуючого тендеру, що знаходиться у чернетках користувача | ||
| 299 | + [Arguments] @{ARGUMENTS} | ||
| 300 | + [Documentation] | ||
| 301 | + ... ${ARGUMENTS[0]} = username | ||
| 302 | + ... ${ARGUMENTS[1]} = description | ||
| 303 | + | ||
| 277 | Selenium2Library.Switch Browser ${ARGUMENTS[0]} | 304 | Selenium2Library.Switch Browser ${ARGUMENTS[0]} |
| 278 | Click Element xpath=//a[@class='reverse'][./text()='Мої закупівлі'] | 305 | Click Element xpath=//a[@class='reverse'][./text()='Мої закупівлі'] |
| 279 | Wait Until Page Contains Element xpath=//a[@class='reverse'][./text()='Чернетки'] 30 | 306 | Wait Until Page Contains Element xpath=//a[@class='reverse'][./text()='Чернетки'] 30 |
| @@ -283,8 +310,65 @@ Get Rough Copy Tender Id | @@ -283,8 +310,65 @@ Get Rough Copy Tender Id | ||
| 283 | sleep 1 | 310 | sleep 1 |
| 284 | Click Element xpath=//a[@class='button save'][./text()='Редагувати'] | 311 | Click Element xpath=//a[@class='button save'][./text()='Редагувати'] |
| 285 | sleep 1 | 312 | sleep 1 |
| 286 | - Input text name=tender_title "Some new title" | 313 | + Input text name=tender_title ${ARGUMENTS[1]} |
| 287 | sleep 1 | 314 | sleep 1 |
| 288 | Click Element xpath=//button[@class='saveDraft'] | 315 | Click Element xpath=//button[@class='saveDraft'] |
| 289 | - Wait Until Page Contains "Some new title" 30 | ||
| 290 | - Capture Page Screenshot | ||
| 316 | + Wait Until Page Contains ${ARGUMENTS[1]} 30 | ||
| 317 | + Capture Page Screenshot | ||
| 318 | + | ||
| 319 | +отримати інформацію із тендера | ||
| 320 | + [Arguments] @{ARGUMENTS} | ||
| 321 | + [Documentation] | ||
| 322 | + ... ${ARGUMENTS[0]} == username | ||
| 323 | + ... ${ARGUMENTS[1]} == fieldname | ||
| 324 | + Switch browser ${ARGUMENTS[0]} | ||
| 325 | + ${return_value}= run keyword отримати інформацію про ${ARGUMENTS[1]} | ||
| 326 | + [return] ${return_value} | ||
| 327 | + | ||
| 328 | +отримати тест із поля і показати на сторінці | ||
| 329 | + [Arguments] ${fieldname} | ||
| 330 | + sleep 5 | ||
| 331 | + ${return_value}= Get Text ${locator.${fieldname}} | ||
| 332 | + [return] ${return_value} | ||
| 333 | + | ||
| 334 | +отримати інформацію про title | ||
| 335 | + ${title}= отримати тест із поля і показати на сторінці title | ||
| 336 | + [return] ${title} | ||
| 337 | + | ||
| 338 | +отримати інформацію про description | ||
| 339 | + ${description}= отримати тест із поля і показати на сторінці description | ||
| 340 | + [return] ${description} | ||
| 341 | + | ||
| 342 | +отримати інформацію про tenderId | ||
| 343 | + ${tenderId}= отримати тест із поля і показати на сторінці tenderId | ||
| 344 | + [return] ${tenderId} | ||
| 345 | + | ||
| 346 | +отримати інформацію про value.amount | ||
| 347 | + ${valueAmount}= отримати тест із поля і показати на сторінці value.amount | ||
| 348 | + ${valueAmount}= Convert To Number ${valueAmount.split(' ')[0]} | ||
| 349 | + [return] ${valueAmount} | ||
| 350 | + | ||
| 351 | +отримати інформацію про minimalStep.amount | ||
| 352 | + ${minimalStepAmount}= отримати тест із поля і показати на сторінці minimalStep.amount | ||
| 353 | + ${minimalStepAmount}= Convert To Number ${minimalStepAmount.split(' ')[0]} | ||
| 354 | + [return] ${minimalStepAmount} | ||
| 355 | + | ||
| 356 | +отримати інформацію про enquiryPeriod.endDate | ||
| 357 | + ${enquiryPeriodEndDate}= отримати тест із поля і показати на сторінці enquiryPeriod.endDate | ||
| 358 | + [return] ${enquiryPeriodEndDate} | ||
| 359 | + | ||
| 360 | +отримати інформацію про tenderPeriod.endDate | ||
| 361 | + ${tenderPeriodEndDate}= отримати тест із поля і показати на сторінці tenderPeriod.endDate | ||
| 362 | + [return] ${tenderPeriodEndDate} | ||
| 363 | + | ||
| 364 | +отримати інформацію про items[0].deliveryAddress.countryName | ||
| 365 | + ${countryName}= отримати тест із поля і показати на сторінці items[0].deliveryAddress.countryName | ||
| 366 | + [return] ${countryName} | ||
| 367 | + | ||
| 368 | +отримати інформацію про items[0].classification.scheme | ||
| 369 | + ${classificationScheme}= отримати тест із поля і показати на сторінці items[0].classification.scheme | ||
| 370 | + [return] ${classificationScheme.split(' ')[1]} | ||
| 371 | + | ||
| 372 | +отримати інформацію про items[0].additionalClassifications[0].scheme | ||
| 373 | + ${additionalClassificationsScheme}= отримати тест із поля і показати на сторінці items[0].additionalClassifications[0].scheme | ||
| 374 | + [return] ${additionalClassificationsScheme.split(' ')[1]} |
| @@ -18,13 +18,21 @@ ${locator.tenderId} jquery=h3 | @@ -18,13 +18,21 @@ ${locator.tenderId} jquery=h3 | ||
| 18 | Open Browser ${BROKERS['${USERS.users['${username}'].broker}'].url} ${USERS.users['${username}'].browser} alias=${ARGUMENTS[0]} | 18 | Open Browser ${BROKERS['${USERS.users['${username}'].broker}'].url} ${USERS.users['${username}'].browser} alias=${ARGUMENTS[0]} |
| 19 | Set Window Size @{USERS.users['${ARGUMENTS[0]}'].size} | 19 | Set Window Size @{USERS.users['${ARGUMENTS[0]}'].size} |
| 20 | Set Window Position @{USERS.users['${ARGUMENTS[0]}'].position} | 20 | Set Window Position @{USERS.users['${ARGUMENTS[0]}'].position} |
| 21 | - Wait Until Page Contains Element id=indexpage_login 100 | 21 | + |
| 22 | + sleep 10 | ||
| 23 | + Run Keyword If '${username}' != 'Newtend_Viewer' Login | ||
| 24 | + | ||
| 25 | +Login | ||
| 26 | + Wait Until Page Contains Element id=indexpage_login 20 | ||
| 22 | Click Element id=indexpage_login | 27 | Click Element id=indexpage_login |
| 23 | - Wait Until Page Contains Element id=password 100 | 28 | + Wait Until Page Contains Element id=password 20 |
| 24 | Input text id=login-email ${USERS.users['${username}'].login} | 29 | Input text id=login-email ${USERS.users['${username}'].login} |
| 25 | Input text id=password ${USERS.users['${username}'].password} | 30 | Input text id=password ${USERS.users['${username}'].password} |
| 26 | Click Element id=submit-login-button | 31 | Click Element id=submit-login-button |
| 27 | - Wait Until Page Contains Element xpath=//div[@class="introjs-overlay"] 100 | 32 | + Wait Until Page Contains Element xpath =//a[@class="close-modal-dialog"] 20 |
| 33 | + | ||
| 34 | + | ||
| 35 | + Wait Until Page Contains Element xpath=//div[@class="introjs-overlay"] 20 | ||
| 28 | 36 | ||
| 29 | Створити тендер | 37 | Створити тендер |
| 30 | [Arguments] @{ARGUMENTS} | 38 | [Arguments] @{ARGUMENTS} |
| @@ -158,223 +166,25 @@ Set datetime | @@ -158,223 +166,25 @@ Set datetime | ||
| 158 | \ Click Element xpath=//a[@class="icon-black plus-black remove-field ng-scope"] | 166 | \ Click Element xpath=//a[@class="icon-black plus-black remove-field ng-scope"] |
| 159 | \ Додати придмет ${items[${INDEX}]} ${INDEX} | 167 | \ Додати придмет ${items[${INDEX}]} ${INDEX} |
| 160 | 168 | ||
| 161 | - | ||
| 162 | - | ||
| 163 | -#### Not reworked for Newtend #### | ||
| 164 | - | ||
| 165 | -Oтримати internal id по UAid | ||
| 166 | - [Arguments] @{ARGUMENTS} | ||
| 167 | - [Documentation] | ||
| 168 | - ... ${ARGUMENTS[0]} == username | ||
| 169 | - ... ${ARGUMENTS[1]} == tenderid | ||
| 170 | - etender.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} | ||
| 171 | - ${current_location}= Get Location | ||
| 172 | - ${tender_id}= Fetch From Right ${current_location} / | ||
| 173 | -### harcode Idis bacause issues on the E-tender side, to remove, 1 line: | ||
| 174 | - ${tender_id}= Convert To String 94ffe180019d459787aafe290cd300e2 | ||
| 175 | - log ${internal_id} | ||
| 176 | - [return] ${internal_id} | ||
| 177 | - | ||
| 178 | Пошук тендера по ідентифікатору | 169 | Пошук тендера по ідентифікатору |
| 179 | [Arguments] @{ARGUMENTS} | 170 | [Arguments] @{ARGUMENTS} |
| 180 | [Documentation] | 171 | [Documentation] |
| 181 | ... ${ARGUMENTS[0]} == username | 172 | ... ${ARGUMENTS[0]} == username |
| 182 | - ... ${ARGUMENTS[1]} == tenderId | ||
| 183 | - | ||
| 184 | - Switch browser ${ARGUMENTS[0]} | ||
| 185 | - Go to ${BROKERS['${USERS.users['${username}'].broker}'].url} | ||
| 186 | - Wait Until Page Contains Список закупівель 10 | ||
| 187 | - sleep 1 | ||
| 188 | - Input Text jquery=input[ng-change='search()'] ${ARGUMENTS[1]} | ||
| 189 | - Click Link jquery=a[ng-click='search()'] | ||
| 190 | - sleep 2 | ||
| 191 | - Click Link jquery=a[href^="#/tenderDetailes"] | ||
| 192 | - Wait Until Page Contains ${ARGUMENTS[1]} 10 | ||
| 193 | - sleep 1 | ||
| 194 | - Capture Page Screenshot | ||
| 195 | - | ||
| 196 | -обновити сторінку з тендером | ||
| 197 | - [Arguments] @{ARGUMENTS} | ||
| 198 | - [Documentation] | ||
| 199 | - ... ${ARGUMENTS[0]} == username | ||
| 200 | - ... ${ARGUMENTS[1]} == tenderId | ||
| 201 | - ... ${ARGUMENTS[2]} == id | ||
| 202 | - ${current_location}= Get Location | ||
| 203 | - Run keyword if '${BROKERS['${USERS.users['${username}'].broker}'].url}/#/tenderDetailes/${ARGUMENTS[2]}'=='${current_location}' Reload Page | ||
| 204 | - Run keyword unless '${BROKERS['${USERS.users['${username}'].broker}'].url}/#/tenderDetailes/${ARGUMENTS[2]}'=='${current_location}' Пошук тендера по ідентифікатору @{ARGUMENTS} | ||
| 205 | - Wait Until Page Contains ${ARGUMENTS[1]} 10 | ||
| 206 | - sleep 1 | ||
| 207 | - | ||
| 208 | -отримати інформацію із тендера | ||
| 209 | - [Arguments] @{ARGUMENTS} | ||
| 210 | - [Documentation] | ||
| 211 | - ... ${ARGUMENTS[0]} == username | ||
| 212 | - ... ${ARGUMENTS[1]} == fieldname | 173 | + ... ${ARGUMENTS[1]} == ${TENDER_UAID} |
| 174 | + log ${USERS.users['${ARGUMENTS[0]}'].homepage} | ||
| 175 | + log ${ARGUMENTS[0]} | ||
| 213 | Switch browser ${ARGUMENTS[0]} | 176 | Switch browser ${ARGUMENTS[0]} |
| 214 | - ${return_value}= run keyword отримати інформацію про ${ARGUMENTS[1]} | ||
| 215 | - [return] ${return_value} | ||
| 216 | - | ||
| 217 | -Відмітити на сторінці поле з тендера | ||
| 218 | - [Arguments] ${fieldname} ${locator} | ||
| 219 | - ${last_note_id}= Add pointy note ${locator} Found ${fieldname} width=200 position=bottom | ||
| 220 | - Align elements horizontally ${locator} ${last_note_id} | ||
| 221 | - sleep 1 | ||
| 222 | - Remove element ${last_note_id} | ||
| 223 | - | ||
| 224 | -Отримати тест із поля і показати на сторінці | ||
| 225 | - [Arguments] ${fieldname} | ||
| 226 | - sleep 3 | ||
| 227 | -# відмітити на сторінці поле з тендера ${fieldname} ${locator.${fieldname}} | ||
| 228 | - ${return_value}= Get Text ${locator.${fieldname}} | ||
| 229 | - [return] ${return_value} | ||
| 230 | - | ||
| 231 | -отримати інформацію про tenderId | ||
| 232 | - ${return_value}= Отримати тест із поля і показати на сторінці tenderId | ||
| 233 | - [return] ${return_value.split(' ')[1]} | ||
| 234 | - | ||
| 235 | -отримати інформацію про title | ||
| 236 | - ${return_value}= Отримати тест із поля і показати на сторінці title | ||
| 237 | - [return] ${return_value} | ||
| 238 | - | ||
| 239 | -отримати інформацію про description | ||
| 240 | - ${return_value}= Отримати тест із поля і показати на сторінці description | ||
| 241 | - [return] ${return_value} | ||
| 242 | - | ||
| 243 | -отримати інформацію про minimalStep.amount | ||
| 244 | - ${return_value}= Отримати тест із поля і показати на сторінці minimalStep.amount | ||
| 245 | - ${return_value}= Convert To Number ${return_value.split(' ')[0]} | ||
| 246 | - [return] ${return_value} | ||
| 247 | - | ||
| 248 | -отримати інформацію про procuringEntity.name | ||
| 249 | - ${return_value}= Отримати тест із поля і показати на сторінці procuringEntity.name | ||
| 250 | - [return] ${return_value} | ||
| 251 | - | ||
| 252 | - | ||
| 253 | -отримати інформацію про value.amount | ||
| 254 | - ${return_value}= Отримати тест із поля і показати на сторінці value.amount | ||
| 255 | - ${return_value}= Evaluate "".join("${return_value}".split(' ')[:-3]) | ||
| 256 | - ${return_value}= Convert To Number ${return_value} | ||
| 257 | - [return] ${return_value} | ||
| 258 | - | ||
| 259 | -отримати інформацію про tenderPeriod.startDate | ||
| 260 | - ${return_value}= Отримати тест із поля і показати на сторінці tenderPeriod.startDate | ||
| 261 | - [return] ${return_value} | ||
| 262 | - | ||
| 263 | -отримати інформацію про tenderPeriod.endDate | ||
| 264 | - ${return_value}= Отримати тест із поля і показати на сторінці tenderPeriod.endDate | ||
| 265 | - [return] ${return_value} | ||
| 266 | - | ||
| 267 | -отримати інформацію про enquiryPeriod.startDate | ||
| 268 | - ${return_value}= Отримати тест із поля і показати на сторінці enquiryPeriod.startDate | ||
| 269 | - [return] ${return_value} | ||
| 270 | - | ||
| 271 | -отримати інформацію про enquiryPeriod.endDate | ||
| 272 | - ${return_value}= Отримати тест із поля і показати на сторінці enquiryPeriod.endDate | ||
| 273 | - [return] ${return_value} | ||
| 274 | - | ||
| 275 | - | ||
| 276 | -отримати інформацію про items[${item_id}].description | ||
| 277 | - відмітити на сторінці поле з тендера items[${item_id}].description jquery=tender-subject-info.ng-isolate-scope>div.row:contains("Детальний опис предмету закупівлі:")>:eq(1)> | ||
| 278 | - ${return_value}= Get Text jquery=tender-subject-info.ng-isolate-scope>div.row:contains("Детальний опис предмету закупівлі:")>:eq(1)> | ||
| 279 | - [return] ${return_value} | ||
| 280 | - | ||
| 281 | -отримати інформацію про items[${item_id}].quantity | ||
| 282 | - відмітити на сторінці поле з тендера items[${item_id}].quantity jquery=tender-subject-info.ng-isolate-scope>div.row:contains("Кількість:")>:eq(1)> | ||
| 283 | - ${return_value}= Get Text jquery=tender-subject-info.ng-isolate-scope>div.row:contains("Кількість:")>:eq(1)> | ||
| 284 | - ${return_value}= Convert To Number ${return_value} | ||
| 285 | - [return] ${return_value} | ||
| 286 | - | ||
| 287 | -отримати інформацію про items[${item_id}].classification.id | ||
| 288 | - відмітити на сторінці поле з тендера items[0].classification.id jquery=tender-subject-info>div.row:contains("Класифікатор CPV:")>:eq(1)> | ||
| 289 | - ${return_value}= Get Text jquery=tender-subject-info>div.row:contains("Класифікатор CPV:")>:eq(1)> | ||
| 290 | - [return] ${return_value.split(' ')[0]} | ||
| 291 | - | ||
| 292 | -отримати інформацію про items[${item_id}].classification.scheme | ||
| 293 | - відмітити на сторінці поле з тендера items[0].classification.id jquery=tender-subject-info>div.row:contains("CPV")>:eq(1)> | ||
| 294 | - ${return_value}= Get Text jquery=tender-subject-info>div.row:contains("CPV")>:eq(1)> | ||
| 295 | - [return] ${return_value.split(' ')[0]} | ||
| 296 | - | ||
| 297 | -отримати інформацію про items[${item_id}].classification.description | ||
| 298 | - відмітити на сторінці поле з тендера classification.description jquery=tender-subject-info>div.row:contains("Класифікатор CPV:")>:eq(1)> | ||
| 299 | - ${return_value}= Get Text jquery=tender-subject-info>div.row:contains("Класифікатор CPV:")>:eq(1)> | ||
| 300 | - ${return_value}= catenate @{return_value.split(' ')[1:]} | ||
| 301 | - [return] ${return_value} | ||
| 302 | - | ||
| 303 | -отримати інформацію про items[${item_id}].deliveryAddress | ||
| 304 | - ${return_value}= Отримати тест із поля і показати на сторінці items[${item_id}].deliveryAddress | ||
| 305 | - [return] ${return_value} | ||
| 306 | - | ||
| 307 | -отримати інформацію про items[${item_id}].deliveryDate | ||
| 308 | - ${return_value}= Отримати тест із поля і показати на сторінці items[${item_id}].deliveryDate | ||
| 309 | - [return] ${return_value} | ||
| 310 | - | ||
| 311 | -отримати інформацію про questions[${question_id}].title | ||
| 312 | - відмітити на сторінці поле з тендера questions title jquery=tender-questions>div:eq(1)>div.row:contains("Тема:")>:eq(1)> | ||
| 313 | - ${return_value}= Get Text jquery=tender-questions>div:eq(1)>div.row:contains("Тема:")>:eq(1)> | ||
| 314 | - [return] ${return_value} | ||
| 315 | - | ||
| 316 | -отримати інформацію про questions[${question_id}].description | ||
| 317 | - відмітити на сторінці поле з тендера questions description jquery=tender-questions>div:eq(1)>div.row:contains("Питання:")>:eq(1)> | ||
| 318 | - ${return_value}= Get Text jquery=tender-questions>div:eq(1)>div.row:contains("Питання:")>:eq(1)> | ||
| 319 | - [return] ${return_value} | ||
| 320 | - | ||
| 321 | -отримати інформацію про questions[${question_id}].date | ||
| 322 | - відмітити на сторінці поле з тендера question date jquery=tender-questions>div:eq(1)>div.row:contains("Дата:")>:eq(1)> | ||
| 323 | - ${return_value}= Get Text jquery=tender-questions>div:eq(1)>div.row:contains("Дата:")>:eq(1)> | ||
| 324 | - [return] ${return_value} | ||
| 325 | - | ||
| 326 | -отримати інформацію про questions[${question_id}].answer | ||
| 327 | - відмітити на сторінці поле з тендера question answer jquery=tender-questions>div:eq(1)>div:last> | ||
| 328 | - ${return_value}= Get Text jquery=tender-questions>div:eq(1)>div:last> | ||
| 329 | - [return] ${return_value} | ||
| 330 | - | ||
| 331 | -Подати цінову пропозицію | ||
| 332 | - [Arguments] @{ARGUMENTS} | ||
| 333 | - [Documentation] | ||
| 334 | - ... ${ARGUMENTS[0]} == username | ||
| 335 | - ... ${ARGUMENTS[1]} == ${INTERNAL_TENDER_ID} | ||
| 336 | - ... ${ARGUMENTS[2]} == test_bid_data | ||
| 337 | - | ||
| 338 | - ${bid}= Get From Dictionary ${ARGUMENTS[2].data.value} amount | ||
| 339 | - etender.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} | ||
| 340 | - Wait Until Page Contains Інформація про процедуру закупівлі 100 | ||
| 341 | - Wait Until Page Contains Element id=amount 10 | ||
| 342 | - Input text id=amount ${bid} | ||
| 343 | - Click Element xpath=//button[contains(@class, 'btn btn-success')][./text()='Реєстрація пропозиції'] | ||
| 344 | - | ||
| 345 | -Задати питання | ||
| 346 | - [Arguments] @{ARGUMENTS} | ||
| 347 | - [Documentation] | ||
| 348 | - ... ${ARGUMENTS[0]} = username | ||
| 349 | - ... ${ARGUMENTS[1]} = ${INTERNAL_TENDER_ID} | ||
| 350 | - ... ${ARGUMENTS[2]} = question_data | ||
| 351 | - | ||
| 352 | - ${title}= Get From Dictionary ${ARGUMENTS[2].data} title | ||
| 353 | - ${description}= Get From Dictionary ${ARGUMENTS[2].data} description | ||
| 354 | - | ||
| 355 | - Selenium2Library.Switch Browser ${ARGUMENTS[0]} | ||
| 356 | - etender.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} ${TENDER_ID} | ||
| 357 | - | ||
| 358 | - Wait Until Page Contains Element jquery=a[href^="#/addQuestion/"] 100 | ||
| 359 | - Click Element jquery=a[href^="#/addQuestion/"] | ||
| 360 | - Wait Until Page Contains Element id=title | ||
| 361 | - Input text id=title ${title} | ||
| 362 | - Input text id=description ${description} | ||
| 363 | - Click Element xpath=//div[contains(@class, 'form-actions')]//button[@type='submit'] | ||
| 364 | - | ||
| 365 | -Відповісти на питання | ||
| 366 | - [Arguments] @{ARGUMENTS} | ||
| 367 | - [Documentation] | ||
| 368 | - ... ${ARGUMENTS[0]} = username | ||
| 369 | - ... ${ARGUMENTS[1]} = ${INTERNAL_TENDER_ID} | ||
| 370 | - ... ${ARGUMENTS[2]} = 0 | ||
| 371 | - ... ${ARGUMENTS[3]} = answer_data | ||
| 372 | - | ||
| 373 | - ${answer}= Get From Dictionary ${ARGUMENTS[3].data} answer | ||
| 374 | - | ||
| 375 | - Selenium2Library.Switch Browser ${ARGUMENTS[0]} | ||
| 376 | - etender.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} ${TENDER_ID} | 177 | +# Go to ${USERS.users['${ARGUMENTS[0]}'].homepage} |
| 178 | + Wait Until Page Contains Element xpath=//div[@class="search-field"]/input 20 | ||
| 179 | + ${ARGUMENTS[1]}= Convert To String UA-2015-06-08-000023 | ||
| 180 | + Input text xpath=//div[@class="search-field"]/input ${ARGUMENTS[1]} | ||
| 181 | + : FOR ${INDEX} IN RANGE 1 30 | ||
| 182 | +# \ Log To Console . | ||
| 183 | + \ sleep 1 | ||
| 184 | + \ ${count}= Get Matching Xpath Count xpath=//a[@class="row tender-info ng-scope"] | ||
| 185 | + \ Exit For Loop If '${count}' == '1' | ||
| 186 | + Click Element xpath=//a[@class="row tender-info ng-scope"] | ||
| 187 | + Wait Until Page Contains Element xpath=//a[@class="ng-binding ng-scope"] 30 | ||
| 188 | + ${fould_title}= Get Text xpath=//a[@class="ng-binding ng-scope"] | ||
| 189 | + Should Be Equal ${fould_title} ${ARGUMENTS[1]} | ||
| 377 | 190 | ||
| 378 | - Click Element xpath=//div[div/pre[1]]/div[1] | ||
| 379 | - Input text xpath=//div[textarea]/textarea ${answer} | ||
| 380 | - Click Element xpath=//div[textarea]/span/button[1] |
| @@ -17,7 +17,7 @@ users: | @@ -17,7 +17,7 @@ users: | ||
| 17 | homepage: "http://uat.e-tender.biz/#/profile" | 17 | homepage: "http://uat.e-tender.biz/#/profile" |
| 18 | login: Misha2 | 18 | login: Misha2 |
| 19 | password: Password1 | 19 | password: Password1 |
| 20 | - browser: chrome | 20 | + browser: firefox |
| 21 | position: [0, 0] | 21 | position: [0, 0] |
| 22 | size: [800, 800] | 22 | size: [800, 800] |
| 23 | E-tender_Provider1: | 23 | E-tender_Provider1: |
| @@ -26,7 +26,7 @@ users: | @@ -26,7 +26,7 @@ users: | ||
| 26 | homepage: "http://uat.e-tender.biz/#/profile" | 26 | homepage: "http://uat.e-tender.biz/#/profile" |
| 27 | login: st_org | 27 | login: st_org |
| 28 | password: 12345678 | 28 | password: 12345678 |
| 29 | - browser: chrome | 29 | + browser: firefox |
| 30 | position: [700, 0] | 30 | position: [700, 0] |
| 31 | size: [700, 800] | 31 | size: [700, 800] |
| 32 | E-tender_Provider2: | 32 | E-tender_Provider2: |
| @@ -35,7 +35,7 @@ users: | @@ -35,7 +35,7 @@ users: | ||
| 35 | homepage: "http://uat.e-tender.biz/#/profile" | 35 | homepage: "http://uat.e-tender.biz/#/profile" |
| 36 | login: provider2 | 36 | login: provider2 |
| 37 | password: Qa123456 | 37 | password: Qa123456 |
| 38 | - browser: chrome | 38 | + browser: firefox |
| 39 | position: [700, 0] | 39 | position: [700, 0] |
| 40 | size: [640, 450] | 40 | size: [640, 450] |
| 41 | E-tender_Viewer: | 41 | E-tender_Viewer: |
| @@ -81,7 +81,7 @@ users: | @@ -81,7 +81,7 @@ users: | ||
| 81 | homepage: "http://dev23.newtend.com/openprocurement/#/home/page/1" | 81 | homepage: "http://dev23.newtend.com/openprocurement/#/home/page/1" |
| 82 | login: openprocurement@mailinator.com | 82 | login: openprocurement@mailinator.com |
| 83 | password: 123123 | 83 | password: 123123 |
| 84 | - browser: chrome | 84 | + browser: firefox |
| 85 | position: [0, 0] | 85 | position: [0, 0] |
| 86 | size: [1100, 1000] | 86 | size: [1100, 1000] |
| 87 | Netcast_Owner: | 87 | Netcast_Owner: |
| @@ -102,27 +102,44 @@ users: | @@ -102,27 +102,44 @@ users: | ||
| 102 | browser: chrome | 102 | browser: chrome |
| 103 | position: [0, 0] | 103 | position: [0, 0] |
| 104 | size: [600, 800] | 104 | size: [600, 800] |
| 105 | + Netcast_Viewer: | ||
| 106 | + broker: Netcast | ||
| 107 | + username: Netcasttest | ||
| 108 | + homepage: "http://dz2.byustudio.in.ua" | ||
| 109 | + #browser: firefox | ||
| 110 | + browser: chrome | ||
| 111 | + position: [0, 0] | ||
| 112 | + size: [600, 800] | ||
| 105 | Publicbid_Owner: | 113 | Publicbid_Owner: |
| 106 | broker: Publicbid | 114 | broker: Publicbid |
| 107 | username: Publicbid | 115 | username: Publicbid |
| 108 | homepage: "https://public-bid.com.ua/test/" | 116 | homepage: "https://public-bid.com.ua/test/" |
| 109 | login: yaroslav1boyko@gmail.com | 117 | login: yaroslav1boyko@gmail.com |
| 110 | password: Password1 | 118 | password: Password1 |
| 111 | - browser: chrome | 119 | + browser: firefox |
| 112 | position: [0, 0] | 120 | position: [0, 0] |
| 113 | size: [740, 550] | 121 | size: [740, 550] |
| 122 | + Newtend_Owner: | ||
| 123 | + broker: Newtend | ||
| 124 | + username: Newtendtest | ||
| 125 | + homepage: "http://dev23.newtend.com/openprocurement/#/home/page/1" | ||
| 126 | + login: openprocurement@mailinator.com | ||
| 127 | + password: 123123 | ||
| 128 | + browser: firefox | ||
| 129 | + position: [0, 0] | ||
| 130 | + size: [640, 450] | ||
| 114 | Newtend_Provider2: | 131 | Newtend_Provider2: |
| 115 | broker: Newtend | 132 | broker: Newtend |
| 116 | username: Newtendtest | 133 | username: Newtendtest |
| 117 | homepage: "http://dev23.newtend.com/openprocurement/tenders" | 134 | homepage: "http://dev23.newtend.com/openprocurement/tenders" |
| 118 | login: openprocboss@mailinator.com | 135 | login: openprocboss@mailinator.com |
| 119 | password: 123123 | 136 | password: 123123 |
| 120 | - browser: chrome | 137 | + browser: firefox |
| 121 | position: [700, 0] | 138 | position: [700, 0] |
| 122 | size: [640, 450] | 139 | size: [640, 450] |
| 123 | Newtend_Viewer: | 140 | Newtend_Viewer: |
| 124 | broker: Newtend | 141 | broker: Newtend |
| 125 | username: Newtendtest | 142 | username: Newtendtest |
| 126 | - browser: chrome | 143 | + browser: firefox |
| 127 | position: [0, 0] | 144 | position: [0, 0] |
| 128 | size: [640, 450] | 145 | size: [640, 450] |
| @@ -31,9 +31,9 @@ TestSuiteSetup | @@ -31,9 +31,9 @@ TestSuiteSetup | ||
| 31 | Set Global Variable ${USERS} | 31 | Set Global Variable ${USERS} |
| 32 | ${users_list}= Get Dictionary Items ${USERS.users} | 32 | ${users_list}= Get Dictionary Items ${USERS.users} |
| 33 | :FOR ${username} ${user_data} IN @{users_list} | 33 | :FOR ${username} ${user_data} IN @{users_list} |
| 34 | - \ log ${active_users} | 34 | + \ log ${active_users} |
| 35 | \ log ${username} | 35 | \ log ${username} |
| 36 | - \ ${status}= Run Keyword And Return Status List Should Contain Value ${active_users} ${username} | 36 | + \ ${status}= Run Keyword And Return Status List Should Contain Value ${active_users} ${username} |
| 37 | \ Run Keyword If '${status}' == 'True' Завантажуємо бібліотеку з реалізацією ${BROKERS['${USERS.users['${username}'].broker}'].keywords_file} площадки | 37 | \ Run Keyword If '${status}' == 'True' Завантажуємо бібліотеку з реалізацією ${BROKERS['${USERS.users['${username}'].broker}'].keywords_file} площадки |
| 38 | \ Run Keyword If '${status}' == 'True' Викликати для учасника ${username} Підготувати клієнт для користувача | 38 | \ Run Keyword If '${status}' == 'True' Викликати для учасника ${username} Підготувати клієнт для користувача |
| 39 | 39 | ||
| @@ -56,7 +56,7 @@ TestSuiteSetup | @@ -56,7 +56,7 @@ TestSuiteSetup | ||
| 56 | Set Global Variable ${REPLIES} | 56 | Set Global Variable ${REPLIES} |
| 57 | ${INITIAL_TENDER_DATA}= prepare_test_tender_data ${BROKERS['${USERS.users['${tender_owner}'].broker}'].period_interval} ${mode} | 57 | ${INITIAL_TENDER_DATA}= prepare_test_tender_data ${BROKERS['${USERS.users['${tender_owner}'].broker}'].period_interval} ${mode} |
| 58 | Set Global Variable ${INITIAL_TENDER_DATA} | 58 | Set Global Variable ${INITIAL_TENDER_DATA} |
| 59 | - ${TENDER}= Create Dictionary | 59 | + ${TENDER}= Create Dictionary |
| 60 | Set Global Variable ${TENDER} | 60 | Set Global Variable ${TENDER} |
| 61 | Log ${TENDER} | 61 | Log ${TENDER} |
| 62 | Log ${INITIAL_TENDER_DATA} | 62 | Log ${INITIAL_TENDER_DATA} |
| @@ -83,8 +83,8 @@ TestSuiteSetup | @@ -83,8 +83,8 @@ TestSuiteSetup | ||
| 83 | ${field_value}= Get_From_Object ${INITIAL_TENDER_DATA.data} ${field} | 83 | ${field_value}= Get_From_Object ${INITIAL_TENDER_DATA.data} ${field} |
| 84 | Звірити поле ${username} ${field} ${field_value} | 84 | Звірити поле ${username} ${field} ${field_value} |
| 85 | 85 | ||
| 86 | -Звірити поле | ||
| 87 | - [Arguments] ${username} ${field} ${subject} | 86 | +Звірити поле |
| 87 | + [Arguments] ${username} ${field} ${subject} | ||
| 88 | ${field_response}= Викликати для учасника ${username} отримати інформацію із тендера ${field} | 88 | ${field_response}= Викликати для учасника ${username} отримати інформацію із тендера ${field} |
| 89 | Should Not Be Equal ${field_response} ${None} | 89 | Should Not Be Equal ${field_response} ${None} |
| 90 | Should Be Equal ${subject} ${field_response} Майданчик ${USERS.users['${username}'].broker} | 90 | Should Be Equal ${subject} ${field_response} Майданчик ${USERS.users['${username}'].broker} |
| @@ -104,13 +104,13 @@ TestSuiteSetup | @@ -104,13 +104,13 @@ TestSuiteSetup | ||
| 104 | Звірити дату ${username} ${field} ${isodate} | 104 | Звірити дату ${username} ${field} ${isodate} |
| 105 | 105 | ||
| 106 | Звірити дату | 106 | Звірити дату |
| 107 | - [Arguments] ${username} ${field} ${subject} | 107 | + [Arguments] ${username} ${field} ${subject} |
| 108 | ${field_date}= Викликати для учасника ${username} отримати інформацію із тендера ${field} | 108 | ${field_date}= Викликати для учасника ${username} отримати інформацію із тендера ${field} |
| 109 | ${returned}= compare_date ${subject} ${field_date} | 109 | ${returned}= compare_date ${subject} ${field_date} |
| 110 | Should Not Be Equal ${field_date} ${None} | 110 | Should Not Be Equal ${field_date} ${None} |
| 111 | Should Not Be Equal ${returned} ${None} | 111 | Should Not Be Equal ${returned} ${None} |
| 112 | - Should Be True '${returned}' == 'True' | ||
| 113 | - | 112 | + Should Be True '${returned}' == 'True' |
| 113 | + | ||
| 114 | Звірити поля предметів закупівлі багатопредметного тендера | 114 | Звірити поля предметів закупівлі багатопредметного тендера |
| 115 | [Arguments] ${username} ${field} | 115 | [Arguments] ${username} ${field} |
| 116 | Дочекатись синхронізації з майданчиком ${username} | 116 | Дочекатись синхронізації з майданчиком ${username} |
| @@ -128,10 +128,10 @@ TestSuiteSetup | @@ -128,10 +128,10 @@ TestSuiteSetup | ||
| 128 | :FOR ${index} IN RANGE ${len_of_items} | 128 | :FOR ${index} IN RANGE ${len_of_items} |
| 129 | \ Log ${index} | 129 | \ Log ${index} |
| 130 | \ Звірити дату тендера ${viewer} items[${index}].${field} | 130 | \ Звірити дату тендера ${viewer} items[${index}].${field} |
| 131 | - | 131 | + |
| 132 | Викликати для учасника | 132 | Викликати для учасника |
| 133 | [Documentation] | 133 | [Documentation] |
| 134 | - ... cause sometimes keyword SHOULD fail to pass the testcase, this keyword takes "shouldfail" argument as first one in @{arguments} and switches the behaviour of keyword and "shouldfail" | 134 | + ... cause sometimes keyword SHOULD fail to pass the testcase, this keyword takes "shouldfail" argument as first one in @{arguments} and switches the behaviour of keyword and "shouldfail" |
| 135 | [Arguments] ${username} ${command} @{arguments} | 135 | [Arguments] ${username} ${command} @{arguments} |
| 136 | log ${username} | 136 | log ${username} |
| 137 | log ${command} | 137 | log ${command} |
| @@ -159,7 +159,7 @@ switchsate | @@ -159,7 +159,7 @@ switchsate | ||
| 159 | ${status} ${value}= run_keyword_and_ignore_keyword_definations ${BROKERS['${USERS.users['${username}'].broker}'].keywords_file}.${command} ${username} @{arguments} | 159 | ${status} ${value}= run_keyword_and_ignore_keyword_definations ${BROKERS['${USERS.users['${username}'].broker}'].keywords_file}.${command} ${username} @{arguments} |
| 160 | Run keyword if '${status}' == 'PASS' Log Учасник ${username} зміг виконати "${command}" WARN | 160 | Run keyword if '${status}' == 'PASS' Log Учасник ${username} зміг виконати "${command}" WARN |
| 161 | [return] ${value} | 161 | [return] ${value} |
| 162 | - | 162 | + |
| 163 | Дочекатись дати | 163 | Дочекатись дати |
| 164 | [Arguments] ${date} | 164 | [Arguments] ${date} |
| 165 | ${wait_timout}= wait_to_date ${date} | 165 | ${wait_timout}= wait_to_date ${date} |
| @@ -167,12 +167,12 @@ switchsate | @@ -167,12 +167,12 @@ switchsate | ||
| 167 | 167 | ||
| 168 | Дочекатись дати початоку прийому пропозицій | 168 | Дочекатись дати початоку прийому пропозицій |
| 169 | Дочекатись дати ${TENDER_DATA.data.tenderPeriod.startDate} | 169 | Дочекатись дати ${TENDER_DATA.data.tenderPeriod.startDate} |
| 170 | - | 170 | + |
| 171 | Дочекатись дати закінчення прийому пропозицій | 171 | Дочекатись дати закінчення прийому пропозицій |
| 172 | Дочекатись дати ${TENDER_DATA.data.tenderPeriod.endDate} | 172 | Дочекатись дати ${TENDER_DATA.data.tenderPeriod.endDate} |
| 173 | - | 173 | + |
| 174 | Дочекатись дати початоку аукціону | 174 | Дочекатись дати початоку аукціону |
| 175 | Дочекатись дати ${TENDER_DATA.data.auctionPeriod.startDate} | 175 | Дочекатись дати ${TENDER_DATA.data.auctionPeriod.startDate} |
| 176 | 176 | ||
| 177 | Дочекатись дати закінчення аукціону | 177 | Дочекатись дати закінчення аукціону |
| 178 | - Дочекатись дати ${TENDER_DATA.data.auctionPeriod.endDate} | ||
| 178 | + Дочекатись дати ${TENDER_DATA.data.auctionPeriod.endDate} |
| @@ -45,7 +45,6 @@ def compare_date(data1, data2): | @@ -45,7 +45,6 @@ def compare_date(data1, data2): | ||
| 45 | data1 = TIMEZONE.localize(data1) | 45 | data1 = TIMEZONE.localize(data1) |
| 46 | if data2.tzinfo is None: | 46 | if data2.tzinfo is None: |
| 47 | data2 = TIMEZONE.localize(data2) | 47 | data2 = TIMEZONE.localize(data2) |
| 48 | - | ||
| 49 | delta = (data1-data2).total_seconds() | 48 | delta = (data1-data2).total_seconds() |
| 50 | if abs(delta) > 60: | 49 | if abs(delta) > 60: |
| 51 | return False | 50 | return False |
Please
register
or
login
to post a comment