Commit 4538bf531ea89926315fd97f0b3a5b57bb600a3c
Committed by
GitHub
Merge pull request #69 from openprocurement/master
closeFrameworkAgreementSelectionUA
Showing
19 changed files
with
1672 additions
and
16 deletions
| @@ -48,9 +48,10 @@ Resource base_keywords.robot | @@ -48,9 +48,10 @@ Resource base_keywords.robot | ||
| 48 | Run As ${username} Змінити документацію в ставці ${TENDER['TENDER_UAID']} ${privat_doc} ${USERS.users['${username}']['bid_document']['doc_id']} | 48 | Run As ${username} Змінити документацію в ставці ${TENDER['TENDER_UAID']} ${privat_doc} ${USERS.users['${username}']['bid_document']['doc_id']} |
| 49 | 49 | ||
| 50 | 50 | ||
| 51 | -Можливість завантажити ${doc_type} документ до пропозиції учасником ${username} | 51 | +Можливість завантажити документ до пропозиції учасником |
| 52 | + [Arguments] ${username} ${doc_name} ${doc_type}=${NONE} | ||
| 52 | ${file_path} ${file_name} ${file_content}= create_fake_doc | 53 | ${file_path} ${file_name} ${file_content}= create_fake_doc |
| 53 | - ${bid_doc_upload}= Run As ${username} Завантажити документ в ставку ${file_path} ${TENDER['TENDER_UAID']} ${doc_type} | 54 | + ${bid_doc_upload}= Run As ${username} Завантажити документ в ставку ${file_path} ${TENDER['TENDER_UAID']} ${doc_name} ${doc_type} |
| 54 | Set To Dictionary ${USERS.users['${username}'].bidresponses} bid_doc_upload=${bid_doc_upload} | 55 | Set To Dictionary ${USERS.users['${username}'].bidresponses} bid_doc_upload=${bid_doc_upload} |
| 55 | Remove File ${file_path} | 56 | Remove File ${file_path} |
| 56 | 57 |
op_robot_tests/tests_files/agreement.robot
0 → 100644
| 1 | +*** Settings *** | ||
| 2 | +Resource base_keywords.robot | ||
| 3 | +Suite Setup Test Suite Setup | ||
| 4 | +Suite Teardown Test Suite Teardown | ||
| 5 | + | ||
| 6 | +*** Variables *** | ||
| 7 | +@{USED_ROLES} tender_owner viewer | ||
| 8 | + | ||
| 9 | +*** Test Cases *** | ||
| 10 | +Можливість знайти закупівлю по ідентифікатору | ||
| 11 | + [Tags] ${USERS.users['${viewer}'].broker}: Пошук тендера | ||
| 12 | + ... viewer tender_owner | ||
| 13 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 14 | + ... find_tender | ||
| 15 | + ... critical | ||
| 16 | + Завантажити дані про тендер | ||
| 17 | + :FOR ${username} IN ${viewer} ${tender_owner} | ||
| 18 | + \ Run As ${username} Пошук тендера по ідентифікатору ${TENDER['TENDER_UAID']} | ||
| 19 | + | ||
| 20 | + | ||
| 21 | +Відображення ідентифікатора угоди | ||
| 22 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 23 | + ... viewer tender_owner | ||
| 24 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 25 | + ... tender_view | ||
| 26 | + ... critical | ||
| 27 | + :FOR ${username} IN ${viewer} ${tender_owner} | ||
| 28 | + \ Отримати дані із поля agreements[0].agreementID тендера для користувача ${username} | ||
| 29 | + ${AGREEMENT_UAID}= Get Variable Value ${USERS.users['${tender_owner}'].tender_data.data.agreements[0].agreementID} | ||
| 30 | + Set Suite Variable ${AGREEMENT_UAID} | ||
| 31 | + | ||
| 32 | + | ||
| 33 | +Можливість знайти угоду по ідентифікатору | ||
| 34 | + [Tags] ${USERS.users['${viewer}'].broker}: Пошук угоди | ||
| 35 | + ... viewer tender_owner | ||
| 36 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 37 | + ... find_agreement | ||
| 38 | + ... critical | ||
| 39 | + :FOR ${username} IN ${viewer} ${tender_owner} | ||
| 40 | + \ Run As ${username} Пошук угоди по ідентифікатору ${AGREEMENT_UAID} | ||
| 41 | + | ||
| 42 | + | ||
| 43 | +Відображення ідентифікатора контракту в угоді | ||
| 44 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних угоди | ||
| 45 | + ... viewer tender_owner | ||
| 46 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 47 | + ... agreement_view | ||
| 48 | + ... critical | ||
| 49 | + :FOR ${username} IN ${viewer} ${tender_owner} | ||
| 50 | + \ Отримати дані із угоди ${username} ${AGREEMENT_UAID} contracts[0].id | ||
| 51 | + | ||
| 52 | + | ||
| 53 | +Відображення ідентифікатора предмету в угоді | ||
| 54 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних угоди | ||
| 55 | + ... viewer tender_owner | ||
| 56 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 57 | + ... agreement_view | ||
| 58 | + ... critical | ||
| 59 | + :FOR ${username} IN ${viewer} ${tender_owner} | ||
| 60 | + \ Отримати дані із угоди ${username} ${AGREEMENT_UAID} items[0].id | ||
| 61 | + | ||
| 62 | + | ||
| 63 | +Можливість отримати доступ до угоди | ||
| 64 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Отримання прав доступу до угоди | ||
| 65 | + ... tender_owner | ||
| 66 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 67 | + ... find_agreement | ||
| 68 | + ... critical | ||
| 69 | + Run As ${tender_owner} Отримати доступ до угоди ${AGREEMENT_UAID} | ||
| 70 | + | ||
| 71 | + | ||
| 72 | +Можливість завантажити документацію в угоду | ||
| 73 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Завантаження документації в угоду | ||
| 74 | + ... tender_owner | ||
| 75 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 76 | + ... add_agreement_doc | ||
| 77 | + ... non-critical | ||
| 78 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 79 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 80 | + Можливість завантажити документ для рамкової угоди користувачем ${tender_owner} | ||
| 81 | + | ||
| 82 | + | ||
| 83 | +Можливість внести зміну до угоди taxRate | ||
| 84 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 85 | + ... tender_owner | ||
| 86 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 87 | + ... submit_change | ||
| 88 | + ... critical | ||
| 89 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 90 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 91 | + ${change_data}= Підготувати дані про зміну до угоди ${tender_owner} taxRate | ||
| 92 | + Run As ${tender_owner} Внести зміну в угоду ${AGREEMENT_UAID} ${change_data} | ||
| 93 | + | ||
| 94 | + | ||
| 95 | +Відображення типу зміни taxRate | ||
| 96 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 97 | + ... viewer | ||
| 98 | + ... ${USERS.users['${viewer}'].broker} | ||
| 99 | + ... change_view | ||
| 100 | + ... non-critical | ||
| 101 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 102 | + Звірити поле угоди із значенням | ||
| 103 | + ... ${viewer} | ||
| 104 | + ... ${AGREEMENT_UAID} | ||
| 105 | + ... ${USERS.users['${tender_owner}'].change_data.data.rationaleType} | ||
| 106 | + ... changes[0].rationaleType | ||
| 107 | + | ||
| 108 | + | ||
| 109 | +Відображення обгрунтування зміни taxRate | ||
| 110 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 111 | + ... viewer | ||
| 112 | + ... ${USERS.users['${viewer}'].broker} | ||
| 113 | + ... change_view | ||
| 114 | + ... non-critical | ||
| 115 | + Звірити поле угоди із значенням | ||
| 116 | + ... ${viewer} | ||
| 117 | + ... ${AGREEMENT_UAID} | ||
| 118 | + ... ${USERS.users['${tender_owner}'].change_data.data.rationale} | ||
| 119 | + ... changes[0].rationale | ||
| 120 | + | ||
| 121 | + | ||
| 122 | +Можливість оновити властивості угоди для внесених змін taxRate | ||
| 123 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 124 | + ... tender_owner | ||
| 125 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 126 | + ... modification | ||
| 127 | + ... critical | ||
| 128 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 129 | + ${change_data}= Підготувати дані для оновлення властивості угоди ${tender_owner} addend ${0.9} | ||
| 130 | + Run As ${tender_owner} Оновити властивості угоди ${AGREEMENT_UAID} ${change_data} | ||
| 131 | + | ||
| 132 | + | ||
| 133 | +Відображення ідентифікатора предмету у властивостях taxRate | ||
| 134 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 135 | + ... viewer | ||
| 136 | + ... ${USERS.users['${viewer}'].broker} | ||
| 137 | + ... modification_view | ||
| 138 | + ... non-critical | ||
| 139 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 140 | + Звірити поле угоди із значенням | ||
| 141 | + ... ${viewer} | ||
| 142 | + ... ${AGREEMENT_UAID} | ||
| 143 | + ... ${USERS.users['${tender_owner}'].modification_data.data.modifications[0]['itemId']} | ||
| 144 | + ... changes[0].modifications[0].itemId | ||
| 145 | + | ||
| 146 | + | ||
| 147 | +Відображення addend у властивостях taxRate | ||
| 148 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 149 | + ... viewer | ||
| 150 | + ... ${USERS.users['${viewer}'].broker} | ||
| 151 | + ... modification_view | ||
| 152 | + ... non-critical | ||
| 153 | + Звірити поле угоди із значенням | ||
| 154 | + ... ${viewer} | ||
| 155 | + ... ${AGREEMENT_UAID} | ||
| 156 | + ... ${USERS.users['${tender_owner}'].modification_data.data.modifications[0]['addend']} | ||
| 157 | + ... changes[0].modifications[0].addend | ||
| 158 | + | ||
| 159 | + | ||
| 160 | +Можливість завантажити документацію в зміну | ||
| 161 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Завантаження документації в угоду | ||
| 162 | + ... tender_owner | ||
| 163 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 164 | + ... add_agreement_doc | ||
| 165 | + ... non-critical | ||
| 166 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 167 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 168 | + Можливість завантажити документ для зміни у рамковій угоді користувачем ${tender_owner} | ||
| 169 | + | ||
| 170 | + | ||
| 171 | +Можливість застосувати зміну договору taxRate | ||
| 172 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 173 | + ... tender_owner | ||
| 174 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 175 | + ... apply_change | ||
| 176 | + ... critical | ||
| 177 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 178 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 179 | + ${dateSigned}= create_fake_date | ||
| 180 | + Run As ${tender_owner} Застосувати зміну для угоди ${AGREEMENT_UAID} ${dateSigned} active | ||
| 181 | + | ||
| 182 | + | ||
| 183 | +Відображення статусу active зміни taxRate | ||
| 184 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 185 | + ... viewer | ||
| 186 | + ... ${USERS.users['${viewer}'].broker} | ||
| 187 | + ... change_view | ||
| 188 | + ... critical | ||
| 189 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 190 | + Звірити поле угоди із значенням | ||
| 191 | + ... ${viewer} | ||
| 192 | + ... ${AGREEMENT_UAID} | ||
| 193 | + ... active | ||
| 194 | + ... changes[0].status | ||
| 195 | + | ||
| 196 | + | ||
| 197 | +Можливість внести зміну до угоди itemPriceVariation | ||
| 198 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 199 | + ... tender_owner | ||
| 200 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 201 | + ... submit_change | ||
| 202 | + ... critical | ||
| 203 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 204 | + ${change_data}= Підготувати дані про зміну до угоди ${tender_owner} itemPriceVariation | ||
| 205 | + Run As ${tender_owner} Внести зміну в угоду ${AGREEMENT_UAID} ${change_data} | ||
| 206 | + | ||
| 207 | + | ||
| 208 | +Відображення типу зміни itemPriceVariation | ||
| 209 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 210 | + ... viewer | ||
| 211 | + ... ${USERS.users['${viewer}'].broker} | ||
| 212 | + ... change_view | ||
| 213 | + ... non-critical | ||
| 214 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 215 | + Звірити поле угоди із значенням | ||
| 216 | + ... ${viewer} | ||
| 217 | + ... ${AGREEMENT_UAID} | ||
| 218 | + ... ${USERS.users['${tender_owner}'].change_data.data.rationaleType} | ||
| 219 | + ... changes[1].rationaleType | ||
| 220 | + | ||
| 221 | + | ||
| 222 | +Відображення обгрунтування зміни itemPriceVariation | ||
| 223 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 224 | + ... viewer | ||
| 225 | + ... ${USERS.users['${viewer}'].broker} | ||
| 226 | + ... change_view | ||
| 227 | + ... non-critical | ||
| 228 | + Звірити поле угоди із значенням | ||
| 229 | + ... ${viewer} | ||
| 230 | + ... ${AGREEMENT_UAID} | ||
| 231 | + ... ${USERS.users['${tender_owner}'].change_data.data.rationale} | ||
| 232 | + ... changes[1].rationale | ||
| 233 | + | ||
| 234 | + | ||
| 235 | +Можливість оновити властивості угоди для внесених змін itemPriceVariation | ||
| 236 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 237 | + ... tender_owner | ||
| 238 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 239 | + ... modification | ||
| 240 | + ... critical | ||
| 241 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 242 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 243 | + ${change_data}= Підготувати дані для оновлення властивості угоди ${tender_owner} factor ${1.1} | ||
| 244 | + Run As ${tender_owner} Оновити властивості угоди ${AGREEMENT_UAID} ${change_data} | ||
| 245 | + | ||
| 246 | + | ||
| 247 | +Відображення ідентифікатора предмету у властивостях itemPriceVariation | ||
| 248 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 249 | + ... viewer | ||
| 250 | + ... ${USERS.users['${viewer}'].broker} | ||
| 251 | + ... modification_view | ||
| 252 | + ... non-critical | ||
| 253 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 254 | + Звірити поле угоди із значенням | ||
| 255 | + ... ${viewer} | ||
| 256 | + ... ${AGREEMENT_UAID} | ||
| 257 | + ... ${USERS.users['${tender_owner}'].modification_data.data.modifications[0]['itemId']} | ||
| 258 | + ... changes[1].modifications[0].itemId | ||
| 259 | + | ||
| 260 | + | ||
| 261 | +Відображення factor у властивостях itemPriceVariation | ||
| 262 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 263 | + ... viewer | ||
| 264 | + ... ${USERS.users['${viewer}'].broker} | ||
| 265 | + ... modification_view | ||
| 266 | + ... non-critical | ||
| 267 | + Звірити поле угоди із значенням | ||
| 268 | + ... ${viewer} | ||
| 269 | + ... ${AGREEMENT_UAID} | ||
| 270 | + ... ${USERS.users['${tender_owner}'].modification_data.data.modifications[0]['factor']} | ||
| 271 | + ... changes[1].modifications[0].factor | ||
| 272 | + | ||
| 273 | + | ||
| 274 | +Можливість скасувати зміну договору itemPriceVariation | ||
| 275 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 276 | + ... tender_owner | ||
| 277 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 278 | + ... apply_change | ||
| 279 | + ... critical | ||
| 280 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 281 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 282 | + ${dateSigned}= create_fake_date | ||
| 283 | + Run As ${tender_owner} Застосувати зміну для угоди ${AGREEMENT_UAID} ${dateSigned} cancelled | ||
| 284 | + | ||
| 285 | + | ||
| 286 | +Відображення статусу cancelled зміни itemPriceVariation | ||
| 287 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 288 | + ... viewer | ||
| 289 | + ... ${USERS.users['${viewer}'].broker} | ||
| 290 | + ... change_view | ||
| 291 | + ... critical | ||
| 292 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 293 | + Звірити поле угоди із значенням | ||
| 294 | + ... ${viewer} | ||
| 295 | + ... ${AGREEMENT_UAID} | ||
| 296 | + ... cancelled | ||
| 297 | + ... changes[1].status | ||
| 298 | + | ||
| 299 | + | ||
| 300 | +Можливість внести зміну до угоди thirdParty | ||
| 301 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 302 | + ... tender_owner | ||
| 303 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 304 | + ... submit_change | ||
| 305 | + ... critical | ||
| 306 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 307 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 308 | + ${change_data}= Підготувати дані про зміну до угоди ${tender_owner} thirdParty | ||
| 309 | + Run As ${tender_owner} Внести зміну в угоду ${AGREEMENT_UAID} ${change_data} | ||
| 310 | + | ||
| 311 | + | ||
| 312 | +Відображення типу зміни thirdParty | ||
| 313 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 314 | + ... viewer | ||
| 315 | + ... ${USERS.users['${viewer}'].broker} | ||
| 316 | + ... change_view | ||
| 317 | + ... non-critical | ||
| 318 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 319 | + Звірити поле угоди із значенням | ||
| 320 | + ... ${viewer} | ||
| 321 | + ... ${AGREEMENT_UAID} | ||
| 322 | + ... ${USERS.users['${tender_owner}'].change_data.data.rationaleType} | ||
| 323 | + ... changes[2].rationaleType | ||
| 324 | + | ||
| 325 | + | ||
| 326 | +Відображення обгрунтування зміни thirdParty | ||
| 327 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 328 | + ... viewer | ||
| 329 | + ... ${USERS.users['${viewer}'].broker} | ||
| 330 | + ... change_view | ||
| 331 | + ... non-critical | ||
| 332 | + Звірити поле угоди із значенням | ||
| 333 | + ... ${viewer} | ||
| 334 | + ... ${AGREEMENT_UAID} | ||
| 335 | + ... ${USERS.users['${tender_owner}'].change_data.data.rationale} | ||
| 336 | + ... changes[2].rationale | ||
| 337 | + | ||
| 338 | + | ||
| 339 | +Можливість оновити властивості угоди для внесених змін thirdParty | ||
| 340 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 341 | + ... tender_owner | ||
| 342 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 343 | + ... modification | ||
| 344 | + ... critical | ||
| 345 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 346 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 347 | + Log ${USERS.users['${tender_owner}'].agreement_data} | ||
| 348 | + ${change_data}= Підготувати дані для оновлення властивості угоди ${tender_owner} factor ${0.97} | ||
| 349 | + Run As ${tender_owner} Оновити властивості угоди ${AGREEMENT_UAID} ${change_data} | ||
| 350 | + | ||
| 351 | + | ||
| 352 | +Відображення ідентифікатора предмету у властивостях thirdParty | ||
| 353 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 354 | + ... viewer | ||
| 355 | + ... ${USERS.users['${viewer}'].broker} | ||
| 356 | + ... modification_view | ||
| 357 | + ... non-critical | ||
| 358 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 359 | + Звірити поле угоди із значенням | ||
| 360 | + ... ${viewer} | ||
| 361 | + ... ${AGREEMENT_UAID} | ||
| 362 | + ... ${USERS.users['${tender_owner}'].modification_data.data.modifications[0]['itemId']} | ||
| 363 | + ... changes[2].modifications[0].itemId | ||
| 364 | + | ||
| 365 | + | ||
| 366 | +Відображення factor у властивостях thirdParty | ||
| 367 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 368 | + ... viewer | ||
| 369 | + ... ${USERS.users['${viewer}'].broker} | ||
| 370 | + ... modification_view | ||
| 371 | + ... non-critical | ||
| 372 | + Звірити поле угоди із значенням | ||
| 373 | + ... ${viewer} | ||
| 374 | + ... ${AGREEMENT_UAID} | ||
| 375 | + ... ${USERS.users['${tender_owner}'].modification_data.data.modifications[0]['factor']} | ||
| 376 | + ... changes[2].modifications[0].factor | ||
| 377 | + | ||
| 378 | + | ||
| 379 | +Можливість застосувати зміну договору thirdParty | ||
| 380 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 381 | + ... tender_owner | ||
| 382 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 383 | + ... apply_change | ||
| 384 | + ... critical | ||
| 385 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 386 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 387 | + ${dateSigned}= create_fake_date | ||
| 388 | + Run As ${tender_owner} Застосувати зміну для угоди ${AGREEMENT_UAID} ${dateSigned} active | ||
| 389 | + | ||
| 390 | + | ||
| 391 | +Відображення статусу active зміни thirdParty | ||
| 392 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 393 | + ... viewer | ||
| 394 | + ... ${USERS.users['${viewer}'].broker} | ||
| 395 | + ... change_view | ||
| 396 | + ... critical | ||
| 397 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 398 | + Звірити поле угоди із значенням | ||
| 399 | + ... ${viewer} | ||
| 400 | + ... ${AGREEMENT_UAID} | ||
| 401 | + ... active | ||
| 402 | + ... changes[2].status | ||
| 403 | + | ||
| 404 | + | ||
| 405 | +Можливість внести зміну до угоди partyWithdrawal | ||
| 406 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 407 | + ... tender_owner | ||
| 408 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 409 | + ... submit_change | ||
| 410 | + ... critical | ||
| 411 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 412 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 413 | + ${change_data}= Підготувати дані про зміну до угоди ${tender_owner} partyWithdrawal | ||
| 414 | + Run As ${tender_owner} Внести зміну в угоду ${AGREEMENT_UAID} ${change_data} | ||
| 415 | + | ||
| 416 | + | ||
| 417 | +Відображення типу зміни partyWithdrawal | ||
| 418 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 419 | + ... viewer | ||
| 420 | + ... ${USERS.users['${viewer}'].broker} | ||
| 421 | + ... change_view | ||
| 422 | + ... non-critical | ||
| 423 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 424 | + Звірити поле угоди із значенням | ||
| 425 | + ... ${viewer} | ||
| 426 | + ... ${AGREEMENT_UAID} | ||
| 427 | + ... ${USERS.users['${tender_owner}'].change_data.data.rationaleType} | ||
| 428 | + ... changes[3].rationaleType | ||
| 429 | + | ||
| 430 | + | ||
| 431 | +Відображення обгрунтування зміни partyWithdrawal | ||
| 432 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 433 | + ... viewer | ||
| 434 | + ... ${USERS.users['${viewer}'].broker} | ||
| 435 | + ... change_view | ||
| 436 | + ... non-critical | ||
| 437 | + Звірити поле угоди із значенням | ||
| 438 | + ... ${viewer} | ||
| 439 | + ... ${AGREEMENT_UAID} | ||
| 440 | + ... ${USERS.users['${tender_owner}'].change_data.data.rationale} | ||
| 441 | + ... changes[3].rationale | ||
| 442 | + | ||
| 443 | + | ||
| 444 | +Можливість оновити властивості угоди для внесених змін partyWithdrawal | ||
| 445 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 446 | + ... tender_owner | ||
| 447 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 448 | + ... modification | ||
| 449 | + ... critical | ||
| 450 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 451 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 452 | + ${change_data}= Підготувати дані для оновлення властивості угоди | ||
| 453 | + ... ${tender_owner} | ||
| 454 | + ... contractId | ||
| 455 | + ... ${USERS.users['${tender_owner}'].agreement_data.data['contracts'][0]['id']} | ||
| 456 | + Run As ${tender_owner} Оновити властивості угоди ${AGREEMENT_UAID} ${change_data} | ||
| 457 | + | ||
| 458 | + | ||
| 459 | +Відображення ідентифікатора предмету у властивостях partyWithdrawal | ||
| 460 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 461 | + ... viewer | ||
| 462 | + ... ${USERS.users['${viewer}'].broker} | ||
| 463 | + ... modification_view | ||
| 464 | + ... non-critical | ||
| 465 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 466 | + Звірити поле угоди із значенням | ||
| 467 | + ... ${viewer} | ||
| 468 | + ... ${AGREEMENT_UAID} | ||
| 469 | + ... ${USERS.users['${tender_owner}'].modification_data.data.modifications[0]['itemId']} | ||
| 470 | + ... changes[3].modifications[0].itemId | ||
| 471 | + | ||
| 472 | + | ||
| 473 | +Відображення contractId у властивостях partyWithdrawal | ||
| 474 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 475 | + ... viewer | ||
| 476 | + ... ${USERS.users['${viewer}'].broker} | ||
| 477 | + ... modification_view | ||
| 478 | + ... non-critical | ||
| 479 | + Звірити поле угоди із значенням | ||
| 480 | + ... ${viewer} | ||
| 481 | + ... ${AGREEMENT_UAID} | ||
| 482 | + ... ${USERS.users['${tender_owner}'].modification_data.data.modifications[0]['contractId']} | ||
| 483 | + ... changes[3].modifications[0].contractId | ||
| 484 | + | ||
| 485 | + | ||
| 486 | +Можливість скасувати зміну договору partyWithdrawal | ||
| 487 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Внесення зміни | ||
| 488 | + ... tender_owner | ||
| 489 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 490 | + ... apply_change | ||
| 491 | + ... critical | ||
| 492 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 493 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 494 | + ${dateSigned}= create_fake_date | ||
| 495 | + Run As ${tender_owner} Застосувати зміну для угоди ${AGREEMENT_UAID} ${dateSigned} cancelled | ||
| 496 | + | ||
| 497 | + | ||
| 498 | +Відображення статусу cancelled зміни partyWithdrawal | ||
| 499 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення зміни | ||
| 500 | + ... viewer | ||
| 501 | + ... ${USERS.users['${viewer}'].broker} | ||
| 502 | + ... change_view | ||
| 503 | + ... critical | ||
| 504 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 505 | + Звірити поле угоди із значенням | ||
| 506 | + ... ${viewer} | ||
| 507 | + ... ${AGREEMENT_UAID} | ||
| 508 | + ... cancelled | ||
| 509 | + ... changes[3].status | ||
| 510 | + | ||
| 511 | + | ||
| 512 | +Можливість завершити угоду | ||
| 513 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Завершення угоди | ||
| 514 | + ... tender_owner | ||
| 515 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 516 | + ... agreement_termination | ||
| 517 | + ... critical | ||
| 518 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 519 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 520 | + Run As ${tender_owner} Завершити угоду ${AGREEMENT_UAID} | ||
| 521 | + | ||
| 522 | + | ||
| 523 | +Звірити статус завершеної угоди | ||
| 524 | + [Tags] ${USERS.users['${viewer}'].broker}: Завершення угоди | ||
| 525 | + ... viewer | ||
| 526 | + ... ${USERS.users['${viewer}'].broker} | ||
| 527 | + ... agreement_termination | ||
| 528 | + ... critical | ||
| 529 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 530 | + Remove From Dictionary ${USERS.users['${viewer}'].agreement_data.data} status | ||
| 531 | + Звірити поле угоди із значенням | ||
| 532 | + ... ${viewer} | ||
| 533 | + ... ${AGREEMENT_UAID} | ||
| 534 | + ... terminated | ||
| 535 | + ... status |
| @@ -29,6 +29,29 @@ Resource resource.robot | @@ -29,6 +29,29 @@ Resource resource.robot | ||
| 29 | Set To Dictionary ${TENDER} TENDER_UAID=${TENDER_UAID} | 29 | Set To Dictionary ${TENDER} TENDER_UAID=${TENDER_UAID} |
| 30 | 30 | ||
| 31 | 31 | ||
| 32 | +Можливість оголосити тендер другого етапу | ||
| 33 | + ${NUMBER_OF_LOTS}= Convert To Integer ${NUMBER_OF_LOTS} | ||
| 34 | + ${NUMBER_OF_ITEMS}= Convert To Integer ${NUMBER_OF_ITEMS} | ||
| 35 | + ${tender_parameters}= Create Dictionary | ||
| 36 | + ... mode=${MODE} | ||
| 37 | + ... number_of_items=${NUMBER_OF_ITEMS} | ||
| 38 | + ... number_of_lots=${NUMBER_OF_LOTS} | ||
| 39 | + ... tender_meat=${${TENDER_MEAT}} | ||
| 40 | + ... lot_meat=${${LOT_MEAT}} | ||
| 41 | + ... item_meat=${${ITEM_MEAT}} | ||
| 42 | + ... api_host_url=${API_HOST_URL} | ||
| 43 | + ... moz_integration=${${MOZ_INTEGRATION}} | ||
| 44 | + ${submissionMethodDetails}= Get Variable Value ${submissionMethodDetails} | ||
| 45 | + ${period_intervals}= compute_intrs ${BROKERS} ${used_brokers} | ||
| 46 | + ${first_stage}= Run As ${provider2} Пошук тендера по ідентифікатору ${TENDER['TENDER_UAID']} | ||
| 47 | + ${tender_data}= test_tender_data_selection ${period_intervals} ${tender_parameters} ${submissionMethodDetails} tender_data=${first_stage} | ||
| 48 | + ${adapted_data}= Адаптувати дані для оголошення тендера ${tender_data} | ||
| 49 | + ${TENDER_UAID}= Run As ${tender_owner} Створити тендер ${adapted_data} | ||
| 50 | + Set To Dictionary ${USERS.users['${tender_owner}']} initial_data=${adapted_data} | ||
| 51 | + Set To Dictionary ${TENDER} TENDER_UAID=${TENDER_UAID} | ||
| 52 | + Дочекатись дати початку періоду уточнення ${tender_owner} ${TENDER_UAID} | ||
| 53 | + | ||
| 54 | + | ||
| 32 | Можливість створити об'єкт моніторингу | 55 | Можливість створити об'єкт моніторингу |
| 33 | ${period_intervals}= compute_intrs ${BROKERS} ${used_brokers} | 56 | ${period_intervals}= compute_intrs ${BROKERS} ${used_brokers} |
| 34 | ${accelerator}= Get Variable Value ${accelerator} | 57 | ${accelerator}= Get Variable Value ${accelerator} |
| @@ -683,6 +706,27 @@ Resource resource.robot | @@ -683,6 +706,27 @@ Resource resource.robot | ||
| 683 | ... object_id=${feature_id} | 706 | ... object_id=${feature_id} |
| 684 | 707 | ||
| 685 | 708 | ||
| 709 | +Отримати дані із поля ${field_name} нецінових показників для усіх користувачів | ||
| 710 | + :FOR ${username} IN ${viewer} ${tender_owner} ${provider} ${provider1} | ||
| 711 | + \ Отримати дані із поля ${field_name} нецінових показників для користувача ${username} | ||
| 712 | + | ||
| 713 | + | ||
| 714 | +Отримати дані із поля ${field_name} нецінових показників для користувача ${username} | ||
| 715 | + ${number_of_features}= Get Length ${USERS.users['${provider2}'].tender_data.data.features} | ||
| 716 | + :FOR ${feature_index} IN RANGE ${number_of_features} | ||
| 717 | + \ Отримати дані із нецінового показника ${username} ${TENDER['TENDER_UAID']} features[${feature_index}].${field_name} | ||
| 718 | + | ||
| 719 | + | ||
| 720 | +Отримати дані із нецінового показника | ||
| 721 | + [Arguments] ${username} ${tender_uaid} ${field_name} | ||
| 722 | + ${field_value}= Run As ${username} Отримати інформацію із тендера ${tender_uaid} ${field_name} | ||
| 723 | + Set_To_Object ${USERS.users['${username}'].tender_data.data} ${field_name} ${field_value} | ||
| 724 | + ${data}= munch_dict arg=${USERS.users['${username}'].tender_data.data} | ||
| 725 | + Set To Dictionary ${USERS.users['${username}'].tender_data} data=${data} | ||
| 726 | + Log ${USERS.users['${username}'].tender_data.data} | ||
| 727 | + [return] ${field_value} | ||
| 728 | + | ||
| 729 | + | ||
| 686 | Можливість видалити ${feature_index} неціновий показник | 730 | Можливість видалити ${feature_index} неціновий показник |
| 687 | ${feature_id}= get_id_from_object ${USERS.users['${tender_owner}'].tender_data.data['features'][${feature_index}]} | 731 | ${feature_id}= get_id_from_object ${USERS.users['${tender_owner}'].tender_data.data['features'][${feature_index}]} |
| 688 | Run As ${tender_owner} Видалити неціновий показник ${TENDER['TENDER_UAID']} ${feature_id} | 732 | Run As ${tender_owner} Видалити неціновий показник ${TENDER['TENDER_UAID']} ${feature_id} |
| @@ -1267,6 +1311,18 @@ Resource resource.robot | @@ -1267,6 +1311,18 @@ Resource resource.robot | ||
| 1267 | Run As ${username} Подати цінову пропозицію ${TENDER['TENDER_UAID']} ${bid} ${lots_ids} ${features_ids} | 1311 | Run As ${username} Подати цінову пропозицію ${TENDER['TENDER_UAID']} ${bid} ${lots_ids} ${features_ids} |
| 1268 | 1312 | ||
| 1269 | 1313 | ||
| 1314 | +Можливість подати цінову пропозицію на другому етапі рамкової угоди користувачем | ||
| 1315 | + [Arguments] ${username} ${index}=${0} | ||
| 1316 | + ${bid}= Підготувати дані для подання пропозиції другого етапу рамкової угоди ${index} | ||
| 1317 | + ${bidresponses}= Create Dictionary bid=${bid} | ||
| 1318 | + Set To Dictionary ${USERS.users['${username}']} bidresponses=${bidresponses} | ||
| 1319 | + ${lots}= Get Variable Value ${USERS.users['${tender_owner}'].initial_data.data.lots} ${None} | ||
| 1320 | + ${lots_ids}= Run Keyword IF ${lots} | ||
| 1321 | + ... Отримати ідентифікатори об’єктів ${username} lots | ||
| 1322 | + ... ELSE Set Variable ${None} | ||
| 1323 | + Run As ${username} Подати цінову пропозицію ${TENDER['TENDER_UAID']} ${bid} ${lots_ids} | ||
| 1324 | + | ||
| 1325 | + | ||
| 1270 | Можливість подати цінову пропозицію на другий етап користувачем ${username} | 1326 | Можливість подати цінову пропозицію на другий етап користувачем ${username} |
| 1271 | ${bid}= Підготувати дані для подання пропозиції для другого етапу ${username} | 1327 | ${bid}= Підготувати дані для подання пропозиції для другого етапу ${username} |
| 1272 | ${bidresponses}= Create Dictionary bid=${bid} | 1328 | ${bidresponses}= Create Dictionary bid=${bid} |
| @@ -1365,6 +1421,33 @@ Resource resource.robot | @@ -1365,6 +1421,33 @@ Resource resource.robot | ||
| 1365 | Remove File ${file_path} | 1421 | Remove File ${file_path} |
| 1366 | 1422 | ||
| 1367 | 1423 | ||
| 1424 | +Можливість завантажити документ для рамкової угоди користувачем ${username} | ||
| 1425 | + ${file_path} ${file_name} ${file_content}= create_fake_doc | ||
| 1426 | + ${doc_id}= get_id_from_string ${file_name} | ||
| 1427 | + ${doc}= Create Dictionary | ||
| 1428 | + ... id=${doc_id} | ||
| 1429 | + ... name=${file_name} | ||
| 1430 | + ... content=${file_content} | ||
| 1431 | + Set to dictionary ${USERS.users['${username}']} contract_doc=${doc} | ||
| 1432 | + Run As ${username} Завантажити документ в рамкову угоду ${file_path} ${USERS.users['${username}'].tender_data.data.agreements[0].agreementID} | ||
| 1433 | + Remove File ${file_path} | ||
| 1434 | + | ||
| 1435 | + | ||
| 1436 | +Можливість завантажити документ для зміни у рамковій угоді користувачем ${username} | ||
| 1437 | + ${file_path} ${file_name} ${file_content}= create_fake_doc | ||
| 1438 | + ${doc_id}= get_id_from_string ${file_name} | ||
| 1439 | + ${doc}= Create Dictionary | ||
| 1440 | + ... id=${doc_id} | ||
| 1441 | + ... name=${file_name} | ||
| 1442 | + ... content=${file_content} | ||
| 1443 | + Set to dictionary ${USERS.users['${username}']} contract_doc=${doc} | ||
| 1444 | + Run As ${username} Завантажити документ для зміни у рамковій угоді | ||
| 1445 | + ... ${file_path} | ||
| 1446 | + ... ${USERS.users['${username}'].tender_data.data.agreements[0].agreementID} | ||
| 1447 | + ... ${USERS.users['${username}'].agreement_data.data['items'][0]['id']} | ||
| 1448 | + Remove File ${file_path} | ||
| 1449 | + | ||
| 1450 | + | ||
| 1368 | Можливість укласти угоду для закупівлі | 1451 | Можливість укласти угоду для закупівлі |
| 1369 | Run as ${tender_owner} | 1452 | Run as ${tender_owner} |
| 1370 | ... Підтвердити підписання контракту | 1453 | ... Підтвердити підписання контракту |
| @@ -43,6 +43,19 @@ Library openprocurement_client.utils | @@ -43,6 +43,19 @@ Library openprocurement_client.utils | ||
| 43 | [return] ${monitoring_id} | 43 | [return] ${monitoring_id} |
| 44 | 44 | ||
| 45 | 45 | ||
| 46 | +Отримати internal id угоди по UAid | ||
| 47 | + [Arguments] ${username} ${agreement_uaid} | ||
| 48 | + Log ${username} | ||
| 49 | + Log ${agreement_uaid} | ||
| 50 | + Log Many ${USERS.users['${username}'].id_map} | ||
| 51 | + ${status}= Run Keyword And Return Status Dictionary Should Contain Key ${USERS.users['${username}'].id_map} ${agreement_uaid} | ||
| 52 | + Run Keyword And Return If ${status} Get From Dictionary ${USERS.users['${username}'].id_map} ${agreement_uaid} | ||
| 53 | + Call Method ${USERS.users['${username}'].agreement_client} get_agreements | ||
| 54 | + ${agreement_id}= Wait Until Keyword Succeeds 5x 30 sec get_agreement_id_by_uaid ${agreement_uaid} ${USERS.users['${username}'].agreement_client} | ||
| 55 | + Set To Dictionary ${USERS.users['${username}'].id_map} ${agreement_uaid} ${agreement_id} | ||
| 56 | + [return] ${agreement_id} | ||
| 57 | + | ||
| 58 | + | ||
| 46 | Підготувати клієнт для користувача | 59 | Підготувати клієнт для користувача |
| 47 | [Arguments] ${username} | 60 | [Arguments] ${username} |
| 48 | [Documentation] Відкрити браузер, створити об’єкти api wrapper і | 61 | [Documentation] Відкрити браузер, створити об’єкти api wrapper і |
| @@ -62,7 +75,9 @@ Library openprocurement_client.utils | @@ -62,7 +75,9 @@ Library openprocurement_client.utils | ||
| 62 | ... prepare_plan_api_wrapper ${USERS.users['${username}'].api_key} PLANS ${API_HOST_URL} ${API_VERSION} | 75 | ... prepare_plan_api_wrapper ${USERS.users['${username}'].api_key} PLANS ${API_HOST_URL} ${API_VERSION} |
| 63 | ... ELSE prepare_api_wrapper ${USERS.users['${username}'].api_key} ${RESOURCE} ${API_HOST_URL} ${API_VERSION} ${ds_api_wraper} | 76 | ... ELSE prepare_api_wrapper ${USERS.users['${username}'].api_key} ${RESOURCE} ${API_HOST_URL} ${API_VERSION} ${ds_api_wraper} |
| 64 | ${dasu_api_wraper}= prepare_dasu_api_wrapper ${USERS.users['${username}'].dasu_api_key} ${DASU_RESOURCE} ${DASU_API_HOST_URL} ${DASU_API_VERSION} ${ds_api_wraper} | 77 | ${dasu_api_wraper}= prepare_dasu_api_wrapper ${USERS.users['${username}'].dasu_api_key} ${DASU_RESOURCE} ${DASU_API_HOST_URL} ${DASU_API_VERSION} ${ds_api_wraper} |
| 78 | + ${agreement_wrapper}= prepare_agreement_api_wrapper ${USERS.users['${username}'].api_key} AGREEMENTS ${API_HOST_URL} ${API_VERSION} ${ds_api_wraper} | ||
| 65 | Set To Dictionary ${USERS.users['${username}']} client=${api_wrapper} | 79 | Set To Dictionary ${USERS.users['${username}']} client=${api_wrapper} |
| 80 | + Set To Dictionary ${USERS.users['${username}']} agreement_client=${agreement_wrapper} | ||
| 66 | Set To Dictionary ${USERS.users['${username}']} dasu_client=${dasu_api_wraper} | 81 | Set To Dictionary ${USERS.users['${username}']} dasu_client=${dasu_api_wraper} |
| 67 | Set To Dictionary ${USERS.users['${username}']} access_token=${EMPTY} | 82 | Set To Dictionary ${USERS.users['${username}']} access_token=${EMPTY} |
| 68 | ${id_map}= Create Dictionary | 83 | ${id_map}= Create Dictionary |
| @@ -75,6 +90,8 @@ Library openprocurement_client.utils | @@ -75,6 +90,8 @@ Library openprocurement_client.utils | ||
| 75 | ${contract_api_wrapper}= prepare_contract_api_wrapper ${USERS.users['${username}'].api_key} CONTRACTS ${api_host_url} ${api_version} ${ds_api_wraper} | 90 | ${contract_api_wrapper}= prepare_contract_api_wrapper ${USERS.users['${username}'].api_key} CONTRACTS ${api_host_url} ${api_version} ${ds_api_wraper} |
| 76 | Set To Dictionary ${USERS.users['${username}']} contracting_client=${contract_api_wrapper} | 91 | Set To Dictionary ${USERS.users['${username}']} contracting_client=${contract_api_wrapper} |
| 77 | Set To Dictionary ${USERS.users['${username}']} contract_access_token=${EMPTY} | 92 | Set To Dictionary ${USERS.users['${username}']} contract_access_token=${EMPTY} |
| 93 | + Set To Dictionary ${USERS.users['${username}']} agreement_access_token=${EMPTY} | ||
| 94 | + ${contracts_id_map}= Create Dictionary | ||
| 78 | ${contracts_id_map}= Create Dictionary | 95 | ${contracts_id_map}= Create Dictionary |
| 79 | Set To Dictionary ${USERS.users['${username}']} contracts_id_map=${contracts_id_map} | 96 | Set To Dictionary ${USERS.users['${username}']} contracts_id_map=${contracts_id_map} |
| 80 | Log Variables | 97 | Log Variables |
| @@ -167,6 +184,7 @@ Library openprocurement_client.utils | @@ -167,6 +184,7 @@ Library openprocurement_client.utils | ||
| 167 | ${access_token}= Get Variable Value ${tender.access.token} | 184 | ${access_token}= Get Variable Value ${tender.access.token} |
| 168 | ${status}= Set Variable If 'open' in '${MODE}' active.tendering ${EMPTY} | 185 | ${status}= Set Variable If 'open' in '${MODE}' active.tendering ${EMPTY} |
| 169 | ${status}= Set Variable If 'below' in '${MODE}' active.enquiries ${status} | 186 | ${status}= Set Variable If 'below' in '${MODE}' active.enquiries ${status} |
| 187 | + ${status}= Set Variable If 'selection' in '${MODE}' draft.pending ${status} | ||
| 170 | ${status}= Set Variable If '${status}'=='${EMPTY}' active ${status} | 188 | ${status}= Set Variable If '${status}'=='${EMPTY}' active ${status} |
| 171 | Set To Dictionary ${tender['data']} status=${status} | 189 | Set To Dictionary ${tender['data']} status=${status} |
| 172 | ${tender}= Call Method ${USERS.users['${username}'].client} patch_tender | 190 | ${tender}= Call Method ${USERS.users['${username}'].client} patch_tender |
| @@ -258,6 +276,16 @@ Library openprocurement_client.utils | @@ -258,6 +276,16 @@ Library openprocurement_client.utils | ||
| 258 | [return] ${monitoring} | 276 | [return] ${monitoring} |
| 259 | 277 | ||
| 260 | 278 | ||
| 279 | +Пошук угоди по ідентифікатору | ||
| 280 | + [Arguments] ${username} ${agreement_uaid} ${save_key}=agreement_data | ||
| 281 | + ${internalid}= openprocurement_client.Отримати internal id угоди по UAid ${username} ${agreement_uaid} | ||
| 282 | + ${agreement}= Call Method ${USERS.users['${username}'].agreement_client} get_agreement ${internalid} | ||
| 283 | + Set To Dictionary ${USERS.users['${username}']} ${save_key}=${agreement} | ||
| 284 | + ${agreement}= munch_dict arg=${agreement} | ||
| 285 | + Log ${agreement} | ||
| 286 | + [return] ${agreement} | ||
| 287 | + | ||
| 288 | + | ||
| 261 | Отримати доступ до об'єкта моніторингу | 289 | Отримати доступ до об'єкта моніторингу |
| 262 | [Arguments] ${username} ${monitoring_uaid} ${save_key}=monitoring | 290 | [Arguments] ${username} ${monitoring_uaid} ${save_key}=monitoring |
| 263 | ${token}= Set Variable ${USERS.users['${username}'].access_token} | 291 | ${token}= Set Variable ${USERS.users['${username}'].access_token} |
| @@ -1295,7 +1323,7 @@ Library openprocurement_client.utils | @@ -1295,7 +1323,7 @@ Library openprocurement_client.utils | ||
| 1295 | 1323 | ||
| 1296 | 1324 | ||
| 1297 | Завантажити документ в ставку | 1325 | Завантажити документ в ставку |
| 1298 | - [Arguments] ${username} ${path} ${tender_uaid} ${doc_type}=documents | 1326 | + [Arguments] ${username} ${path} ${tender_uaid} ${doc_name}=documents ${doc_type}=${None} |
| 1299 | ${bid_id}= Get Variable Value ${USERS.users['${username}'].bidresponses['bid'].data.id} | 1327 | ${bid_id}= Get Variable Value ${USERS.users['${username}'].bidresponses['bid'].data.id} |
| 1300 | ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid} | 1328 | ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid} |
| 1301 | ${tender}= set_access_key ${tender} ${USERS.users['${username}']['access_token']} | 1329 | ${tender}= set_access_key ${tender} ${USERS.users['${username}']['access_token']} |
| @@ -1303,7 +1331,9 @@ Library openprocurement_client.utils | @@ -1303,7 +1331,9 @@ Library openprocurement_client.utils | ||
| 1303 | ... ${path} | 1331 | ... ${path} |
| 1304 | ... ${tender.data.id} | 1332 | ... ${tender.data.id} |
| 1305 | ... ${bid_id} | 1333 | ... ${bid_id} |
| 1334 | + ... doc_type=${doc_type} | ||
| 1306 | ... access_token=${tender.access.token} | 1335 | ... access_token=${tender.access.token} |
| 1336 | + ... subitem_name=${doc_name} | ||
| 1307 | ${uploaded_file} = Create Dictionary | 1337 | ${uploaded_file} = Create Dictionary |
| 1308 | ... filepath=${path} | 1338 | ... filepath=${path} |
| 1309 | ... upload_response=${response} | 1339 | ... upload_response=${response} |
| @@ -2039,3 +2069,102 @@ Library openprocurement_client.utils | @@ -2039,3 +2069,102 @@ Library openprocurement_client.utils | ||
| 2039 | ${document}= get_document_by_id ${tender.data} ${doc_id} | 2069 | ${document}= get_document_by_id ${tender.data} ${doc_id} |
| 2040 | ${filename}= download_file_from_url ${document.url} ${OUTPUT_DIR}${/}${document.title} | 2070 | ${filename}= download_file_from_url ${document.url} ${OUTPUT_DIR}${/}${document.title} |
| 2041 | [return] ${filename} | 2071 | [return] ${filename} |
| 2072 | + | ||
| 2073 | + | ||
| 2074 | +Отримати доступ до угоди | ||
| 2075 | + [Arguments] ${username} ${agreement_uaid} | ||
| 2076 | + ${token}= Set Variable ${USERS.users['${username}'].access_token} | ||
| 2077 | + ${internalid}= openprocurement_client.Отримати internal id угоди по UAid ${username} ${agreement_uaid} | ||
| 2078 | + ${agreement}= Call Method ${USERS.users['${username}'].agreement_client} patch_credentials ${internalid} ${token} | ||
| 2079 | + Set To Dictionary ${USERS.users['${username}']} agreement_access_token=${agreement.access.token} | ||
| 2080 | + ${agreement}= munch_dict arg=${agreement} | ||
| 2081 | + [return] ${agreement} | ||
| 2082 | + | ||
| 2083 | + | ||
| 2084 | +Внести зміну в угоду | ||
| 2085 | + [Arguments] ${username} ${agreement_uaid} ${change_data} | ||
| 2086 | + ${internalid}= openprocurement_client.Отримати internal id угоди по UAid ${username} ${agreement_uaid} | ||
| 2087 | + ${reply}= Call Method ${USERS.users['${username}'].agreement_client} create_change | ||
| 2088 | + ... ${internalid} | ||
| 2089 | + ... ${change_data} | ||
| 2090 | + ... access_token=${USERS.users['${username}'].agreement_access_token} | ||
| 2091 | + Log ${reply} | ||
| 2092 | + | ||
| 2093 | + | ||
| 2094 | +Застосувати зміну для угоди | ||
| 2095 | + [Arguments] ${username} ${agreement_uaid} ${dateSigned} ${status} | ||
| 2096 | + ${agreement}= openprocurement_client.Пошук угоди по ідентифікатору ${username} ${agreement_uaid} | ||
| 2097 | + ${data}= Create Dictionary status=${status} dateSigned=${dateSigned} | ||
| 2098 | + ${data}= Create Dictionary data=${data} | ||
| 2099 | + ${reply}= Call Method ${USERS.users['${username}'].agreement_client} patch_change | ||
| 2100 | + ... ${agreement.data.id} | ||
| 2101 | + ... ${data} | ||
| 2102 | + ... ${agreement.data.changes[-1].id} | ||
| 2103 | + ... access_token=${USERS.users['${username}'].agreement_access_token} | ||
| 2104 | + Log ${reply} | ||
| 2105 | + | ||
| 2106 | + | ||
| 2107 | +Оновити властивості угоди | ||
| 2108 | + [Arguments] ${username} ${agreement_uaid} ${data} | ||
| 2109 | + ${agreement}= openprocurement_client.Пошук угоди по ідентифікатору ${username} ${agreement_uaid} | ||
| 2110 | + ${reply}= Call Method ${USERS.users['${username}'].agreement_client} patch_change | ||
| 2111 | + ... ${agreement.data.id} | ||
| 2112 | + ... ${data} | ||
| 2113 | + ... ${agreement.data.changes[-1].id} | ||
| 2114 | + ... access_token=${USERS.users['${username}'].agreement_access_token} | ||
| 2115 | + Log ${reply} | ||
| 2116 | + | ||
| 2117 | + | ||
| 2118 | +Завантажити документ в рамкову угоду | ||
| 2119 | + [Arguments] ${username} ${filepath} ${agreement_uaid} | ||
| 2120 | + Log ${username} | ||
| 2121 | + Log ${agreement_uaid} | ||
| 2122 | + Log ${filepath} | ||
| 2123 | + ${agreement}= openprocurement_client.Пошук угоди по ідентифікатору ${username} ${agreement_uaid} | ||
| 2124 | + ${reply}= Call Method ${USERS.users['${username}'].agreement_client} upload_document | ||
| 2125 | + ... ${filepath} | ||
| 2126 | + ... ${agreement.data.id} | ||
| 2127 | + ... access_token=${USERS.users['${username}'].agreement_access_token} | ||
| 2128 | + Log Object Data ${reply} reply | ||
| 2129 | + [return] ${reply} | ||
| 2130 | + | ||
| 2131 | + | ||
| 2132 | +Завантажити документ для зміни у рамковій угоді | ||
| 2133 | + [Arguments] ${username} ${filepath} ${agreement_uaid} ${item_id} | ||
| 2134 | + Log ${username} | ||
| 2135 | + Log ${agreement_uaid} | ||
| 2136 | + Log ${filepath} | ||
| 2137 | + ${agreement}= openprocurement_client.Пошук угоди по ідентифікатору ${username} ${agreement_uaid} | ||
| 2138 | + ${document}= openprocurement_client.Завантажити документ в рамкову угоду ${username} ${filepath} ${agreement_uaid} | ||
| 2139 | + Set to dictionary ${document.data} documentOf=change | ||
| 2140 | + Set to dictionary ${document.data} relatedItem=${item_id} | ||
| 2141 | + ${reply}= Call Method ${USERS.users['${username}'].agreement_client} patch_document | ||
| 2142 | + ... ${agreement.data.id} | ||
| 2143 | + ... ${document} | ||
| 2144 | + ... ${document.data.id} | ||
| 2145 | + ... access_token=${USERS.users['${username}'].agreement_access_token} | ||
| 2146 | + [return] ${reply} | ||
| 2147 | + | ||
| 2148 | + | ||
| 2149 | +Завершити угоду | ||
| 2150 | + [Arguments] ${username} ${agreement_uaid} | ||
| 2151 | + ${internalid}= openprocurement_client.Отримати internal id угоди по UAid ${username} ${agreement_uaid} | ||
| 2152 | + ${data}= Create Dictionary status=terminated | ||
| 2153 | + ${data}= Create Dictionary data=${data} | ||
| 2154 | + ${reply}= Call Method ${USERS.users['${username}'].agreement_client} patch_agreement | ||
| 2155 | + ... ${internalid} | ||
| 2156 | + ... ${data} | ||
| 2157 | + ... access_token=${USERS.users['${username}'].agreement_access_token} | ||
| 2158 | + | ||
| 2159 | + | ||
| 2160 | +Отримати інформацію із угоди | ||
| 2161 | + [Arguments] ${username} ${agreement_uaid} ${field_name} | ||
| 2162 | + openprocurement_client.Пошук угоди по ідентифікатору | ||
| 2163 | + ... ${username} | ||
| 2164 | + ... ${agreement_uaid} | ||
| 2165 | + ${status} ${field_value}= Run Keyword And Ignore Error | ||
| 2166 | + ... Get From Object | ||
| 2167 | + ... ${USERS.users['${username}'].agreement_data.data} | ||
| 2168 | + ... ${field_name} | ||
| 2169 | + Run Keyword If '${status}' == 'PASS' Return From Keyword ${field_value} | ||
| 2170 | + Fail Field not found: ${field_name} |
| 1 | from openprocurement_client.resources.tenders import Client | 1 | from openprocurement_client.resources.tenders import Client |
| 2 | from openprocurement_client.resources.edr import EDRClient | 2 | from openprocurement_client.resources.edr import EDRClient |
| 3 | +from openprocurement_client.resources.agreements import AgreementClient | ||
| 3 | from openprocurement_client.dasu_client import DasuClient | 4 | from openprocurement_client.dasu_client import DasuClient |
| 4 | from openprocurement_client.resources.document_service import DocumentServiceClient | 5 | from openprocurement_client.resources.document_service import DocumentServiceClient |
| 5 | from openprocurement_client.resources.plans import PlansClient | 6 | from openprocurement_client.resources.plans import PlansClient |
| @@ -34,6 +35,13 @@ class StableDsClient(DocumentServiceClient): | @@ -34,6 +35,13 @@ class StableDsClient(DocumentServiceClient): | ||
| 34 | return super(StableDsClient, self).request(*args, **kwargs) | 35 | return super(StableDsClient, self).request(*args, **kwargs) |
| 35 | 36 | ||
| 36 | 37 | ||
| 38 | +class StableAgreementClient(AgreementClient): | ||
| 39 | + @retry(stop_max_attempt_number=100, wait_random_min=500, | ||
| 40 | + wait_random_max=4000, retry_on_exception=retry_if_request_failed) | ||
| 41 | + def request(self, *args, **kwargs): | ||
| 42 | + return super(StableAgreementClient, self).request(*args, **kwargs) | ||
| 43 | + | ||
| 44 | + | ||
| 37 | def prepare_api_wrapper(key, resource, host_url, api_version, ds_client=None): | 45 | def prepare_api_wrapper(key, resource, host_url, api_version, ds_client=None): |
| 38 | return StableClient(key, resource, host_url, api_version, | 46 | return StableClient(key, resource, host_url, api_version, |
| 39 | ds_client=ds_client) | 47 | ds_client=ds_client) |
| @@ -43,6 +51,11 @@ def prepare_ds_api_wrapper(ds_host_url, auth_ds): | @@ -43,6 +51,11 @@ def prepare_ds_api_wrapper(ds_host_url, auth_ds): | ||
| 43 | return StableDsClient(ds_host_url, auth_ds) | 51 | return StableDsClient(ds_host_url, auth_ds) |
| 44 | 52 | ||
| 45 | 53 | ||
| 54 | +def prepare_agreement_api_wrapper(key, resource, host_url, api_version, ds_client=None): | ||
| 55 | + return StableAgreementClient(key, resource, host_url, api_version, | ||
| 56 | + ds_client=ds_client) | ||
| 57 | + | ||
| 58 | + | ||
| 46 | class ContractingStableClient(ContractingClient): | 59 | class ContractingStableClient(ContractingClient): |
| 47 | @retry(stop_max_attempt_number=100, wait_random_min=500, wait_random_max=4000, retry_on_exception=retry_if_request_failed) | 60 | @retry(stop_max_attempt_number=100, wait_random_min=500, wait_random_max=4000, retry_on_exception=retry_if_request_failed) |
| 48 | def request(self, *args, **kwargs): | 61 | def request(self, *args, **kwargs): |
| @@ -26,7 +26,7 @@ Suite Teardown Test Suite Teardown | @@ -26,7 +26,7 @@ Suite Teardown Test Suite Teardown | ||
| 26 | [Tags] ${USERS.users['${tender_owner}'].broker}: Відображення основних даних тендера | 26 | [Tags] ${USERS.users['${tender_owner}'].broker}: Відображення основних даних тендера |
| 27 | ... tender_owner | 27 | ... tender_owner |
| 28 | ... ${USERS.users['${tender_owner}'].broker} | 28 | ... ${USERS.users['${tender_owner}'].broker} |
| 29 | - ... tender_view | 29 | + ... contract_stand_still |
| 30 | ... critical | 30 | ... critical |
| 31 | ${award_index}= Отримати останній індекс awards ${tender_owner} ${viewer} | 31 | ${award_index}= Отримати останній індекс awards ${tender_owner} ${viewer} |
| 32 | :FOR ${username} IN ${viewer} ${tender_owner} | 32 | :FOR ${username} IN ${viewer} ${tender_owner} |
| @@ -177,7 +177,7 @@ Suite Teardown Test Suite Teardown | @@ -177,7 +177,7 @@ Suite Teardown Test Suite Teardown | ||
| 177 | [Tags] ${USERS.users['${viewer}'].broker}: Відображення документації | 177 | [Tags] ${USERS.users['${viewer}'].broker}: Відображення документації |
| 178 | ... viewer | 178 | ... viewer |
| 179 | ... ${USERS.users['${viewer}'].broker} | 179 | ... ${USERS.users['${viewer}'].broker} |
| 180 | - ... add_doc_to_contract | 180 | + ... contract_doc_documentOf |
| 181 | Звірити відображення поля documentOf документа ${USERS.users['${tender_owner}']['contract_doc']['id']} із tender для користувача ${viewer} | 181 | Звірити відображення поля documentOf документа ${USERS.users['${tender_owner}']['contract_doc']['id']} із tender для користувача ${viewer} |
| 182 | 182 | ||
| 183 | 183 |
| @@ -51,6 +51,8 @@ Default: | @@ -51,6 +51,8 @@ Default: | ||
| 51 | open_framework: | 51 | open_framework: |
| 52 | accelerator: 1440 | 52 | accelerator: 1440 |
| 53 | tender: [0, 30] | 53 | tender: [0, 30] |
| 54 | + framework_selection: | ||
| 55 | + accelerator: 360 | ||
| 54 | # Synchronization delay, in seconds | 56 | # Synchronization delay, in seconds |
| 55 | timeout_on_wait: 300 | 57 | timeout_on_wait: 300 |
| 56 | Quinta: | 58 | Quinta: |
| @@ -74,6 +76,8 @@ Quinta: | @@ -74,6 +76,8 @@ Quinta: | ||
| 74 | open_framework: | 76 | open_framework: |
| 75 | accelerator: 1440 | 77 | accelerator: 1440 |
| 76 | tender: [0, 30] | 78 | tender: [0, 30] |
| 79 | + framework_selection: | ||
| 80 | + accelerator: 360 | ||
| 77 | keywords_file: openprocurement_client | 81 | keywords_file: openprocurement_client |
| 78 | roles: | 82 | roles: |
| 79 | provider: Tender_User | 83 | provider: Tender_User |
| @@ -478,6 +478,19 @@ def test_bid_value_esco(tender_data): | @@ -478,6 +478,19 @@ def test_bid_value_esco(tender_data): | ||
| 478 | }) | 478 | }) |
| 479 | 479 | ||
| 480 | 480 | ||
| 481 | +def test_bid_data_selection(data, index): | ||
| 482 | + bid = munchify({ | ||
| 483 | + "data": { | ||
| 484 | + "tenderers": [ | ||
| 485 | + data['agreements'][0]['contracts'][index]['suppliers'][0] | ||
| 486 | + ] | ||
| 487 | + } | ||
| 488 | + }) | ||
| 489 | + bid.data['status'] = 'draft' | ||
| 490 | + bid.data['parameters'] = data['agreements'][0]['contracts'][index]['parameters'] | ||
| 491 | + bid.data['lotValues'] = [test_bid_value(data['lots'][0]['value']['amount'])] | ||
| 492 | + return bid | ||
| 493 | + | ||
| 481 | 494 | ||
| 482 | def test_supplier_data(): | 495 | def test_supplier_data(): |
| 483 | return munchify({ | 496 | return munchify({ |
| @@ -636,6 +649,22 @@ def test_tender_data_competitive_dialogue(params, submissionMethodDetails): | @@ -636,6 +649,22 @@ def test_tender_data_competitive_dialogue(params, submissionMethodDetails): | ||
| 636 | return data | 649 | return data |
| 637 | 650 | ||
| 638 | 651 | ||
| 652 | +def test_tender_data_selection(procedure_intervals, params, submissionMethodDetails, tender_data=None): | ||
| 653 | + intervals = procedure_intervals['framework_selection'] | ||
| 654 | + params['intervals'] = intervals | ||
| 655 | + data = test_tender_data(params, (), submissionMethodDetails) | ||
| 656 | + data['title_en'] = "[TESTING]" | ||
| 657 | + data['procuringEntity'] = tender_data['data']['procuringEntity'] | ||
| 658 | + del data['procuringEntity']['contactPoint']['availableLanguage'] | ||
| 659 | + data['procurementMethodType'] = 'closeFrameworkAgreementSelectionUA' | ||
| 660 | + data['items'] = tender_data['data']['items'] | ||
| 661 | + data['lots'] = tender_data['data']['lots'] | ||
| 662 | + data['agreements'] = [{'id': tender_data['data']['agreements'][0]['id']}] | ||
| 663 | + del data['value'] | ||
| 664 | + del data['minimalStep'] | ||
| 665 | + return munchify({'data':data}) | ||
| 666 | + | ||
| 667 | + | ||
| 639 | def test_change_data(): | 668 | def test_change_data(): |
| 640 | return munchify( | 669 | return munchify( |
| 641 | { | 670 | { |
| @@ -650,6 +679,32 @@ def test_change_data(): | @@ -650,6 +679,32 @@ def test_change_data(): | ||
| 650 | }) | 679 | }) |
| 651 | 680 | ||
| 652 | 681 | ||
| 682 | +def test_agreement_change_data(rationaleType): | ||
| 683 | + return munchify( | ||
| 684 | + { | ||
| 685 | + "data": | ||
| 686 | + { | ||
| 687 | + "rationale": fake.description(), | ||
| 688 | + "rationale_en": fake_en.sentence(nb_words=10, variable_nb_words=True), | ||
| 689 | + "rationale_ru": fake_ru.sentence(nb_words=10, variable_nb_words=True), | ||
| 690 | + "rationaleType": rationaleType, | ||
| 691 | + } | ||
| 692 | + }) | ||
| 693 | + | ||
| 694 | + | ||
| 695 | +def test_modification_data(item_id, field_name, field_value): | ||
| 696 | + data = { | ||
| 697 | + "modifications": [ | ||
| 698 | + { | ||
| 699 | + "itemId": item_id, | ||
| 700 | + field_name: field_value | ||
| 701 | + } | ||
| 702 | + ] | ||
| 703 | + } | ||
| 704 | + return munchify({'data':data}) | ||
| 705 | + | ||
| 706 | + | ||
| 707 | + | ||
| 653 | def get_hash(file_contents): | 708 | def get_hash(file_contents): |
| 654 | return ("md5:"+hashlib.md5(file_contents).hexdigest()) | 709 | return ("md5:"+hashlib.md5(file_contents).hexdigest()) |
| 655 | 710 |
| @@ -294,6 +294,12 @@ Get Broker Property By Username | @@ -294,6 +294,12 @@ Get Broker Property By Username | ||
| 294 | [Return] ${bid} | 294 | [Return] ${bid} |
| 295 | 295 | ||
| 296 | 296 | ||
| 297 | +Підготувати дані для подання пропозиції другого етапу рамкової угоди | ||
| 298 | + [Arguments] ${index}=${0} | ||
| 299 | + ${bid}= test_bid_data_selection ${USERS.users['${provider2}'].tender_data.data} ${index} | ||
| 300 | + [Return] ${bid} | ||
| 301 | + | ||
| 302 | + | ||
| 297 | Підготувати дані для подання пропозиції для другого етапу | 303 | Підготувати дані для подання пропозиції для другого етапу |
| 298 | [Arguments] ${username} | 304 | [Arguments] ${username} |
| 299 | ${value}= Evaluate ${USERS.users['${username}'].bidresponses.bid.data.lotValues[0].value.amount}*0.95 | 305 | ${value}= Evaluate ${USERS.users['${username}'].bidresponses.bid.data.lotValues[0].value.amount}*0.95 |
| @@ -340,6 +346,25 @@ Get Broker Property By Username | @@ -340,6 +346,25 @@ Get Broker Property By Username | ||
| 340 | [Return] ${change_data} | 346 | [Return] ${change_data} |
| 341 | 347 | ||
| 342 | 348 | ||
| 349 | +Підготувати дані про зміну до угоди | ||
| 350 | + [Arguments] ${username} ${rationaleType} | ||
| 351 | + ${change_data}= test_agreement_change_data ${rationaleType} | ||
| 352 | + Set To Dictionary ${USERS.users['${username}']} change_data=${change_data} | ||
| 353 | + Log ${change_data} | ||
| 354 | + [Return] ${change_data} | ||
| 355 | + | ||
| 356 | + | ||
| 357 | +Підготувати дані для оновлення властивості угоди | ||
| 358 | + [Arguments] ${username} ${field_name} ${field_value} | ||
| 359 | + ${modification_data}= test_modification_data | ||
| 360 | + ... ${USERS.users['${username}'].agreement_data.data['items'][0]['id']} | ||
| 361 | + ... ${field_name} | ||
| 362 | + ... ${field_value} | ||
| 363 | + Set To Dictionary ${USERS.users['${username}']} modification_data=${modification_data} | ||
| 364 | + Log ${modification_data} | ||
| 365 | + [Return] ${modification_data} | ||
| 366 | + | ||
| 367 | + | ||
| 343 | Адаптувати дані для оголошення тендера | 368 | Адаптувати дані для оголошення тендера |
| 344 | [Arguments] ${tender_data} | 369 | [Arguments] ${tender_data} |
| 345 | # munchify is used to make deep copy of ${tender_data} | 370 | # munchify is used to make deep copy of ${tender_data} |
| @@ -530,6 +555,12 @@ Log differences between dicts | @@ -530,6 +555,12 @@ Log differences between dicts | ||
| 530 | Порівняти об'єкти ${left} ${right} | 555 | Порівняти об'єкти ${left} ${right} |
| 531 | 556 | ||
| 532 | 557 | ||
| 558 | +Звірити поле угоди із значенням | ||
| 559 | + [Arguments] ${username} ${agreement_uaid} ${left} ${field} | ||
| 560 | + ${right}= Run As ${username} Отримати інформацію із угоди ${agreement_uaid} ${field} | ||
| 561 | + Порівняти об'єкти ${left} ${right} | ||
| 562 | + | ||
| 563 | + | ||
| 533 | Звірити поле зміни до договору | 564 | Звірити поле зміни до договору |
| 534 | [Arguments] ${username} ${contract_uaid} ${change_data} ${field} | 565 | [Arguments] ${username} ${contract_uaid} ${change_data} ${field} |
| 535 | ${left}= get_from_object ${change_data.data} ${field} | 566 | ${left}= get_from_object ${change_data.data} ${field} |
| @@ -604,7 +635,9 @@ Log differences between dicts | @@ -604,7 +635,9 @@ Log differences between dicts | ||
| 604 | [Arguments] ${username} ${tender_uaid} ${tender_data} ${item_id} | 635 | [Arguments] ${username} ${tender_uaid} ${tender_data} ${item_id} |
| 605 | ${item_index}= get_object_index_by_id ${tender_data.data['items']} ${item_id} | 636 | ${item_index}= get_object_index_by_id ${tender_data.data['items']} ${item_id} |
| 606 | ${left_lat}= get_from_object ${tender_data.data} items[${item_index}].deliveryLocation.latitude | 637 | ${left_lat}= get_from_object ${tender_data.data} items[${item_index}].deliveryLocation.latitude |
| 638 | + ${left_lat}= Convert To Number ${left_lat} | ||
| 607 | ${left_lon}= get_from_object ${tender_data.data} items[${item_index}].deliveryLocation.longitude | 639 | ${left_lon}= get_from_object ${tender_data.data} items[${item_index}].deliveryLocation.longitude |
| 640 | + ${left_lon}= Convert To Number ${left_lon} | ||
| 608 | ${right_lat}= Отримати дані із тендера ${username} ${tender_uaid} deliveryLocation.latitude ${item_id} | 641 | ${right_lat}= Отримати дані із тендера ${username} ${tender_uaid} deliveryLocation.latitude ${item_id} |
| 609 | ${right_lat}= Convert To Number ${right_lat} | 642 | ${right_lat}= Convert To Number ${right_lat} |
| 610 | ${right_lon}= Отримати дані із тендера ${username} ${tender_uaid} deliveryLocation.longitude ${item_id} | 643 | ${right_lon}= Отримати дані із тендера ${username} ${tender_uaid} deliveryLocation.longitude ${item_id} |
| @@ -690,6 +723,24 @@ Log differences between dicts | @@ -690,6 +723,24 @@ Log differences between dicts | ||
| 690 | [return] ${field_value} | 723 | [return] ${field_value} |
| 691 | 724 | ||
| 692 | 725 | ||
| 726 | +Отримати дані із угоди | ||
| 727 | + [Arguments] ${username} ${agreement_uaid} ${field_name} | ||
| 728 | + ${status} ${field_value}= Run keyword and ignore error | ||
| 729 | + ... get_from_object | ||
| 730 | + ... ${USERS.users['${username}'].agreement_data.data} | ||
| 731 | + ... ${field_name} | ||
| 732 | + # If field in cache, return its value | ||
| 733 | + Run Keyword if '${status}' == 'PASS' Return from keyword ${field_value} | ||
| 734 | + # Else call broker to find field | ||
| 735 | + ${field_value}= Run As ${username} Отримати інформацію із угоди ${agreement_uaid} ${field_name} | ||
| 736 | + # And caching its value before return | ||
| 737 | + Set_To_Object ${USERS.users['${username}'].agreement_data.data} ${field_name} ${field_value} | ||
| 738 | + ${data}= munch_dict arg=${USERS.users['${username}'].agreement_data.data} | ||
| 739 | + Set To Dictionary ${USERS.users['${username}'].agreement_data} data=${data} | ||
| 740 | + Log ${USERS.users['${username}'].agreement_data.data} | ||
| 741 | + [return] ${field_value} | ||
| 742 | + | ||
| 743 | + | ||
| 693 | Отримати дані із об'єкта моніторингу | 744 | Отримати дані із об'єкта моніторингу |
| 694 | [Arguments] ${username} ${monitoring_uaid} ${field_name} ${object_id}=${Empty} | 745 | [Arguments] ${username} ${monitoring_uaid} ${field_name} ${object_id}=${Empty} |
| 695 | ${status} ${field_value}= Run keyword and ignore error | 746 | ${status} ${field_value}= Run keyword and ignore error |
| @@ -912,6 +963,19 @@ Require Failure | @@ -912,6 +963,19 @@ Require Failure | ||
| 912 | Порівняти об'єкти ${left} ${right} | 963 | Порівняти об'єкти ${left} ${right} |
| 913 | 964 | ||
| 914 | 965 | ||
| 966 | +Дочекатись дати початку періоду уточнення | ||
| 967 | + [Arguments] ${username} ${tender_uaid} | ||
| 968 | + Оновити LAST_MODIFICATION_DATE | ||
| 969 | + Дочекатись синхронізації з майданчиком ${username} | ||
| 970 | + Wait until keyword succeeds | ||
| 971 | + ... 10 min 15 sec | ||
| 972 | + ... 15 sec | ||
| 973 | + ... Звірити статус тендера | ||
| 974 | + ... ${username} | ||
| 975 | + ... ${tender_uaid} | ||
| 976 | + ... active.enquiries | ||
| 977 | + | ||
| 978 | + | ||
| 915 | Дочекатись дати початку прийому пропозицій | 979 | Дочекатись дати початку прийому пропозицій |
| 916 | [Arguments] ${username} ${tender_uaid} | 980 | [Arguments] ${username} ${tender_uaid} |
| 917 | # This tries to get the date from current user's procurement data cache. | 981 | # This tries to get the date from current user's procurement data cache. |
| @@ -1136,12 +1200,15 @@ Require Failure | @@ -1136,12 +1200,15 @@ Require Failure | ||
| 1136 | [Return] ${index} | 1200 | [Return] ${index} |
| 1137 | 1201 | ||
| 1138 | 1202 | ||
| 1139 | -Розрахувати ціну для ${index} контракту | ||
| 1140 | - ${contract_data}= Create Dictionary data=${USERS.users['${tender_owner}'].tender_data.data.agreements[0].contracts[${index}]} | ||
| 1141 | - ${quantity}= Convert To Integer ${USERS.users['${tender_owner}'].tender_data.data['items'][0]['quantity']} | ||
| 1142 | - ${value}= Evaluate ${USERS.users['${tender_owner}'].tender_data.data.awards[${index}+1].value.amount}/${quantity} | 1203 | +Розрахувати ціну для ${contract_number} контракту |
| 1204 | + ${contract_data}= Create Dictionary data=${USERS.users['${tender_owner}'].tender_data.data.agreements[0].contracts[${contract_number}]} | ||
| 1205 | + ${quantity}= Set Variable ${0} | ||
| 1206 | + :FOR ${index} IN RANGE ${NUMBER_OF_ITEMS} | ||
| 1207 | + \ ${quantity}= Evaluate ${quantity}+${USERS.users['${tender_owner}'].tender_data.data['items'][${index}]['quantity']} | ||
| 1208 | + ${value}= Evaluate ${USERS.users['${tender_owner}'].tender_data.data.awards[${contract_number}+1].value.amount}/${quantity} | ||
| 1143 | ${value}= Convert To Integer ${value} | 1209 | ${value}= Convert To Integer ${value} |
| 1144 | - Set To Dictionary ${contract_data.data.unitPrices[0].value} amount=${value} | 1210 | + :FOR ${index} IN RANGE ${NUMBER_OF_ITEMS} |
| 1211 | + \ Set To Dictionary ${contract_data.data.unitPrices[${index}].value} amount=${value} | ||
| 1145 | ${contract_data}= munch_dict arg=${contract_data} | 1212 | ${contract_data}= munch_dict arg=${contract_data} |
| 1146 | Log ${contract_data} | 1213 | Log ${contract_data} |
| 1147 | [Return] ${contract_data} | 1214 | [Return] ${contract_data} |
| @@ -1779,7 +1779,17 @@ ${MOZ_INTEGRATION} ${False} | @@ -1779,7 +1779,17 @@ ${MOZ_INTEGRATION} ${False} | ||
| 1779 | ... openeu_add_financial_bid_doc_by_provider | 1779 | ... openeu_add_financial_bid_doc_by_provider |
| 1780 | ... critical | 1780 | ... critical |
| 1781 | [Teardown] Оновити LAST_MODIFICATION_DATE | 1781 | [Teardown] Оновити LAST_MODIFICATION_DATE |
| 1782 | - Можливість завантажити financial_documents документ до пропозиції учасником ${provider} | 1782 | + Можливість завантажити документ до пропозиції учасником ${provider} financial_documents |
| 1783 | + | ||
| 1784 | + | ||
| 1785 | +Можливість завантажити фінансовий документ winningBid до пропозиції першим учасником | ||
| 1786 | + [Tags] ${USERS.users['${provider}'].broker}: Подання пропозиції | ||
| 1787 | + ... provider | ||
| 1788 | + ... ${USERS.users['${provider}'].broker} | ||
| 1789 | + ... add_winningBid_doc_by_provider | ||
| 1790 | + ... critical | ||
| 1791 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 1792 | + Можливість завантажити документ до пропозиції учасником ${provider} financial_documents winningBid | ||
| 1783 | 1793 | ||
| 1784 | 1794 | ||
| 1785 | Можливість завантажити кваліфікаційний документ до пропозиції першим учасником | 1795 | Можливість завантажити кваліфікаційний документ до пропозиції першим учасником |
| @@ -1789,7 +1799,7 @@ ${MOZ_INTEGRATION} ${False} | @@ -1789,7 +1799,7 @@ ${MOZ_INTEGRATION} ${False} | ||
| 1789 | ... openeu_add_qualification_bid_doc_by_provider | 1799 | ... openeu_add_qualification_bid_doc_by_provider |
| 1790 | ... critical | 1800 | ... critical |
| 1791 | [Teardown] Оновити LAST_MODIFICATION_DATE | 1801 | [Teardown] Оновити LAST_MODIFICATION_DATE |
| 1792 | - Можливість завантажити qualification_documents документ до пропозиції учасником ${provider} | 1802 | + Можливість завантажити документ до пропозиції учасником ${provider} qualification_documents |
| 1793 | 1803 | ||
| 1794 | 1804 | ||
| 1795 | Можливість завантажити документ для критеріїв прийнятності до пропозиції першим учасником | 1805 | Можливість завантажити документ для критеріїв прийнятності до пропозиції першим учасником |
| @@ -1799,7 +1809,7 @@ ${MOZ_INTEGRATION} ${False} | @@ -1799,7 +1809,7 @@ ${MOZ_INTEGRATION} ${False} | ||
| 1799 | ... openeu_add_eligibility_bid_doc_by_provider | 1809 | ... openeu_add_eligibility_bid_doc_by_provider |
| 1800 | ... critical | 1810 | ... critical |
| 1801 | [Teardown] Оновити LAST_MODIFICATION_DATE | 1811 | [Teardown] Оновити LAST_MODIFICATION_DATE |
| 1802 | - Можливість завантажити eligibility_documents документ до пропозиції учасником ${provider} | 1812 | + Можливість завантажити документ до пропозиції учасником ${provider} eligibility_documents |
| 1803 | 1813 | ||
| 1804 | 1814 | ||
| 1805 | Неможливість задати запитання на тендер після завершення періоду уточнень | 1815 | Неможливість задати запитання на тендер після завершення періоду уточнень |
op_robot_tests/tests_files/selection.robot
0 → 100644
| 1 | +*** Settings *** | ||
| 2 | +Resource base_keywords.robot | ||
| 3 | +Resource aboveThreshold_keywords.robot | ||
| 4 | +Suite Setup Test Suite Setup | ||
| 5 | +Suite Teardown Test Suite Teardown | ||
| 6 | + | ||
| 7 | + | ||
| 8 | +*** Variables *** | ||
| 9 | +${MODE} framework_selection | ||
| 10 | +@{USED_ROLES} tender_owner provider provider1 provider2 viewer | ||
| 11 | + | ||
| 12 | +${NUMBER_OF_ITEMS} ${1} | ||
| 13 | +${NUMBER_OF_LOTS} ${1} | ||
| 14 | +${TENDER_MEAT} ${True} | ||
| 15 | +${LOT_MEAT} ${False} | ||
| 16 | +${ITEM_MEAT} ${False} | ||
| 17 | +${MOZ_INTEGRATION} ${False} | ||
| 18 | + | ||
| 19 | +*** Test Cases *** | ||
| 20 | +Можливість оголосити тендер другого етапу | ||
| 21 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Оголошення тендера | ||
| 22 | + ... tender_owner | ||
| 23 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 24 | + ... create_tender | ||
| 25 | + ... critical | ||
| 26 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 27 | + Завантажити дані про тендер | ||
| 28 | + Можливість оголосити тендер другого етапу | ||
| 29 | + | ||
| 30 | + | ||
| 31 | +Можливість знайти тендер по ідентифікатору для замовника | ||
| 32 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Пошук тендера | ||
| 33 | + ... tender_owner | ||
| 34 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 35 | + ... find_tender | ||
| 36 | + ... critical | ||
| 37 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 38 | + Можливість знайти тендер по ідентифікатору для користувача ${tender_owner} | ||
| 39 | + | ||
| 40 | + | ||
| 41 | +Відображення бюджету тендера для замовника | ||
| 42 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Відображення основних даних тендера | ||
| 43 | + ... tender_owner | ||
| 44 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 45 | + ... tender_view | ||
| 46 | + ... critical | ||
| 47 | + Отримати дані із поля value.amount тендера для користувача ${tender_owner} | ||
| 48 | + | ||
| 49 | + | ||
| 50 | +Відображення бюджету лоту для замовника | ||
| 51 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Відображення основних даних тендера | ||
| 52 | + ... tender_owner | ||
| 53 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 54 | + ... tender_view | ||
| 55 | + ... critical | ||
| 56 | + Отримати дані із поля lots[0].value.amount тендера для користувача ${tender_owner} | ||
| 57 | + | ||
| 58 | + | ||
| 59 | +Відображення мінімального кроку лоту для замовника | ||
| 60 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Відображення основних даних тендера | ||
| 61 | + ... tender_owner | ||
| 62 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 63 | + ... tender_view | ||
| 64 | + ... critical | ||
| 65 | + Отримати дані із поля lots[0].minimalStep.amount тендера для користувача ${tender_owner} | ||
| 66 | + | ||
| 67 | + | ||
| 68 | +Відображення закінчення періоду подачі пропозицій для замовника | ||
| 69 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 70 | + ... viewer | ||
| 71 | + ... ${USERS.users['${viewer}'].broker} | ||
| 72 | + ... tender_view level1 | ||
| 73 | + ... critical | ||
| 74 | + Отримати дані із поля tenderPeriod.endDate тендера для користувача ${tender_owner} | ||
| 75 | + | ||
| 76 | + | ||
| 77 | +Можливість змінити дату закінчення періоду подання пропозиції на 10 днів | ||
| 78 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Можливість редагувати тендер | ||
| 79 | + ... tender_owner | ||
| 80 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 81 | + ... extend_tendering_period level3 | ||
| 82 | + ... critical | ||
| 83 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 84 | + Можливість продовжити період подання пропозиції на ${10} днів | ||
| 85 | + Remove From Dictionary ${USERS.users['${tender_owner}'].tender_data.data.tenderPeriod} endDate | ||
| 86 | + | ||
| 87 | + | ||
| 88 | +Можливість змінити кількість одиниць в предметі закупівлі | ||
| 89 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Можливість редагувати тендер | ||
| 90 | + ... tender_owner | ||
| 91 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 92 | + ... modify_item | ||
| 93 | + ... critical | ||
| 94 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 95 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 96 | + ${new_quantity}= create_fake_number ${1} ${USERS.users['${tender_owner}'].tender_data.data['items'][0]['quantity']} | ||
| 97 | + Можливість змінити поле items[0].quantity тендера на ${new_quantity} | ||
| 98 | + | ||
| 99 | + | ||
| 100 | +Можливість збільшити мінімальний крок лоту на 5 процентів | ||
| 101 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Редагування тендера | ||
| 102 | + ... tender_owner | ||
| 103 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 104 | + ... modify_lot | ||
| 105 | + ... critical | ||
| 106 | + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} | ||
| 107 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 108 | + ${step_value}= mult_and_round ${USERS.users['${tender_owner}'].tender_data.data.lots[0].minimalStep.amount} ${1.05} precision=${2} | ||
| 109 | + Можливість змінити поле minimalStep.amount 0 лоту на ${step_value} | ||
| 110 | + | ||
| 111 | + | ||
| 112 | +Можливість знайти тендер по ідентифікатору | ||
| 113 | + [Tags] ${USERS.users['${viewer}'].broker}: Пошук тендера | ||
| 114 | + ... viewer tender_owner provider provider1 | ||
| 115 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 116 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 117 | + ... find_tender | ||
| 118 | + ... critical | ||
| 119 | + Можливість знайти тендер по ідентифікатору для усіх користувачів | ||
| 120 | + | ||
| 121 | + | ||
| 122 | +Можливість додати документацію до тендера | ||
| 123 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Додання документації | ||
| 124 | + ... tender_owner | ||
| 125 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 126 | + ... add_tender_doc | ||
| 127 | + ... critical | ||
| 128 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 129 | + Можливість додати документацію до тендера | ||
| 130 | + | ||
| 131 | + | ||
| 132 | +Можливість додати документацію до всіх лотів | ||
| 133 | + [Tags] ${USERS.users['${tender_owner}'].broker}: Додання документації | ||
| 134 | + ... tender_owner | ||
| 135 | + ... ${USERS.users['${tender_owner}'].broker} | ||
| 136 | + ... add_lot_doc | ||
| 137 | + ... critical | ||
| 138 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 139 | + Можливість додати документацію до всіх лотів | ||
| 140 | + | ||
| 141 | + | ||
| 142 | +Відображення заголовку документації до тендера | ||
| 143 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення документації | ||
| 144 | + ... viewer | ||
| 145 | + ... ${USERS.users['${viewer}'].broker} | ||
| 146 | + ... add_tender_doc | ||
| 147 | + ... non-critical | ||
| 148 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 149 | + Звірити відображення поля title документа ${USERS.users['${tender_owner}']['tender_document']['doc_id']} із ${USERS.users['${tender_owner}'].tender_document.doc_name} для користувача ${viewer} | ||
| 150 | + | ||
| 151 | + | ||
| 152 | +Відображення заголовку документації до всіх лотів | ||
| 153 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення документації | ||
| 154 | + ... viewer | ||
| 155 | + ... ${USERS.users['${viewer}'].broker} | ||
| 156 | + ... add_lot_doc | ||
| 157 | + ... critical | ||
| 158 | + Звірити відображення заголовку документації до всіх лотів для користувача ${viewer} | ||
| 159 | + | ||
| 160 | + | ||
| 161 | +Відображення вмісту документації до тендера | ||
| 162 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення документації | ||
| 163 | + ... viewer | ||
| 164 | + ... ${USERS.users['${viewer}'].broker} | ||
| 165 | + ... add_tender_doc | ||
| 166 | + ... non-critical | ||
| 167 | + Звірити відображення вмісту документа ${USERS.users['${tender_owner}'].tender_document.doc_id} із ${USERS.users['${tender_owner}'].tender_document.doc_content} для користувача ${viewer} | ||
| 168 | + | ||
| 169 | + | ||
| 170 | +Відображення вмісту документації до всіх лотів | ||
| 171 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення документації | ||
| 172 | + ... viewer | ||
| 173 | + ... ${USERS.users['${viewer}'].broker} | ||
| 174 | + ... add_lot_doc | ||
| 175 | + ... critical | ||
| 176 | + Звірити відображення вмісту документації до всіх лотів для користувача ${viewer} | ||
| 177 | + | ||
| 178 | + | ||
| 179 | +############################################################################################## | ||
| 180 | +# Відображення основних даних тендера | ||
| 181 | +############################################################################################## | ||
| 182 | + | ||
| 183 | +Відображення заголовку тендера | ||
| 184 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 185 | + ... viewer | ||
| 186 | + ... ${USERS.users['${viewer}'].broker} | ||
| 187 | + ... tender_view | ||
| 188 | + ... critical | ||
| 189 | + [Setup] Дочекатись синхронізації з майданчиком ${viewer} | ||
| 190 | + Отримати дані із поля title тендера для користувача ${viewer} | ||
| 191 | + | ||
| 192 | + | ||
| 193 | +Відображення опису тендера | ||
| 194 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 195 | + ... viewer | ||
| 196 | + ... ${USERS.users['${viewer}'].broker} | ||
| 197 | + ... tender_view | ||
| 198 | + ... non-critical | ||
| 199 | + Отримати дані із поля description тендера для користувача ${viewer} | ||
| 200 | + | ||
| 201 | + | ||
| 202 | +Відображення бюджету тендера | ||
| 203 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 204 | + ... viewer tender_owner provider provider1 | ||
| 205 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 206 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 207 | + ... tender_view | ||
| 208 | + ... critical | ||
| 209 | + Отримати дані із поля value.amount тендера для усіх користувачів | ||
| 210 | + | ||
| 211 | + | ||
| 212 | +Відображення валюти тендера | ||
| 213 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 214 | + ... viewer tender_owner provider provider1 | ||
| 215 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 216 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 217 | + ... tender_view | ||
| 218 | + ... non-critical | ||
| 219 | + Отримати дані із поля value.currency тендера для усіх користувачів | ||
| 220 | + | ||
| 221 | + | ||
| 222 | +Відображення ПДВ в бюджеті тендера | ||
| 223 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 224 | + ... viewer tender_owner provider provider1 | ||
| 225 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 226 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 227 | + ... tender_view | ||
| 228 | + ... non-critical | ||
| 229 | + Отримати дані із поля value.valueAddedTaxIncluded тендера для усіх користувачів | ||
| 230 | + | ||
| 231 | + | ||
| 232 | +Відображення ідентифікатора тендера | ||
| 233 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 234 | + ... viewer tender_owner provider provider1 | ||
| 235 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 236 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 237 | + ... tender_view | ||
| 238 | + ... critical | ||
| 239 | + Звірити відображення поля tenderID тендера із ${TENDER['TENDER_UAID']} для користувача ${viewer} | ||
| 240 | + | ||
| 241 | + | ||
| 242 | +Відображення ідентифікатора угоди | ||
| 243 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 244 | + ... viewer tender_owner provider provider1 | ||
| 245 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 246 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 247 | + ... tender_view | ||
| 248 | + ... critical | ||
| 249 | + Отримати дані із поля agreements[0].agreementID тендера для усіх користувачів | ||
| 250 | + | ||
| 251 | + | ||
| 252 | +Відображення імені замовника тендера | ||
| 253 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 254 | + ... viewer | ||
| 255 | + ... ${USERS.users['${viewer}'].broker} | ||
| 256 | + ... tender_view | ||
| 257 | + ... critical | ||
| 258 | + Звірити відображення поля procuringEntity.name тендера для користувача ${viewer} | ||
| 259 | + | ||
| 260 | + | ||
| 261 | +Відображення початку періоду уточнення тендера | ||
| 262 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 263 | + ... viewer tender_owner provider provider1 | ||
| 264 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 265 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 266 | + ... tender_view | ||
| 267 | + ... non-critical | ||
| 268 | + Отримати дані із поля enquiryPeriod.startDate тендера для усіх користувачів | ||
| 269 | + | ||
| 270 | + | ||
| 271 | +Відображення закінчення періоду уточнення тендера | ||
| 272 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 273 | + ... viewer tender_owner provider provider1 | ||
| 274 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 275 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 276 | + ... tender_view | ||
| 277 | + ... critical | ||
| 278 | + Отримати дані із поля enquiryPeriod.endDate тендера для усіх користувачів | ||
| 279 | + | ||
| 280 | + | ||
| 281 | +Відображення початку періоду прийому пропозицій тендера | ||
| 282 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 283 | + ... viewer tender_owner provider provider1 | ||
| 284 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 285 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 286 | + ... tender_view | ||
| 287 | + ... non-critical | ||
| 288 | + Отримати дані із поля tenderPeriod.startDate тендера для усіх користувачів | ||
| 289 | + | ||
| 290 | + | ||
| 291 | +Відображення закінчення періоду прийому пропозицій тендера | ||
| 292 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 293 | + ... viewer tender_owner provider provider1 | ||
| 294 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 295 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 296 | + ... tender_view | ||
| 297 | + ... critical | ||
| 298 | + Отримати дані із поля tenderPeriod.endDate тендера для усіх користувачів | ||
| 299 | + | ||
| 300 | + | ||
| 301 | +Відображення мінімального кроку тендера | ||
| 302 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 303 | + ... viewer tender_owner provider provider1 | ||
| 304 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 305 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 306 | + ... tender_view | ||
| 307 | + ... critical | ||
| 308 | + Отримати дані із поля minimalStep.amount тендера для усіх користувачів | ||
| 309 | + | ||
| 310 | + | ||
| 311 | +Відображення типу оголошеного тендера | ||
| 312 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних тендера | ||
| 313 | + ... viewer tender_owner provider provider1 | ||
| 314 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 315 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 316 | + ... open_tender_view | ||
| 317 | + ... non-critical | ||
| 318 | + Звірити відображення поля procurementMethodType тендера для усіх користувачів | ||
| 319 | + | ||
| 320 | + | ||
| 321 | +############################################################################################## | ||
| 322 | +# Відображення основних даних предмету | ||
| 323 | +############################################################################################## | ||
| 324 | + | ||
| 325 | +Відображення опису номенклатур тендера | ||
| 326 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 327 | + ... viewer tender_owner provider provider1 | ||
| 328 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 329 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 330 | + ... tender_view | ||
| 331 | + ... critical | ||
| 332 | + Звірити відображення поля description усіх предметів для усіх користувачів | ||
| 333 | + | ||
| 334 | + | ||
| 335 | +Відображення дати початку доставки номенклатур тендера | ||
| 336 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 337 | + ... viewer | ||
| 338 | + ... ${USERS.users['${viewer}'].broker} | ||
| 339 | + ... tender_view | ||
| 340 | + ... non-critical | ||
| 341 | + Звірити відображення дати deliveryDate.startDate усіх предметів для користувача ${viewer} | ||
| 342 | + | ||
| 343 | + | ||
| 344 | +Відображення дати кінця доставки номенклатур тендера | ||
| 345 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 346 | + ... viewer | ||
| 347 | + ... ${USERS.users['${viewer}'].broker} | ||
| 348 | + ... tender_view | ||
| 349 | + ... non-critical | ||
| 350 | + Звірити відображення дати deliveryDate.endDate усіх предметів для користувача ${viewer} | ||
| 351 | + | ||
| 352 | + | ||
| 353 | +Відображення координати доставки номенклатур тендера | ||
| 354 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 355 | + ... viewer | ||
| 356 | + ... ${USERS.users['${viewer}'].broker} | ||
| 357 | + ... tender_view_coordinates | ||
| 358 | + ... non-critical | ||
| 359 | + Звірити відображення координат усіх предметів для користувача ${viewer} | ||
| 360 | + | ||
| 361 | + | ||
| 362 | +Відображення країни доставки номенклатур тендера | ||
| 363 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 364 | + ... viewer | ||
| 365 | + ... ${USERS.users['${viewer}'].broker} | ||
| 366 | + ... tender_view | ||
| 367 | + ... non-critical | ||
| 368 | + Звірити відображення поля deliveryAddress.countryName усіх предметів для користувача ${viewer} | ||
| 369 | + | ||
| 370 | + | ||
| 371 | +Відображення пошт. коду доставки номенклатур тендера | ||
| 372 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 373 | + ... viewer | ||
| 374 | + ... ${USERS.users['${viewer}'].broker} | ||
| 375 | + ... tender_view | ||
| 376 | + ... non-critical | ||
| 377 | + Звірити відображення поля deliveryAddress.postalCode усіх предметів для користувача ${viewer} | ||
| 378 | + | ||
| 379 | + | ||
| 380 | +Відображення регіону доставки номенклатур тендера | ||
| 381 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 382 | + ... viewer | ||
| 383 | + ... ${USERS.users['${viewer}'].broker} | ||
| 384 | + ... tender_view | ||
| 385 | + ... non-critical | ||
| 386 | + Звірити відображення поля deliveryAddress.region усіх предметів для користувача ${viewer} | ||
| 387 | + | ||
| 388 | + | ||
| 389 | +Відображення назви нас. пункту доставки номенклатур тендера | ||
| 390 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 391 | + ... viewer | ||
| 392 | + ... ${USERS.users['${viewer}'].broker} | ||
| 393 | + ... tender_view | ||
| 394 | + ... non-critical | ||
| 395 | + Звірити відображення поля deliveryAddress.locality усіх предметів для користувача ${viewer} | ||
| 396 | + | ||
| 397 | + | ||
| 398 | +Відображення вулиці доставки номенклатур тендера | ||
| 399 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 400 | + ... viewer | ||
| 401 | + ... ${USERS.users['${viewer}'].broker} | ||
| 402 | + ... tender_view | ||
| 403 | + ... non-critical | ||
| 404 | + Звірити відображення поля deliveryAddress.streetAddress усіх предметів для користувача ${viewer} | ||
| 405 | + | ||
| 406 | + | ||
| 407 | +Відображення схеми класифікації номенклатур тендера | ||
| 408 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 409 | + ... viewer | ||
| 410 | + ... ${USERS.users['${viewer}'].broker} | ||
| 411 | + ... tender_view | ||
| 412 | + ... non-critical | ||
| 413 | + Звірити відображення поля classification.scheme усіх предметів для користувача ${viewer} | ||
| 414 | + Run Keyword If "${USERS.users['${tender_owner}'].initial_data.data['items'][0]['classification']['id']}" == "33600000-6" | ||
| 415 | + ... Звірити відображення поля additionalClassifications[0].scheme усіх предметів для користувача ${viewer} | ||
| 416 | + | ||
| 417 | + | ||
| 418 | +Відображення ідентифікатора класифікації номенклатур тендера | ||
| 419 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 420 | + ... viewer | ||
| 421 | + ... ${USERS.users['${viewer}'].broker} | ||
| 422 | + ... tender_view | ||
| 423 | + ... non-critical | ||
| 424 | + Звірити відображення поля classification.id усіх предметів для користувача ${viewer} | ||
| 425 | + Run Keyword If "${USERS.users['${tender_owner}'].initial_data.data['items'][0]['classification']['id']}" == "33600000-6" | ||
| 426 | + ... Звірити відображення поля additionalClassifications[0].id усіх предметів для користувача ${viewer} | ||
| 427 | + | ||
| 428 | + | ||
| 429 | +Відображення опису класифікації номенклатур тенедра | ||
| 430 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 431 | + ... viewer | ||
| 432 | + ... ${USERS.users['${viewer}'].broker} | ||
| 433 | + ... tender_view | ||
| 434 | + ... non-critical | ||
| 435 | + Звірити відображення поля classification.description усіх предметів для користувача ${viewer} | ||
| 436 | + Run Keyword If "${USERS.users['${tender_owner}'].initial_data.data['items'][0]['classification']['id']}" == "33600000-6" | ||
| 437 | + ... Звірити відображення поля additionalClassifications[0].description усіх предметів для користувача ${viewer} | ||
| 438 | + | ||
| 439 | + | ||
| 440 | +Відображення назви одиниці номенклатур тендера | ||
| 441 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 442 | + ... viewer | ||
| 443 | + ... ${USERS.users['${viewer}'].broker} | ||
| 444 | + ... tender_view | ||
| 445 | + ... non-critical | ||
| 446 | + Звірити відображення поля unit.name усіх предметів для користувача ${viewer} | ||
| 447 | + | ||
| 448 | + | ||
| 449 | +Відображення коду одиниці виміру номенклатур тендера | ||
| 450 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 451 | + ... viewer | ||
| 452 | + ... ${USERS.users['${viewer}'].broker} | ||
| 453 | + ... tender_view_unit_code | ||
| 454 | + ... non-critical | ||
| 455 | + Звірити відображення поля unit.code усіх предметів для користувача ${viewer} | ||
| 456 | + | ||
| 457 | + | ||
| 458 | +Відображення кількості номенклатур тендера | ||
| 459 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення номенклатури тендера | ||
| 460 | + ... viewer tender_owner provider provider1 | ||
| 461 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 462 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 463 | + ... tender_view | ||
| 464 | + ... non-critical | ||
| 465 | + Отримати дані із поля items[0].quantity тендера для усіх користувачів | ||
| 466 | + | ||
| 467 | +############################################################################################## | ||
| 468 | +# Відображення основних даних лоту | ||
| 469 | +############################################################################################## | ||
| 470 | + | ||
| 471 | +Відображення заголовку лотів | ||
| 472 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення лоту тендера | ||
| 473 | + ... viewer tender_owner provider provider1 | ||
| 474 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 475 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 476 | + ... lot_view level1 | ||
| 477 | + ... critical | ||
| 478 | + Звірити відображення поля title усіх лотів для усіх користувачів | ||
| 479 | + | ||
| 480 | + | ||
| 481 | +Відображення опису лотів | ||
| 482 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення лоту тендера | ||
| 483 | + ... viewer | ||
| 484 | + ... ${USERS.users['${viewer}'].broker} | ||
| 485 | + ... lot_view | ||
| 486 | + ... critical | ||
| 487 | + Звірити відображення поля description усіх лотів для користувача ${viewer} | ||
| 488 | + | ||
| 489 | + | ||
| 490 | +Відображення бюджету лотів | ||
| 491 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення лоту тендера | ||
| 492 | + ... viewer tender_owner provider provider1 | ||
| 493 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 494 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 495 | + ... lot_view | ||
| 496 | + ... critical | ||
| 497 | + Отримати дані із поля lots[0].value.amount тендера для усіх користувачів | ||
| 498 | + | ||
| 499 | + | ||
| 500 | +Відображення валюти лотів | ||
| 501 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення лоту тендера | ||
| 502 | + ... viewer | ||
| 503 | + ... ${USERS.users['${viewer}'].broker} | ||
| 504 | + ... lot_view | ||
| 505 | + ... non-critical | ||
| 506 | + Звірити відображення поля value.currency усіх лотів для користувача ${viewer} | ||
| 507 | + | ||
| 508 | + | ||
| 509 | +Відображення ПДВ в бюджеті лотів | ||
| 510 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення лоту тендера | ||
| 511 | + ... viewer | ||
| 512 | + ... ${USERS.users['${viewer}'].broker} | ||
| 513 | + ... lot_view | ||
| 514 | + ... non-critical | ||
| 515 | + Звірити відображення поля value.valueAddedTaxIncluded усіх лотів для користувача ${viewer} | ||
| 516 | + | ||
| 517 | + | ||
| 518 | +Відображення мінімального кроку лотів | ||
| 519 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення лоту тендера | ||
| 520 | + ... viewer tender_owner provider provider1 | ||
| 521 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 522 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 523 | + ... lot_view | ||
| 524 | + ... non-critical | ||
| 525 | + Отримати дані із поля lots[0].minimalStep.amount тендера для усіх користувачів | ||
| 526 | + | ||
| 527 | + | ||
| 528 | +Відображення валюти мінімального кроку лотів | ||
| 529 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення лоту тендера | ||
| 530 | + ... viewer | ||
| 531 | + ... ${USERS.users['${viewer}'].broker} | ||
| 532 | + ... lot_view | ||
| 533 | + ... non-critical | ||
| 534 | + Звірити відображення поля minimalStep.currency усіх лотів для користувача ${viewer} | ||
| 535 | + | ||
| 536 | + | ||
| 537 | +Відображення ПДВ в мінімальному кроці лотів | ||
| 538 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення лоту тендера | ||
| 539 | + ... viewer | ||
| 540 | + ... ${USERS.users['${viewer}'].broker} | ||
| 541 | + ... lot_view | ||
| 542 | + ... non-critical | ||
| 543 | + Звірити відображення поля minimalStep.valueAddedTaxIncluded усіх лотів для користувача ${viewer} | ||
| 544 | + | ||
| 545 | +############################################################################################## | ||
| 546 | +# Відображення основних даних предмету | ||
| 547 | +############################################################################################## | ||
| 548 | + | ||
| 549 | +Відображення заголовку нецінових показників | ||
| 550 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення нецінових показників | ||
| 551 | + ... viewer tender_owner provider provider1 | ||
| 552 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 553 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 554 | + ... meat_view | ||
| 555 | + ... critical | ||
| 556 | + Отримати дані із поля title нецінових показників для усіх користувачів | ||
| 557 | + | ||
| 558 | + | ||
| 559 | +Відображення опису нецінових показників | ||
| 560 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення нецінових показників | ||
| 561 | + ... viewer tender_owner provider provider1 | ||
| 562 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 563 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 564 | + ... meat_view | ||
| 565 | + ... critical | ||
| 566 | + Отримати дані із поля description нецінових показників для усіх користувачів | ||
| 567 | + | ||
| 568 | + | ||
| 569 | +Відображення відношення нецінових показників | ||
| 570 | + [Tags] ${USERS.users['${viewer}'].broker}: Відображення нецінових показників | ||
| 571 | + ... viewer tender_owner provider provider1 | ||
| 572 | + ... ${USERS.users['${viewer}'].broker} ${USERS.users['${tender_owner}'].broker} | ||
| 573 | + ... ${USERS.users['${provider}'].broker} ${USERS.users['${provider1}'].broker} | ||
| 574 | + ... meat_view | ||
| 575 | + ... non-critical | ||
| 576 | + Отримати дані із поля featureOf нецінових показників для усіх користувачів | ||
| 577 | + | ||
| 578 | +############################################################################################## | ||
| 579 | +# BIDDING | ||
| 580 | +############################################################################################## | ||
| 581 | + | ||
| 582 | +Можливість подати пропозицію першим учасником | ||
| 583 | + [Tags] ${USERS.users['${provider}'].broker}: Подання пропозиції | ||
| 584 | + ... provider | ||
| 585 | + ... ${USERS.users['${provider}'].broker} | ||
| 586 | + ... make_bid_by_provider | ||
| 587 | + ... critical | ||
| 588 | + [Setup] Дочекатись дати початку прийому пропозицій ${provider} ${TENDER['TENDER_UAID']} | ||
| 589 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 590 | + Можливість подати цінову пропозицію на другому етапі рамкової угоди користувачем ${provider} ${0} | ||
| 591 | + | ||
| 592 | + | ||
| 593 | +Можливість зменшити пропозицію на 5% першим учасником | ||
| 594 | + [Tags] ${USERS.users['${provider}'].broker}: Подання пропозиції | ||
| 595 | + ... provider | ||
| 596 | + ... ${USERS.users['${provider}'].broker} | ||
| 597 | + ... modify_bid_by_provider | ||
| 598 | + ... critical | ||
| 599 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 600 | + Можливість зменшити пропозицію до 95 відсотків користувачем ${provider} | ||
| 601 | + | ||
| 602 | + | ||
| 603 | +Можливість завантажити документ в пропозицію першим учасником | ||
| 604 | + [Tags] ${USERS.users['${provider}'].broker}: Подання пропозиції | ||
| 605 | + ... provider | ||
| 606 | + ... ${USERS.users['${provider}'].broker} | ||
| 607 | + ... add_doc_to_bid_by_provider | ||
| 608 | + ... critical | ||
| 609 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 610 | + Можливість завантажити документ в пропозицію користувачем ${provider} | ||
| 611 | + | ||
| 612 | + | ||
| 613 | +Можливість подати пропозицію другим учасником | ||
| 614 | + [Tags] ${USERS.users['${provider1}'].broker}: Подання пропозиції | ||
| 615 | + ... provider1 | ||
| 616 | + ... ${USERS.users['${provider1}'].broker} | ||
| 617 | + ... make_bid_by_provider1 | ||
| 618 | + ... critical | ||
| 619 | + [Setup] Дочекатись дати початку прийому пропозицій ${provider1} ${TENDER['TENDER_UAID']} | ||
| 620 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 621 | + Можливість подати цінову пропозицію на другому етапі рамкової угоди користувачем ${provider1} ${1} | ||
| 622 | + | ||
| 623 | + | ||
| 624 | +Можливість зменшити пропозицію на 5% другим учасником | ||
| 625 | + [Tags] ${USERS.users['${provider1}'].broker}: Подання пропозиції | ||
| 626 | + ... provider1 | ||
| 627 | + ... ${USERS.users['${provider1}'].broker} | ||
| 628 | + ... modify_bid_by_provider1 | ||
| 629 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
| 630 | + Можливість зменшити пропозицію до 95 відсотків користувачем ${provider1} | ||
| 631 | + | ||
| 632 | + | ||
| 633 | +Неможливість завантажити документ першим учасником після закінчення прийому пропозицій | ||
| 634 | + [Tags] ${USERS.users['${provider}'].broker}: Подання пропозиції | ||
| 635 | + ... provider | ||
| 636 | + ... ${USERS.users['${provider}'].broker} | ||
| 637 | + ... add_bid_doc_after_tendering_period_by_provider | ||
| 638 | + ... non-critical | ||
| 639 | + [Setup] Дочекатись дати закінчення прийому пропозицій ${provider} ${TENDER['TENDER_UAID']} | ||
| 640 | + Run Keyword And Expect Error * Можливість завантажити документ в пропозицію користувачем ${provider} | ||
| 641 | + | ||
| 642 | + | ||
| 643 | +################################################################### | ||
| 644 | +# Відображення посилання на аукціон | ||
| 645 | +################################################################### | ||
| 646 | + | ||
| 647 | +Можливість вичитати посилання на аукціон для глядача | ||
| 648 | + [Tags] ${USERS.users['${viewer}'].broker}: Процес аукціону | ||
| 649 | + ... viewer | ||
| 650 | + ... ${USERS.users['${viewer}'].broker} | ||
| 651 | + ... auction_url | ||
| 652 | + ... critical | ||
| 653 | + [Setup] Дочекатись дати початку періоду аукціону ${viewer} ${TENDER['TENDER_UAID']} | ||
| 654 | + Можливість отримати посилання на аукціон для глядача | ||
| 655 | + | ||
| 656 | + | ||
| 657 | +Можливість вичитати посилання на аукціон для першого учасника | ||
| 658 | + [Tags] ${USERS.users['${provider}'].broker}: Процес аукціону | ||
| 659 | + ... provider | ||
| 660 | + ... ${USERS.users['${provider}'].broker} | ||
| 661 | + ... auction_url | ||
| 662 | + ... critical | ||
| 663 | + [Setup] Дочекатись синхронізації з майданчиком ${provider} | ||
| 664 | + Можливість отримати посилання на аукціон для учасника ${provider} | ||
| 665 | + | ||
| 666 | + | ||
| 667 | +Можливість вичитати посилання на аукціон для другого учасника | ||
| 668 | + [Tags] ${USERS.users['${provider1}'].broker}: Процес аукціону | ||
| 669 | + ... provider1 | ||
| 670 | + ... ${USERS.users['${provider1}'].broker} | ||
| 671 | + ... auction_url | ||
| 672 | + ... critical | ||
| 673 | + [Setup] Дочекатись синхронізації з майданчиком ${provider1} | ||
| 674 | + Можливість отримати посилання на аукціон для учасника ${provider1} |
| @@ -31,6 +31,7 @@ from .initial_data import ( | @@ -31,6 +31,7 @@ from .initial_data import ( | ||
| 31 | test_bid_data, | 31 | test_bid_data, |
| 32 | test_bid_value, | 32 | test_bid_value, |
| 33 | test_bid_value_esco, | 33 | test_bid_value_esco, |
| 34 | + test_bid_data_selection, | ||
| 34 | test_change_data, | 35 | test_change_data, |
| 35 | test_claim_answer_data, | 36 | test_claim_answer_data, |
| 36 | test_claim_data, | 37 | test_claim_data, |
| @@ -54,6 +55,7 @@ from .initial_data import ( | @@ -54,6 +55,7 @@ from .initial_data import ( | ||
| 54 | test_tender_data_planning, | 55 | test_tender_data_planning, |
| 55 | test_tender_data_openua_defense, | 56 | test_tender_data_openua_defense, |
| 56 | test_tender_data_framework_agreement, | 57 | test_tender_data_framework_agreement, |
| 58 | + test_tender_data_selection, | ||
| 57 | test_bid_competitive_data, | 59 | test_bid_competitive_data, |
| 58 | tets_monitoring_data, | 60 | tets_monitoring_data, |
| 59 | test_party, | 61 | test_party, |
| @@ -62,6 +64,8 @@ from .initial_data import ( | @@ -62,6 +64,8 @@ from .initial_data import ( | ||
| 62 | test_status_data, | 64 | test_status_data, |
| 63 | test_elimination_report, | 65 | test_elimination_report, |
| 64 | test_tender_data_esco, | 66 | test_tender_data_esco, |
| 67 | + test_modification_data, | ||
| 68 | + test_agreement_change_data, | ||
| 65 | create_fake_title, | 69 | create_fake_title, |
| 66 | create_fake_value_amount, | 70 | create_fake_value_amount, |
| 67 | test_change_document_data, | 71 | test_change_document_data, |
| @@ -76,6 +76,7 @@ | @@ -76,6 +76,7 @@ | ||
| 76 | -i modify_contract | 76 | -i modify_contract |
| 77 | -i modify_contract_value | 77 | -i modify_contract_value |
| 78 | -i add_doc_to_contract | 78 | -i add_doc_to_contract |
| 79 | + -i contract_doc_documentOf | ||
| 79 | -i contract_sign | 80 | -i contract_sign |
| 80 | -i contract_stand_still | 81 | -i contract_stand_still |
| 81 | 82 |
| @@ -12,6 +12,7 @@ | @@ -12,6 +12,7 @@ | ||
| 12 | -i find_tender | 12 | -i find_tender |
| 13 | 13 | ||
| 14 | -i tender_view | 14 | -i tender_view |
| 15 | +-i tender_view_value | ||
| 15 | -i tender_view_unit_code | 16 | -i tender_view_unit_code |
| 16 | -i tender_view_coordinates | 17 | -i tender_view_coordinates |
| 17 | -i tender_view_framework | 18 | -i tender_view_framework |
| @@ -58,6 +59,7 @@ | @@ -58,6 +59,7 @@ | ||
| 58 | -i openeu_add_financial_bid_doc_by_provider | 59 | -i openeu_add_financial_bid_doc_by_provider |
| 59 | -i openeu_add_qualification_bid_doc_by_provider | 60 | -i openeu_add_qualification_bid_doc_by_provider |
| 60 | -i openeu_add_eligibility_bid_doc_by_provider | 61 | -i openeu_add_eligibility_bid_doc_by_provider |
| 62 | +-i add_winningBid_doc_by_provider | ||
| 61 | 63 | ||
| 62 | -i pre-qualification_add_doc_to_tender | 64 | -i pre-qualification_add_doc_to_tender |
| 63 | -i pre-qualification_add_doc_to_lot | 65 | -i pre-qualification_add_doc_to_lot |
| @@ -76,6 +78,7 @@ | @@ -76,6 +78,7 @@ | ||
| 76 | -i pre-qualification_approve_qualifications | 78 | -i pre-qualification_approve_qualifications |
| 77 | 79 | ||
| 78 | -i auction_url | 80 | -i auction_url |
| 81 | +-i auction | ||
| 79 | 82 | ||
| 80 | -i qualification_add_doc_to_first_award | 83 | -i qualification_add_doc_to_first_award |
| 81 | -i qualification_approve_first_award | 84 | -i qualification_approve_first_award |
| @@ -92,4 +95,13 @@ | @@ -92,4 +95,13 @@ | ||
| 92 | -i contract_stand_still | 95 | -i contract_stand_still |
| 93 | -i awarding_approve_first_award | 96 | -i awarding_approve_first_award |
| 94 | -i modify_agreement | 97 | -i modify_agreement |
| 95 | --i agreement_registration | ||
| 98 | +-i agreement_registration | ||
| 99 | + | ||
| 100 | + | ||
| 101 | +-i find_agreement | ||
| 102 | +-i add_agreement_doc | ||
| 103 | +-i submit_change | ||
| 104 | +-i change_view | ||
| 105 | +-i modification | ||
| 106 | +-i modification_view | ||
| 107 | +-i apply_change |
| 1 | +-v MODE:framework_selection | ||
| 2 | + | ||
| 3 | +-v NUMBER_OF_ITEMS:1 | ||
| 4 | +-v NUMBER_OF_LOTS:1 | ||
| 5 | + | ||
| 6 | +-v TENDER_MEAT:False | ||
| 7 | +-v ITEM_MEAT:False | ||
| 8 | +-v LOT_MEAT:False | ||
| 9 | + | ||
| 10 | +-i create_tender | ||
| 11 | +-i find_tender | ||
| 12 | +-i tender_view | ||
| 13 | +-i tender_view_value | ||
| 14 | +-i tender_view_minimalStep | ||
| 15 | +-i tender_view_deliveryDate | ||
| 16 | +-i tender_view_quantity | ||
| 17 | +-i tender_view_unit_code | ||
| 18 | +-i tender_view_coordinates | ||
| 19 | +-i meat_view | ||
| 20 | +-i lot_view | ||
| 21 | +-i lot_view_value | ||
| 22 | +-i lot_view_minimalStep | ||
| 23 | +-i modify_item | ||
| 24 | +-i modify_lot | ||
| 25 | + | ||
| 26 | +-i add_tender_doc | ||
| 27 | +-i add_lot_doc | ||
| 28 | + | ||
| 29 | +-i extend_tendering_period | ||
| 30 | + | ||
| 31 | +-i make_bid_by_provider | ||
| 32 | + -i modify_bid_by_provider | ||
| 33 | + -i add_doc_to_bid_by_provider | ||
| 34 | +-i make_bid_by_provider1 | ||
| 35 | + -i modify_bid_by_provider1 | ||
| 36 | +-i bid_view_in_tendering_period | ||
| 37 | +-i add_bid_doc_after_tendering_period_by_provider | ||
| 38 | + | ||
| 39 | + | ||
| 40 | +-i auction_url | ||
| 41 | +-i auction | ||
| 42 | + | ||
| 43 | +-i qualification_add_doc_to_first_award | ||
| 44 | +-i qualification_approve_first_award | ||
| 45 | +-i qualification_cancel_first_award_qualification | ||
| 46 | +-i qualification_add_doc_to_second_award | ||
| 47 | +-i qualification_approve_second_award | ||
| 48 | + | ||
| 49 | +-i contract_view | ||
| 50 | +-i modify_contract | ||
| 51 | +-i add_doc_to_contract | ||
| 52 | +-i contract_sign | ||
| 53 | + | ||
| 54 | +-i find_contract | ||
| 55 | +-i access_contract | ||
| 56 | +-i submit_change | ||
| 57 | +-i view_change | ||
| 58 | +-i upload_change_document | ||
| 59 | +-i modify_change | ||
| 60 | +-i apply_change | ||
| 61 | +-i add_contract_doc | ||
| 62 | +-i termination_reasons | ||
| 63 | +-i amount_paid | ||
| 64 | +-i contract_termination |
| @@ -105,6 +105,7 @@ | @@ -105,6 +105,7 @@ | ||
| 105 | -i modify_contract | 105 | -i modify_contract |
| 106 | -i modify_contract_value | 106 | -i modify_contract_value |
| 107 | -i add_doc_to_contract | 107 | -i add_doc_to_contract |
| 108 | + -i contract_doc_documentOf | ||
| 108 | -i contract_sign | 109 | -i contract_sign |
| 109 | -i contract_stand_still | 110 | -i contract_stand_still |
| 110 | 111 |
| @@ -81,6 +81,7 @@ | @@ -81,6 +81,7 @@ | ||
| 81 | -i modify_contract | 81 | -i modify_contract |
| 82 | -i modify_contract_value | 82 | -i modify_contract_value |
| 83 | -i add_doc_to_contract | 83 | -i add_doc_to_contract |
| 84 | + -i contract_doc_documentOf | ||
| 84 | -i contract_sign | 85 | -i contract_sign |
| 85 | -i contract_stand_still | 86 | -i contract_stand_still |
| 86 | 87 |
Please
register
or
login
to post a comment