Showing
5 changed files
with
100 additions
and
45 deletions
| ... | ... | @@ -2,7 +2,7 @@ |
| 2 | 2 | Library Selenium2Screenshots |
| 3 | 3 | Library String |
| 4 | 4 | Library DateTime |
| 5 | -Library op_robot_tests.tests_files.etender_service | |
| 5 | + | |
| 6 | 6 | |
| 7 | 7 | *** Variables *** |
| 8 | 8 | ${locator.tenderId} jquery=h3 |
| ... | ... | @@ -107,8 +107,8 @@ ${locator.enquiryPeriod.endDate} jquery=tender-procedure-info>div.row:contai |
| 107 | 107 | Click Element xpath=//table[contains(@class, 'table table-hover table-striped table-bordered ng-scope ng-table')]//tr[1]//a |
| 108 | 108 | ${tender_UAid}= Wait Until Keyword Succeeds 240sec 2sec get tender UAid |
| 109 | 109 | ### harcode Idis bacause issues on the E-tender side, to remove, 1 line: |
| 110 | - ${tender_UAid}= Convert To String UA-2015-06-12-000038 | |
| 111 | - ${Ids} Create List ${tender_UAid} | |
| 110 | + ${tender_UAid}= Convert To String UA-2015-06-30-000012 | |
| 111 | + ${Ids} Create List ${tender_UAid} | |
| 112 | 112 | [return] ${Ids} |
| 113 | 113 | |
| 114 | 114 | get tender UAid |
| ... | ... | @@ -136,12 +136,12 @@ Oтримати internal id по UAid |
| 136 | 136 | ... ${ARGUMENTS[1]} == tenderId |
| 137 | 137 | |
| 138 | 138 | Switch browser ${ARGUMENTS[0]} |
| 139 | - Go to ${BROKERS['${USERS.users['${username}'].broker}'].url} | |
| 139 | + Go to ${BROKERS['${USERS.users['${username}'].broker}'].url} | |
| 140 | 140 | Wait Until Page Contains Список закупівель 10 |
| 141 | - sleep 1 | |
| 142 | - Input Text jquery=input[ng-change='search()'] ${ARGUMENTS[1]} | |
| 143 | - Click Link jquery=a[ng-click='search()'] | |
| 144 | - sleep 2 | |
| 141 | + sleep 1 | |
| 142 | + Input Text jquery=input[ng-change='search()'] ${ARGUMENTS[1]} | |
| 143 | + Click Link jquery=a[ng-click='search()'] | |
| 144 | + sleep 2 | |
| 145 | 145 | Click Link jquery=a[href^="#/tenderDetailes"] |
| 146 | 146 | Wait Until Page Contains ${ARGUMENTS[1]} 10 |
| 147 | 147 | sleep 1 |
| ... | ... | @@ -294,4 +294,41 @@ Oтримати internal id по UAid |
| 294 | 294 | Wait Until Page Contains Інформація про процедуру закупівлі 100 |
| 295 | 295 | Wait Until Page Contains Element id=amount 10 |
| 296 | 296 | Input text id=amount ${bid} |
| 297 | - Click Element xpath=//button[contains(@class, 'btn btn-success')][./text()='Реєстрація пропозиції'] | |
| \ No newline at end of file | ||
| 297 | + Click Element xpath=//button[contains(@class, 'btn btn-success')][./text()='Реєстрація пропозиції'] | |
| 298 | + | |
| 299 | +Задати питання | |
| 300 | + [Arguments] @{ARGUMENTS} | |
| 301 | + [Documentation] | |
| 302 | + ... ${ARGUMENTS[0]} = username | |
| 303 | + ... ${ARGUMENTS[1]} = ${INTERNAL_TENDER_ID} | |
| 304 | + ... ${ARGUMENTS[2]} = question_data | |
| 305 | + | |
| 306 | + ${title}= Get From Dictionary ${ARGUMENTS[2].data} title | |
| 307 | + ${description}= Get From Dictionary ${ARGUMENTS[2].data} description | |
| 308 | + | |
| 309 | + Selenium2Library.Switch Browser ${ARGUMENTS[0]} | |
| 310 | + etender.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} ${TENDER_ID} | |
| 311 | + | |
| 312 | + Wait Until Page Contains Element jquery=a[href^="#/addQuestion/"] 100 | |
| 313 | + Click Element jquery=a[href^="#/addQuestion/"] | |
| 314 | + Wait Until Page Contains Element id=title | |
| 315 | + Input text id=title ${title} | |
| 316 | + Input text id=description ${description} | |
| 317 | + Click Element xpath=//div[contains(@class, 'form-actions')]//button[@type='submit'] | |
| 318 | + | |
| 319 | +Відповісти на питання | |
| 320 | + [Arguments] @{ARGUMENTS} | |
| 321 | + [Documentation] | |
| 322 | + ... ${ARGUMENTS[0]} = username | |
| 323 | + ... ${ARGUMENTS[1]} = ${INTERNAL_TENDER_ID} | |
| 324 | + ... ${ARGUMENTS[2]} = 0 | |
| 325 | + ... ${ARGUMENTS[3]} = answer_data | |
| 326 | + | |
| 327 | + ${answer}= Get From Dictionary ${ARGUMENTS[3].data} answer | |
| 328 | + | |
| 329 | + Selenium2Library.Switch Browser ${ARGUMENTS[0]} | |
| 330 | + etender.Пошук тендера по ідентифікатору ${ARGUMENTS[0]} ${ARGUMENTS[1]} ${TENDER_ID} | |
| 331 | + | |
| 332 | + Click Element xpath=//div[div/pre[1]]/div[1] | |
| 333 | + Input text xpath=//div[textarea]/textarea ${answer} | |
| 334 | + Click Element xpath=//div[textarea]/span/button[1] | ... | ... |
| ... | ... | @@ -2,21 +2,33 @@ users: |
| 2 | 2 | Tender_Owner: |
| 3 | 3 | api_key: e9c3ccb8e8124f26941d5f9639a4ebc3 |
| 4 | 4 | broker: Quinta |
| 5 | - Prom_Owner: | |
| 6 | - broker: Prom | |
| 7 | - username: Promtest | |
| 8 | - browser: chrome | |
| 9 | - position: [0, 0] | |
| 10 | - size: [640, 450] | |
| 5 | + Tender_Viewer: | |
| 6 | + broker: Quinta | |
| 7 | + api_key: "" | |
| 8 | + Tender_User: | |
| 9 | + api_key: e9c3ccb8e8124f26941d5f9639a4ebc3 | |
| 10 | + broker: Quinta | |
| 11 | + Tender_User1: | |
| 12 | + api_key: e9c3ccb8e8124f26941d5f9639a4ebc3 | |
| 13 | + broker: Quinta | |
| 11 | 14 | E-tender_Owner: |
| 12 | 15 | broker: E-tender |
| 13 | 16 | username: E-tendertest |
| 14 | 17 | homepage: "http://uat.e-tender.biz/#/profile" |
| 15 | - login: st_org | |
| 16 | - password: 12345678 | |
| 18 | + login: Misha2 | |
| 19 | + password: Password1 | |
| 17 | 20 | browser: firefox |
| 18 | 21 | position: [0, 0] |
| 19 | 22 | size: [640, 450] |
| 23 | + E-tender_Provider1: | |
| 24 | + broker: E-tender | |
| 25 | + username: E-tendertest | |
| 26 | + homepage: "http://uat.e-tender.biz/#/profile" | |
| 27 | + login: st_org | |
| 28 | + password: 12345678 | |
| 29 | + browser: firefox | |
| 30 | + position: [0, 0] | |
| 31 | + size: [640, 450] | |
| 20 | 32 | E-tender_Provider2: |
| 21 | 33 | broker: E-tender |
| 22 | 34 | username: E-tendertest |
| ... | ... | @@ -32,6 +44,12 @@ users: |
| 32 | 44 | browser: chrome |
| 33 | 45 | position: [0, 0] |
| 34 | 46 | size: [640, 450] |
| 47 | + Prom_Owner: | |
| 48 | + broker: Prom | |
| 49 | + username: Promtest | |
| 50 | + browser: chrome | |
| 51 | + position: [0, 0] | |
| 52 | + size: [640, 450] | |
| 35 | 53 | Prom_Viewer: |
| 36 | 54 | broker: Prom |
| 37 | 55 | username: Promtest |
| ... | ... | @@ -49,20 +67,10 @@ users: |
| 49 | 67 | username: Publicbid |
| 50 | 68 | browser: chrome |
| 51 | 69 | position: [0, 450] |
| 52 | - size: [640, 450] | |
| 70 | + size: [640, 450] | |
| 53 | 71 | Netcast_Viewer: |
| 54 | 72 | broker: Netcast |
| 55 | 73 | username: TetcastTest |
| 56 | 74 | browser: chrome |
| 57 | 75 | position: [0, 450] |
| 58 | - size: [640, 450] | |
| 59 | - Tender_Viewer: | |
| 60 | - broker: Quinta | |
| 61 | - api_key: "" | |
| 62 | - Tender_User: | |
| 63 | - api_key: e9c3ccb8e8124f26941d5f9639a4ebc3 | |
| 64 | - broker: Quinta | |
| 65 | - Tender_User1: | |
| 66 | - api_key: e9c3ccb8e8124f26941d5f9639a4ebc3 | |
| 67 | - broker: Quinta | |
| 68 | - | |
| \ No newline at end of file | ||
| 76 | + size: [640, 450] | ... | ... |
| ... | ... | @@ -82,8 +82,8 @@ def test_tender_data(period_interval=2): |
| 82 | 82 | } |
| 83 | 83 | ], |
| 84 | 84 | "enquiryPeriod": { |
| 85 | - "startDate": (now).isoformat(), | |
| 86 | - "endDate": (now + timedelta(minutes=1)).isoformat() | |
| 85 | + "startDate": (now + timedelta(minutes=2)).isoformat(), | |
| 86 | + "endDate": (now + timedelta(minutes=3)).isoformat() | |
| 87 | 87 | }, |
| 88 | 88 | "tenderPeriod": { |
| 89 | 89 | "startDate": (now + timedelta(minutes=2)).isoformat(), | ... | ... |
| ... | ... | @@ -22,7 +22,17 @@ from .initial_data import ( |
| 22 | 22 | |
| 23 | 23 | TIMEZONE = timezone('Europe/Kiev') |
| 24 | 24 | def get_date(): |
| 25 | - return datetime.now().isoformat() | |
| 25 | + return datetime.now().isoformat() | |
| 26 | + | |
| 27 | +def convert_date_to_etender_format(isodate): | |
| 28 | + iso_dt=parse_date(isodate) | |
| 29 | + date_string = iso_dt.strftime("%d-%m-%Y") | |
| 30 | + return date_string | |
| 31 | + | |
| 32 | +def convert_time_to_etender_format(isodate): | |
| 33 | + iso_dt=parse_date(isodate) | |
| 34 | + time_string = iso_dt.strftime("%H:%M") | |
| 35 | + return time_string | |
| 26 | 36 | |
| 27 | 37 | def change_state(arguments): |
| 28 | 38 | try: | ... | ... |
| ... | ... | @@ -27,7 +27,7 @@ ${question_id} 0 |
| 27 | 27 | Можливість оголосити однопредметний тендер |
| 28 | 28 | [Tags] ${USERS.users['${tender_owner}'].broker}: Можливість оголосити тендер |
| 29 | 29 | ${ids}= Викликати для учасника ${tender_owner} Створити тендер ${INITIAL_TENDER_DATA} |
| 30 | - ${TENDER_ID}= Get From List ${ids} 0 | |
| 30 | + ${TENDER_ID}= Get From List ${ids} 0 | |
| 31 | 31 | Set Global Variable ${TENDER_ID} |
| 32 | 32 | ${LAST_MODIFICATION_DATE}= Get Current Date |
| 33 | 33 | Set Global Variable ${LAST_MODIFICATION_DATE} |
| ... | ... | @@ -56,10 +56,10 @@ ${question_id} 0 |
| 56 | 56 | [Tags] ${USERS.users['${viewer}'].broker}: Пошук тендера по ідентифікатору |
| 57 | 57 | Дочекатись синхронізації з майданчиком ${viewer} |
| 58 | 58 | Викликати для учасника ${viewer} Пошук тендера по ідентифікатору ${TENDER_ID} |
| 59 | - | |
| 59 | + | |
| 60 | 60 | ###### |
| 61 | 61 | #Відображення основних даних оголошеного тендера: |
| 62 | -#заголовок, опис, бюджет, тендерна документація, | |
| 62 | +#заголовок, опис, бюджет, тендерна документація, | |
| 63 | 63 | #procuringEntity, періоди уточнень/прийому-пропозицій, мінімального кроку |
| 64 | 64 | |
| 65 | 65 | Відображення заголовоку оголошеного тендера |
| ... | ... | @@ -221,7 +221,7 @@ ${question_id} 0 |
| 221 | 221 | |
| 222 | 222 | Відображення дати анонімного питання без відповіді |
| 223 | 223 | [Tags] ${USERS.users['${viewer}'].broker}: Відображення анонімного питання без відповідей |
| 224 | - Звірити дату ${viewer} questions[${question_id}].date ${QUESTIONS[${question_id}].data.date} | |
| 224 | + Звірити дату ${viewer} questions[${question_id}].date ${QUESTIONS[${question_id}].data.date} | |
| 225 | 225 | |
| 226 | 226 | Неможливість подати цінову пропозицію до початку періоду подачі пропозицій bidder1 |
| 227 | 227 | [Tags] ${USERS.users['${provider}'].broker}: Можливість подати цінову пропозицію |
| ... | ... | @@ -299,7 +299,7 @@ ${question_id} 0 |
| 299 | 299 | log ${token1} |
| 300 | 300 | ${upload_doc_responce}= Викликати для учасника ${provider} Завантажити документ в ставку ${token1} ${bid_id} |
| 301 | 301 | Set Global Variable ${upload_doc_responce} |
| 302 | - | |
| 302 | + | |
| 303 | 303 | Можливість змінити документацію цінової пропозиції |
| 304 | 304 | [Tags] ${USERS.users['${provider}'].broker}: Можливість прийняти пропозицію переможця |
| 305 | 305 | log ${USERS.users['${provider}'].broker} |
| ... | ... | @@ -307,7 +307,7 @@ ${question_id} 0 |
| 307 | 307 | ${bid_id}= get variable value ${biddingresponce1.data.id} |
| 308 | 308 | ${token1}= Get Variable Value ${biddingresponce1.access.token} |
| 309 | 309 | ${upload_doc_responce_id}= get variable value ${upload_doc_responce.data.id} |
| 310 | - log ${token1} | |
| 310 | + log ${token1} | |
| 311 | 311 | Викликати для учасника ${provider} Змінити документ в ставці ${token1} ${bid_id} ${upload_doc_responce_id} |
| 312 | 312 | |
| 313 | 313 | Неможливість задати запитання після закінчення періоду уточнень |
| ... | ... | @@ -344,7 +344,7 @@ ${question_id} 0 |
| 344 | 344 | можливість побачити скаргу анонімом під час подачі пропозицій |
| 345 | 345 | [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних оголошеного тендера |
| 346 | 346 | Викликати для учасника ${viewer} порівняти скаргу ${TENDER_ID} ${COMPLAINTS[0]} |
| 347 | - | |
| 347 | + | |
| 348 | 348 | |
| 349 | 349 | Неможливість змінити цінову пропозицію до 50000 після закінчення прийому пропозицій |
| 350 | 350 | [Tags] ${USERS.users['${provider1}'].broker}: Неможливість змінити цінову пропозицію до 50000 після закінчення прийому пропозицій |
| ... | ... | @@ -354,7 +354,7 @@ ${question_id} 0 |
| 354 | 354 | ${biddingresponce6}= Викликати для учасника ${provider1} Змінити цінову пропозицію shouldfail ${TENDER_ID} ${biddingresponce5} |
| 355 | 355 | Set Global Variable ${biddingresponce6} |
| 356 | 356 | log ${biddingresponce6} |
| 357 | - | |
| 357 | + | |
| 358 | 358 | Неможливість змінити цінову пропозицію до 1 після закінчення прийому пропозицій |
| 359 | 359 | [Tags] ${USERS.users['${provider1}'].broker}: Неможливість змінити цінову пропозицію до 1 після закінчення прийому пропозицій |
| 360 | 360 | Set To Dictionary ${biddingresponce5.data.value} amount 1 |
| ... | ... | @@ -377,7 +377,7 @@ ${question_id} 0 |
| 377 | 377 | ${upload_doc_responce2}= Викликати для учасника ${provider1} Завантажити документ в ставку shouldfail ${token1} ${bid_id} |
| 378 | 378 | log ${upload_doc_responce_2} |
| 379 | 379 | Set Global Variable ${upload_doc_responce2} |
| 380 | - | |
| 380 | + | |
| 381 | 381 | Неможливість змінити документацію цінової пропозиції після закінчення прийому пропозицій |
| 382 | 382 | [Tags] ${USERS.users['${provider}'].broker}: Неможливість змінити документацію цінової пропозиції після закінчення прийому пропозицій |
| 383 | 383 | log ${USERS.users['${provider}'].broker} |
| ... | ... | @@ -386,10 +386,10 @@ ${question_id} 0 |
| 386 | 386 | ${token1}= Get Variable Value ${biddingresponce5.access.token} |
| 387 | 387 | ${upload_doc_responce_id2}= get variable value ${upload_doc_responce2.data.id} |
| 388 | 388 | log ${upload_doc_responce_id2} |
| 389 | - log ${token1} | |
| 389 | + log ${token1} | |
| 390 | 390 | Викликати для учасника ${provider1} Змінити документ в ставці shouldfail ${token1} ${bid_id} ${upload_doc_responce_id2} |
| 391 | - | |
| 392 | - | |
| 391 | + | |
| 392 | + | |
| 393 | 393 | Неможливість змінити існуючу документацію цінової пропозиції після закінчення прийому пропозицій |
| 394 | 394 | [Tags] ${USERS.users['${provider}'].broker}: Можливість прийняти пропозицію переможця |
| 395 | 395 | log ${USERS.users['${provider}'].broker} |
| ... | ... | @@ -397,7 +397,7 @@ ${question_id} 0 |
| 397 | 397 | ${bid_id}= get variable value ${biddingresponce1.data.id} |
| 398 | 398 | ${token1}= Get Variable Value ${biddingresponce1.access.token} |
| 399 | 399 | ${upload_doc_responce_id}= get variable value ${upload_doc_responce.data.id} |
| 400 | - log ${token1} | |
| 400 | + log ${token1} | |
| 401 | 401 | Викликати для учасника ${provider} Змінити документ в ставці shouldfail ${token1} ${bid_id} ${upload_doc_responce_id} |
| 402 | 402 | |
| 403 | 403 | ... | ... |
Please
register
or
login
to post a comment