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 | 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 | 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 | 55 | Set To Dictionary ${USERS.users['${username}'].bidresponses} bid_doc_upload=${bid_doc_upload} |
55 | 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 | 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 | 56 | ${period_intervals}= compute_intrs ${BROKERS} ${used_brokers} |
34 | 57 | ${accelerator}= Get Variable Value ${accelerator} |
... | ... | @@ -683,6 +706,27 @@ Resource resource.robot |
683 | 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 | 730 | Можливість видалити ${feature_index} неціновий показник |
687 | 731 | ${feature_id}= get_id_from_object ${USERS.users['${tender_owner}'].tender_data.data['features'][${feature_index}]} |
688 | 732 | Run As ${tender_owner} Видалити неціновий показник ${TENDER['TENDER_UAID']} ${feature_id} |
... | ... | @@ -1267,6 +1311,18 @@ Resource resource.robot |
1267 | 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 | 1326 | Можливість подати цінову пропозицію на другий етап користувачем ${username} |
1271 | 1327 | ${bid}= Підготувати дані для подання пропозиції для другого етапу ${username} |
1272 | 1328 | ${bidresponses}= Create Dictionary bid=${bid} |
... | ... | @@ -1365,6 +1421,33 @@ Resource resource.robot |
1365 | 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 | 1452 | Run as ${tender_owner} |
1370 | 1453 | ... Підтвердити підписання контракту | ... | ... |
... | ... | @@ -43,6 +43,19 @@ Library openprocurement_client.utils |
43 | 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 | 60 | [Arguments] ${username} |
48 | 61 | [Documentation] Відкрити браузер, створити об’єкти api wrapper і |
... | ... | @@ -62,7 +75,9 @@ Library openprocurement_client.utils |
62 | 75 | ... prepare_plan_api_wrapper ${USERS.users['${username}'].api_key} PLANS ${API_HOST_URL} ${API_VERSION} |
63 | 76 | ... ELSE prepare_api_wrapper ${USERS.users['${username}'].api_key} ${RESOURCE} ${API_HOST_URL} ${API_VERSION} ${ds_api_wraper} |
64 | 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 | 79 | Set To Dictionary ${USERS.users['${username}']} client=${api_wrapper} |
80 | + Set To Dictionary ${USERS.users['${username}']} agreement_client=${agreement_wrapper} | |
66 | 81 | Set To Dictionary ${USERS.users['${username}']} dasu_client=${dasu_api_wraper} |
67 | 82 | Set To Dictionary ${USERS.users['${username}']} access_token=${EMPTY} |
68 | 83 | ${id_map}= Create Dictionary |
... | ... | @@ -75,6 +90,8 @@ Library openprocurement_client.utils |
75 | 90 | ${contract_api_wrapper}= prepare_contract_api_wrapper ${USERS.users['${username}'].api_key} CONTRACTS ${api_host_url} ${api_version} ${ds_api_wraper} |
76 | 91 | Set To Dictionary ${USERS.users['${username}']} contracting_client=${contract_api_wrapper} |
77 | 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 | 95 | ${contracts_id_map}= Create Dictionary |
79 | 96 | Set To Dictionary ${USERS.users['${username}']} contracts_id_map=${contracts_id_map} |
80 | 97 | Log Variables |
... | ... | @@ -167,6 +184,7 @@ Library openprocurement_client.utils |
167 | 184 | ${access_token}= Get Variable Value ${tender.access.token} |
168 | 185 | ${status}= Set Variable If 'open' in '${MODE}' active.tendering ${EMPTY} |
169 | 186 | ${status}= Set Variable If 'below' in '${MODE}' active.enquiries ${status} |
187 | + ${status}= Set Variable If 'selection' in '${MODE}' draft.pending ${status} | |
170 | 188 | ${status}= Set Variable If '${status}'=='${EMPTY}' active ${status} |
171 | 189 | Set To Dictionary ${tender['data']} status=${status} |
172 | 190 | ${tender}= Call Method ${USERS.users['${username}'].client} patch_tender |
... | ... | @@ -258,6 +276,16 @@ Library openprocurement_client.utils |
258 | 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 | 290 | [Arguments] ${username} ${monitoring_uaid} ${save_key}=monitoring |
263 | 291 | ${token}= Set Variable ${USERS.users['${username}'].access_token} |
... | ... | @@ -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 | 1327 | ${bid_id}= Get Variable Value ${USERS.users['${username}'].bidresponses['bid'].data.id} |
1300 | 1328 | ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid} |
1301 | 1329 | ${tender}= set_access_key ${tender} ${USERS.users['${username}']['access_token']} |
... | ... | @@ -1303,7 +1331,9 @@ Library openprocurement_client.utils |
1303 | 1331 | ... ${path} |
1304 | 1332 | ... ${tender.data.id} |
1305 | 1333 | ... ${bid_id} |
1334 | + ... doc_type=${doc_type} | |
1306 | 1335 | ... access_token=${tender.access.token} |
1336 | + ... subitem_name=${doc_name} | |
1307 | 1337 | ${uploaded_file} = Create Dictionary |
1308 | 1338 | ... filepath=${path} |
1309 | 1339 | ... upload_response=${response} |
... | ... | @@ -2039,3 +2069,102 @@ Library openprocurement_client.utils |
2039 | 2069 | ${document}= get_document_by_id ${tender.data} ${doc_id} |
2040 | 2070 | ${filename}= download_file_from_url ${document.url} ${OUTPUT_DIR}${/}${document.title} |
2041 | 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} | |
\ No newline at end of file | ... | ... |
1 | 1 | from openprocurement_client.resources.tenders import Client |
2 | 2 | from openprocurement_client.resources.edr import EDRClient |
3 | +from openprocurement_client.resources.agreements import AgreementClient | |
3 | 4 | from openprocurement_client.dasu_client import DasuClient |
4 | 5 | from openprocurement_client.resources.document_service import DocumentServiceClient |
5 | 6 | from openprocurement_client.resources.plans import PlansClient |
... | ... | @@ -34,6 +35,13 @@ class StableDsClient(DocumentServiceClient): |
34 | 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 | 45 | def prepare_api_wrapper(key, resource, host_url, api_version, ds_client=None): |
38 | 46 | return StableClient(key, resource, host_url, api_version, |
39 | 47 | ds_client=ds_client) |
... | ... | @@ -43,6 +51,11 @@ def prepare_ds_api_wrapper(ds_host_url, auth_ds): |
43 | 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 | 59 | class ContractingStableClient(ContractingClient): |
47 | 60 | @retry(stop_max_attempt_number=100, wait_random_min=500, wait_random_max=4000, retry_on_exception=retry_if_request_failed) |
48 | 61 | def request(self, *args, **kwargs): | ... | ... |
... | ... | @@ -26,7 +26,7 @@ Suite Teardown Test Suite Teardown |
26 | 26 | [Tags] ${USERS.users['${tender_owner}'].broker}: Відображення основних даних тендера |
27 | 27 | ... tender_owner |
28 | 28 | ... ${USERS.users['${tender_owner}'].broker} |
29 | - ... tender_view | |
29 | + ... contract_stand_still | |
30 | 30 | ... critical |
31 | 31 | ${award_index}= Отримати останній індекс awards ${tender_owner} ${viewer} |
32 | 32 | :FOR ${username} IN ${viewer} ${tender_owner} |
... | ... | @@ -177,7 +177,7 @@ Suite Teardown Test Suite Teardown |
177 | 177 | [Tags] ${USERS.users['${viewer}'].broker}: Відображення документації |
178 | 178 | ... viewer |
179 | 179 | ... ${USERS.users['${viewer}'].broker} |
180 | - ... add_doc_to_contract | |
180 | + ... contract_doc_documentOf | |
181 | 181 | Звірити відображення поля documentOf документа ${USERS.users['${tender_owner}']['contract_doc']['id']} із tender для користувача ${viewer} |
182 | 182 | |
183 | 183 | ... | ... |
... | ... | @@ -51,6 +51,8 @@ Default: |
51 | 51 | open_framework: |
52 | 52 | accelerator: 1440 |
53 | 53 | tender: [0, 30] |
54 | + framework_selection: | |
55 | + accelerator: 360 | |
54 | 56 | # Synchronization delay, in seconds |
55 | 57 | timeout_on_wait: 300 |
56 | 58 | Quinta: |
... | ... | @@ -74,6 +76,8 @@ Quinta: |
74 | 76 | open_framework: |
75 | 77 | accelerator: 1440 |
76 | 78 | tender: [0, 30] |
79 | + framework_selection: | |
80 | + accelerator: 360 | |
77 | 81 | keywords_file: openprocurement_client |
78 | 82 | roles: |
79 | 83 | provider: Tender_User | ... | ... |
... | ... | @@ -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 | 495 | def test_supplier_data(): |
483 | 496 | return munchify({ |
... | ... | @@ -636,6 +649,22 @@ def test_tender_data_competitive_dialogue(params, submissionMethodDetails): |
636 | 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 | 668 | def test_change_data(): |
640 | 669 | return munchify( |
641 | 670 | { |
... | ... | @@ -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 | 708 | def get_hash(file_contents): |
654 | 709 | return ("md5:"+hashlib.md5(file_contents).hexdigest()) |
655 | 710 | ... | ... |
... | ... | @@ -294,6 +294,12 @@ Get Broker Property By Username |
294 | 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 | 304 | [Arguments] ${username} |
299 | 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 | 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 | 369 | [Arguments] ${tender_data} |
345 | 370 | # munchify is used to make deep copy of ${tender_data} |
... | ... | @@ -530,6 +555,12 @@ Log differences between dicts |
530 | 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 | 565 | [Arguments] ${username} ${contract_uaid} ${change_data} ${field} |
535 | 566 | ${left}= get_from_object ${change_data.data} ${field} |
... | ... | @@ -604,7 +635,9 @@ Log differences between dicts |
604 | 635 | [Arguments] ${username} ${tender_uaid} ${tender_data} ${item_id} |
605 | 636 | ${item_index}= get_object_index_by_id ${tender_data.data['items']} ${item_id} |
606 | 637 | ${left_lat}= get_from_object ${tender_data.data} items[${item_index}].deliveryLocation.latitude |
638 | + ${left_lat}= Convert To Number ${left_lat} | |
607 | 639 | ${left_lon}= get_from_object ${tender_data.data} items[${item_index}].deliveryLocation.longitude |
640 | + ${left_lon}= Convert To Number ${left_lon} | |
608 | 641 | ${right_lat}= Отримати дані із тендера ${username} ${tender_uaid} deliveryLocation.latitude ${item_id} |
609 | 642 | ${right_lat}= Convert To Number ${right_lat} |
610 | 643 | ${right_lon}= Отримати дані із тендера ${username} ${tender_uaid} deliveryLocation.longitude ${item_id} |
... | ... | @@ -690,6 +723,24 @@ Log differences between dicts |
690 | 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 | 745 | [Arguments] ${username} ${monitoring_uaid} ${field_name} ${object_id}=${Empty} |
695 | 746 | ${status} ${field_value}= Run keyword and ignore error |
... | ... | @@ -912,6 +963,19 @@ Require Failure |
912 | 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 | 980 | [Arguments] ${username} ${tender_uaid} |
917 | 981 | # This tries to get the date from current user's procurement data cache. |
... | ... | @@ -1136,12 +1200,15 @@ Require Failure |
1136 | 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 | 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 | 1212 | ${contract_data}= munch_dict arg=${contract_data} |
1146 | 1213 | Log ${contract_data} |
1147 | 1214 | [Return] ${contract_data} |
\ No newline at end of file | ... | ... |
... | ... | @@ -1779,7 +1779,17 @@ ${MOZ_INTEGRATION} ${False} |
1779 | 1779 | ... openeu_add_financial_bid_doc_by_provider |
1780 | 1780 | ... critical |
1781 | 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 | 1799 | ... openeu_add_qualification_bid_doc_by_provider |
1790 | 1800 | ... critical |
1791 | 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 | 1809 | ... openeu_add_eligibility_bid_doc_by_provider |
1800 | 1810 | ... critical |
1801 | 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} | |
\ No newline at end of file | ... | ... |
... | ... | @@ -31,6 +31,7 @@ from .initial_data import ( |
31 | 31 | test_bid_data, |
32 | 32 | test_bid_value, |
33 | 33 | test_bid_value_esco, |
34 | + test_bid_data_selection, | |
34 | 35 | test_change_data, |
35 | 36 | test_claim_answer_data, |
36 | 37 | test_claim_data, |
... | ... | @@ -54,6 +55,7 @@ from .initial_data import ( |
54 | 55 | test_tender_data_planning, |
55 | 56 | test_tender_data_openua_defense, |
56 | 57 | test_tender_data_framework_agreement, |
58 | + test_tender_data_selection, | |
57 | 59 | test_bid_competitive_data, |
58 | 60 | tets_monitoring_data, |
59 | 61 | test_party, |
... | ... | @@ -62,6 +64,8 @@ from .initial_data import ( |
62 | 64 | test_status_data, |
63 | 65 | test_elimination_report, |
64 | 66 | test_tender_data_esco, |
67 | + test_modification_data, | |
68 | + test_agreement_change_data, | |
65 | 69 | create_fake_title, |
66 | 70 | create_fake_value_amount, |
67 | 71 | test_change_document_data, | ... | ... |
... | ... | @@ -12,6 +12,7 @@ |
12 | 12 | -i find_tender |
13 | 13 | |
14 | 14 | -i tender_view |
15 | +-i tender_view_value | |
15 | 16 | -i tender_view_unit_code |
16 | 17 | -i tender_view_coordinates |
17 | 18 | -i tender_view_framework |
... | ... | @@ -58,6 +59,7 @@ |
58 | 59 | -i openeu_add_financial_bid_doc_by_provider |
59 | 60 | -i openeu_add_qualification_bid_doc_by_provider |
60 | 61 | -i openeu_add_eligibility_bid_doc_by_provider |
62 | +-i add_winningBid_doc_by_provider | |
61 | 63 | |
62 | 64 | -i pre-qualification_add_doc_to_tender |
63 | 65 | -i pre-qualification_add_doc_to_lot |
... | ... | @@ -76,6 +78,7 @@ |
76 | 78 | -i pre-qualification_approve_qualifications |
77 | 79 | |
78 | 80 | -i auction_url |
81 | +-i auction | |
79 | 82 | |
80 | 83 | -i qualification_add_doc_to_first_award |
81 | 84 | -i qualification_approve_first_award |
... | ... | @@ -92,4 +95,13 @@ |
92 | 95 | -i contract_stand_still |
93 | 96 | -i awarding_approve_first_award |
94 | 97 | -i modify_agreement |
95 | --i agreement_registration | |
\ No newline at end of file | ||
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 | |
\ No newline at end of file | ... | ... |
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 | |
\ No newline at end of file | ... | ... |
Please
register
or
login
to post a comment