Commit 6377c0b74ef90c1308133f80f8ad97261529fd36

Authored by selurvedu
2 parents 99983217 77d60d00

Merge pull request #43 from mykhaly/limited

Limited procurement
1 1 *** Settings ***
2 2 Library openprocurement_client_helper.py
3 3
  4 +
4 5 *** Keywords ***
5 6 Отримати internal id по UAid
6 7 [Arguments] @{ARGUMENTS}
... ... @@ -19,6 +20,7 @@ Library openprocurement_client_helper.py
19 20 Dictionary Should Contain Key ${ID_MAP} ${ARGUMENTS[1]}
20 21 Run Keyword And Return Get From Dictionary ${ID_MAP} ${ARGUMENTS[1]}
21 22
  23 +
22 24 Підготувати клієнт для користувача
23 25 [Arguments] @{ARGUMENTS}
24 26 [Documentation] Відкрити браузер, створити об’єкт api wrapper, тощо
... ... @@ -28,10 +30,12 @@ Library openprocurement_client_helper.py
28 30 Set Suite Variable ${ID_MAP}
29 31 Log Variables
30 32
  33 +
31 34 Підготувати дані для оголошення тендера
32 35 ${INITIAL_TENDER_DATA}= prepare_test_tender_data
33 36 [return] ${INITIAL_TENDER_DATA}
34 37
  38 +
35 39 Створити тендер
36 40 [Arguments] @{ARGUMENTS}
37 41 ${TENDER_DATA}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} create_tender ${ARGUMENTS[1]}
... ... @@ -44,6 +48,7 @@ Library openprocurement_client_helper.py
44 48 Log ${USERS.users['${ARGUMENTS[0]}'].TENDER_DATA}
45 49 [return] ${TENDER_DATA.data.tenderID}
46 50
  51 +
47 52 Пошук тендера по ідентифікатору
48 53 [Arguments] @{ARGUMENTS}
49 54 [Documentation]
... ... @@ -54,12 +59,15 @@ Library openprocurement_client_helper.py
54 59 Set To Dictionary ${USERS.users['${ARGUMENTS[0]}']} tender_data ${tender_data}
55 60 [return] ${tender_data}
56 61
  62 +
57 63 Оновити сторінку з тендером
58 64 [Arguments] @{ARGUMENTS}
59 65 [Documentation]
60 66 ... ${ARGUMENTS[0]} == username
61 67 ... ${ARGUMENTS[1]} == tenderId
62   - openprocurement_client.Пошук тендера по ідентифікатору @{ARGUMENTS}
  68 + ${tender_data}= openprocurement_client.Пошук тендера по ідентифікатору @{ARGUMENTS}
  69 + Log ${tender_data}
  70 +
63 71
64 72 Отримати інформацію із тендера
65 73 [Arguments] @{ARGUMENTS}
... ... @@ -71,6 +79,7 @@ Library openprocurement_client_helper.py
71 79 Log ${field_value}
72 80 [return] ${field_value}
73 81
  82 +
74 83 Внести зміни в тендер
75 84 [Arguments] @{ARGUMENTS}
76 85 [Documentation]
... ... @@ -85,6 +94,7 @@ Library openprocurement_client_helper.py
85 94 ${TENDER_DATA}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} patch_tender ${TENDER_DATA}
86 95 Set Global Variable ${TENDER_DATA}
87 96
  97 +
88 98 Отримати тендер
89 99 [Arguments] @{ARGUMENTS}
90 100 [Documentation]
... ... @@ -95,6 +105,7 @@ Library openprocurement_client_helper.py
95 105 ${TENDER_DATA}= set_access_key ${TENDER_DATA} ${USERS.users['${ARGUMENTS[0]}'].access_token}
96 106 Set Global Variable ${TENDER_DATA}
97 107
  108 +
98 109 Відняти предмети закупівлі
99 110 [Arguments] @{ARGUMENTS}
100 111 [Documentation]
... ... @@ -112,6 +123,7 @@ Library openprocurement_client_helper.py
112 123 ${TENDER_DATA}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} patch_tender ${TENDER_DATA}
113 124 ${TENDER_DATA}= set_access_key ${TENDER_DATA} ${USERS.users['${ARGUMENTS[0]}'].access_token}
114 125
  126 +
115 127 Додати предмети закупівлі
116 128 [Arguments] @{ARGUMENTS}
117 129 [Documentation]
... ... @@ -130,19 +142,21 @@ Library openprocurement_client_helper.py
130 142 ${TENDER_DATA}= set_access_key ${TENDER_DATA} ${USERS.users['${ARGUMENTS[0]}'].access_token}
131 143 ${TENDER_DATA}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} patch_tender ${TENDER_DATA}
132 144
  145 +
133 146 Задати питання
134 147 [Documentation]
135 148 ... ${ARGUMENTS[0]} == username
136 149 ... ${ARGUMENTS[1]} == tender_uid
137 150 ... ${ARGUMENTS[2]} == question
138 151 [Arguments] @{ARGUMENTS}
139   - log many @{ARGUMENTS}
  152 + Log many @{ARGUMENTS}
140 153 ${internalid}= Отримати internal id по UAid ${ARGUMENTS[0]} ${ARGUMENTS[1]}
141 154 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${internalid}
142   - log ${USERS.users['${ARGUMENTS[0]}']}
  155 + Log ${USERS.users['${ARGUMENTS[0]}']}
143 156 ${biddingresponse}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} create_question ${tender} ${ARGUMENTS[2]}
144 157 [return] ${biddingresponse}
145 158
  159 +
146 160 Відповісти на питання
147 161 [Documentation]
148 162 ... ${ARGUMENTS[0]} == username
... ... @@ -150,23 +164,24 @@ Library openprocurement_client_helper.py
150 164 ... ${ARGUMENTS[2]} == question_id
151 165 ... ${ARGUMENTS[3]} == answer_data
152 166 [Arguments] @{ARGUMENTS}
153   - log many @{ARGUMENTS}
  167 + Log many @{ARGUMENTS}
154 168 ${internalid}= Отримати internal id по UAid ${ARGUMENTS[0]} ${ARGUMENTS[1]}
155 169 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${internalid}
156   - log many ${USERS.users['${ARGUMENTS[0]}']}
  170 + Log many ${USERS.users['${ARGUMENTS[0]}']}
157 171 ${tender}= set_access_key ${tender} ${USERS.users['${ARGUMENTS[0]}'].access_token}
158 172 ${ARGUMENTS[3].data.id}= Set Variable ${tender.data.questions[${ARGUMENTS[2]}].id}
159 173 ${question_with_answer}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} patch_question ${tender} ${ARGUMENTS[3]}
160   - log many ${USERS.users['${ARGUMENTS[0]}'].client} ${tender} ${ARGUMENTS[3]}
  174 + Log many ${USERS.users['${ARGUMENTS[0]}'].client} ${tender} ${ARGUMENTS[3]}
161 175 Log object data ${question_with_answer} question_with_answer
162 176
  177 +
163 178 Подати скаргу
164 179 [Documentation]
165 180 ... ${ARGUMENTS[0]} == username
166 181 ... ${ARGUMENTS[1]} == tender_uid
167 182 ... ${ARGUMENTS[2]} == complaint
168 183 [Arguments] @{ARGUMENTS}
169   - log many @{ARGUMENTS}
  184 + Log many @{ARGUMENTS}
170 185 ${internalid}= Отримати internal id по UAid ${ARGUMENTS[0]} ${ARGUMENTS[1]}
171 186 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${internalid}
172 187 ${complaint}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} _create_tender_resource_item ${tender} ${ARGUMENTS[2]} complaints
... ... @@ -174,23 +189,25 @@ Library openprocurement_client_helper.py
174 189 Set To Dictionary ${USERS.users['${ARGUMENTS[0]}']} access_token ${access_token}
175 190 Log object data ${complaint} complaint
176 191
  192 +
177 193 Порівняти скаргу
178 194 [Documentation]
179 195 ... ${ARGUMENTS[0]} == username
180 196 ... ${ARGUMENTS[1]} == tender_uid
181 197 ... ${ARGUMENTS[2]} == complaint
182 198 [Arguments] @{ARGUMENTS}
  199 + Log many @{ARGUMENTS}
183 200 ${internalid}= Отримати internal id по UAid ${ARGUMENTS[0]} ${ARGUMENTS[1]}
184 201 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${internalid}
185 202 ${complaint}= Get Variable Value ${tender.data.complaints[0]}
186   - log ${complaint}
187   - log ${ARGUMENTS[2]}
  203 + Log ${complaint}
188 204 #TODO: COMPARE
189 205 #Dictionary Should Contain Sub Dictionary ${complaint} ${ARGUMENTS[2].data}
190 206 #:FOR ${element} IN ${ARGUMENTS[2].data}
191   - #\ log ${element}
  207 + #\ Log ${element}
192 208 #\ Dictionary Should Contain Value ${complaint} ${element}
193 209
  210 +
194 211 Обробити скаргу
195 212 [Documentation]
196 213 ... ${ARGUMENTS[0]} == username
... ... @@ -198,28 +215,30 @@ Library openprocurement_client_helper.py
198 215 ... ${ARGUMENTS[2]} == question_id
199 216 ... ${ARGUMENTS[3]} == answer_data
200 217 [Arguments] @{ARGUMENTS}
201   - log many @{ARGUMENTS}
  218 + Log many @{ARGUMENTS}
202 219 ${internalid}= Отримати internal id по UAid ${ARGUMENTS[0]} ${ARGUMENTS[1]}
203 220 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${internalid}
204 221 ${tender}= set_access_key ${tender} ${USERS.users['${ARGUMENTS[0]}'].access_token}
205 222 ${ARGUMENTS[3].data.id}= Set Variable ${tender.data.complaints[${ARGUMENTS[2]}].id}
206 223 ${complaint_with_answer}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} _patch_tender_resource_item ${tender} ${ARGUMENTS[3]} complaints
207   - log many ${USERS.users['${ARGUMENTS[0]}'].client} ${tender} ${ARGUMENTS[3]}
  224 + Log many ${USERS.users['${ARGUMENTS[0]}'].client} ${tender} ${ARGUMENTS[3]}
208 225 Log object data ${complaint_with_answer} complaint_with_answer
209 226
  227 +
210 228 Подати цінову пропозицію
211 229 [Documentation]
212 230 ... ${ARGUMENTS[0]} == username
213 231 ... ${ARGUMENTS[1]} == tender_uid
214 232 ... ${ARGUMENTS[2]} == bid
215 233 [Arguments] @{ARGUMENTS}
216   - log many @{ARGUMENTS}
  234 + Log many @{ARGUMENTS}
217 235 ${internalid}= Отримати internal id по UAid ${ARGUMENTS[0]} ${ARGUMENTS[1]}
218 236 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${internalid}
219   - log ${tender}Отримати
  237 + Log ${tender}
220 238 ${biddingresponse}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} create_bid ${tender} ${ARGUMENTS[2]}
221 239 [return] ${biddingresponse}
222 240
  241 +
223 242 Змінити цінову пропозицію
224 243 [Documentation]
225 244 ... ${ARGUMENTS[0]} == username
... ... @@ -232,20 +251,22 @@ Library openprocurement_client_helper.py
232 251 Log ${changed_bid}
233 252 [return] ${changed_bid}
234 253
  254 +
235 255 Скасувати цінову пропозицію
236 256 [Documentation]
237 257 ... ${ARGUMENTS[0]} == username
238 258 ... ${ARGUMENTS[1]} == tender_uid
239 259 ... ${ARGUMENTS[2]} == bid
240 260 [Arguments] @{ARGUMENTS}
  261 + Log many @{ARGUMENTS}
241 262 ${internalid}= Отримати internal id по UAid ${ARGUMENTS[0]} ${ARGUMENTS[1]}
242 263 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${internalid}
243   - log ${tender}
244   - log ${ARGUMENTS[2]}Отримати
  264 + Log ${tender}
245 265 ${changed_bid}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} delete_bid ${tender} ${ARGUMENTS[2]}
246 266 Log ${changed_bid}
247 267 [return] ${changed_bid}
248 268
  269 +
249 270 Прийняти цінову пропозицію
250 271 [Documentation]
251 272 ... ${ARGUMENTS[0]} == username
... ... @@ -259,25 +280,25 @@ Library openprocurement_client_helper.py
259 280 Log ${award_activeted_response}
260 281 [return] ${award_activeted_response}
261 282
  283 +
262 284 Завантажити документ в ставку
263 285 [Documentation]
264 286 ... ${ARGUMENTS[0]} == username
265 287 ... ${ARGUMENTS[1]} == path
266 288 ... ${ARGUMENTS[2]} == tenderid
267 289 [Arguments] @{ARGUMENTS}
268   - log ${ARGUMENTS[0]}
269   - log ${ARGUMENTS[1]}
270   - log ${ARGUMENTS[2]}
  290 + Log many @{ARGUMENTS}
271 291 ${bid_id}= Get Variable Value ${USERS.users['${ARGUMENTS[0]}'].bidresponses['resp'].data.id}
272 292 ${internalid}= Отримати internal id по UAid ${ARGUMENTS[0]} ${ARGUMENTS[2]}
273 293 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${internalid}
274 294 ${tender}= set_access_key ${tender} ${USERS.users['${ARGUMENTS[0]}'].bidresponses['resp'].access.token}
275 295 ${response}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} upload_bid_document ${ARGUMENTS[1]} ${tender} ${bid_id}
276 296 ${uploaded_file} = Create Dictionary filepath ${ARGUMENTS[1]} upload_response ${response}
277   - log ${response}
  297 + Log ${response}
278 298 Log object data ${uploaded_file}
279 299 [return] ${uploaded_file}
280 300
  301 +
281 302 Змінити документ в ставці
282 303 [Documentation]
283 304 ... ${ARGUMENTS[0]} == username
... ... @@ -285,27 +306,24 @@ Library openprocurement_client_helper.py
285 306 ... ${ARGUMENTS[2]} == bidid
286 307 ... ${ARGUMENTS[3]} == docid
287 308 [Arguments] @{ARGUMENTS}
288   - log ${ARGUMENTS[0]}
289   - log ${ARGUMENTS[1]}
290   - log ${ARGUMENTS[2]}
291   - ${internalid}= Отримати internal id по UAid ${ARGUMENTS[0]} ${TENDER['TENDER_UAID']}
  309 + Log many @{ARGUMENTS}
  310 + ${internalid}= Отримати internal id по UAid ${ARGUMENTS[0]} ${TENDER['TENDER['TENDER_UAID']']}
292 311 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${internalid}
293 312 ${tender}= set_access_key ${tender} ${USERS.users['${ARGUMENTS[0]}'].bidresponses['resp'].access.token}
294 313 ${response}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} update_bid_document ${ARGUMENTS[1]} ${tender} ${ARGUMENTS[2]} ${ARGUMENTS[3]}
295 314 ${uploaded_file} = Create Dictionary filepath ${ARGUMENTS[1]} upload_response ${response}
296   - log ${response}
  315 + Log ${response}
297 316 Log object data ${uploaded_file}
298 317 [return] ${uploaded_file}
299 318
  319 +
300 320 Завантажити документ
301 321 [Documentation]
302 322 ... ${ARGUMENTS[0]} == username
303 323 ... ${ARGUMENTS[1]} == filepath
304   - ... ${ARGUMENTS[2]} == tenderUAID
  324 + ... ${ARGUMENTS[2]} == TENDER['TENDER_UAID']
305 325 [Arguments] @{ARGUMENTS}
306   - log ${ARGUMENTS[0]}
307   - log ${ARGUMENTS[1]}
308   - log ${ARGUMENTS[2]}
  326 + Log many @{ARGUMENTS}
309 327 ${tenderID}= openprocurement_client.Отримати internal id по UAid ${ARGUMENTS[0]} ${ARGUMENTS[2]}
310 328 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${tenderID}
311 329 ${tender}= set_access_key ${tender} ${USERS.users['${ARGUMENTS[0]}'].access_token}
... ... @@ -313,17 +331,20 @@ Library openprocurement_client_helper.py
313 331 Log object data ${reply} reply
314 332 [return] ${reply}
315 333
  334 +
316 335 Отримати посилання на аукціон для глядача
317 336 [Arguments] ${username} ${tender_uid}
318 337 ${internalid}= Отримати internal id по UAid ${username} ${tender_uid}
319 338 ${tender}= Call Method ${USERS.users['${username}'].client} get_tender ${internalid}
320 339 [return] ${tender.data.auctionUrl}
321 340
  341 +
322 342 Отримати посилання на аукціон для учасника
323 343 [Arguments] ${username} ${tender_uid}
324 344 ${bid}= Викликати для учасника ${username} Отримати пропозицію ${tender_uid}
325 345 [return] ${bid.data.participationUrl}
326 346
  347 +
327 348 Отримати пропозицію
328 349 [Arguments] ${username} ${tender_uid}
329 350 ${internalid}= Отримати internal id по UAid ${username} ${tender_uid}
... ... @@ -333,20 +354,19 @@ Library openprocurement_client_helper.py
333 354 ${bid}= Call Method ${USERS.users['${username}'].client} get_bid ${tender} ${bid_id} ${token}
334 355 [return] ${bid}
335 356
  357 +
336 358 Отримати документ
337 359 [Documentation]
338 360 ... ${ARGUMENTS[0]} == username
339   - ... ${ARGUMENTS[1]} == tenderUaID
  361 + ... ${ARGUMENTS[1]} == TENDER['TENDER_UAID']
340 362 ... ${ARGUMENTS[2]} == url
341 363 [Arguments] @{ARGUMENTS}
342   - log ${ARGUMENTS[0]}
343   - log ${ARGUMENTS[1]}
344   - log ${ARGUMENTS[2]}
  364 + Log many @{ARGUMENTS}
345 365 ${tenderID}= openprocurement_client.Отримати internal id по UAid ${ARGUMENTS[0]} ${ARGUMENTS[1]}
346 366 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${tenderID}
347 367 ${token}= Get Variable Value ${USERS.users['${ARGUMENTS[0]}'].bidresponses['resp'].access.token}
348 368 ${contents} ${filename}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_file ${tender} ${ARGUMENTS[2]} ${token}
349   - log ${filename}
  369 + Log ${filename}
350 370 [return] ${contents} ${filename}
351 371
352 372
... ... @@ -356,24 +376,26 @@ Library openprocurement_client_helper.py
356 376 ... ${ARGUMENTS[1]} == tender
357 377 ... ${ARGUMENTS[2]} == lot
358 378 [Arguments] @{ARGUMENTS}
359   - log many @{ARGUMENTS}
  379 + Log many @{ARGUMENTS}
360 380 ${tender}= set_access_key ${ARGUMENTS[1]} ${USERS.users['${ARGUMENTS[0]}'].access_token}
361 381 ${tender_lot}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} create_lot ${tender} ${ARGUMENTS[2]}
362 382 Log ${tender_lot}
363 383 [return] ${tender_lot}
364 384
  385 +
365 386 Змінити лот
366 387 [Documentation]
367 388 ... ${ARGUMENTS[0]} == username
368 389 ... ${ARGUMENTS[1]} == tender
369 390 ... ${ARGUMENTS[2]} == lot
370 391 [Arguments] @{ARGUMENTS}
371   - log many @{ARGUMENTS}
  392 + Log many @{ARGUMENTS}
372 393 ${tender}= set_access_key ${ARGUMENTS[1]} ${USERS.users['${ARGUMENTS[0]}'].access_token}
373 394 ${tender_lot}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} patch_lot ${tender} ${ARGUMENTS[2]}
374 395 Log ${tender_lot}
375 396 [return] ${tender_lot}
376 397
  398 +
377 399 Завантажити документ в лот
378 400 [Documentation]
379 401 ... ${ARGUMENTS[0]} == username
... ... @@ -381,7 +403,7 @@ Library openprocurement_client_helper.py
381 403 ... ${ARGUMENTS[2]} == tenderUAID
382 404 ... ${ARGUMENTS[3]} == lot_id
383 405 [Arguments] @{ARGUMENTS}
384   - log many @{ARGUMENTS}
  406 + Log many @{ARGUMENTS}
385 407 ${tenderID}= openprocurement_client.Отримати internal id по UAid ${ARGUMENTS[0]} ${ARGUMENTS[2]}
386 408 ${tender}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} get_tender ${tenderID}
387 409 ${tender}= set_access_key ${tender} ${USERS.users['${ARGUMENTS[0]}'].access_token}
... ... @@ -391,14 +413,125 @@ Library openprocurement_client_helper.py
391 413 Log object data ${reply} reply
392 414 [return] ${reply}
393 415
  416 +
394 417 Видалити лот
395 418 [Documentation]
396 419 ... ${ARGUMENTS[0]} == username
397 420 ... ${ARGUMENTS[1]} == tender
398 421 ... ${ARGUMENTS[2]} == lot
399 422 [Arguments] @{ARGUMENTS}
400   - log many @{ARGUMENTS}
  423 + Log many @{ARGUMENTS}
401 424 ${tender}= set_access_key ${ARGUMENTS[1]} ${USERS.users['${ARGUMENTS[0]}'].access_token}
402 425 ${tender_lot}= Call Method ${USERS.users['${ARGUMENTS[0]}'].client} delete_lot ${tender} ${ARGUMENTS[2]}
403 426 Log ${tender_lot}
404 427 [return] ${tender_lot}
  428 +
  429 +##############################################################################
  430 +# Limited procurement
  431 +##############################################################################
  432 +
  433 +Отримати тендер [modified]
  434 + [Arguments] ${username}
  435 + Log ${username}
  436 + Log ${TENDER['TENDER_UAID']}
  437 + ${tenderID}= openprocurement_client.Отримати internal id по UAid ${username} ${TENDER['TENDER_UAID']}
  438 + ${tender}= Call Method ${USERS.users['${username}'].client} get_tender ${tenderID}
  439 + ${tender}= set_access_key ${tender} ${USERS.users['${username}'].access_token}
  440 + Log ${tender}
  441 + [Return] ${tender}
  442 +
  443 +
  444 +Модифікувати закупівлю
  445 + [Arguments] ${username}
  446 + ${tender}= Викликати для учасника ${username} Отримати тендер [modified]
  447 + ${data}= modify_tender ${tender['data']['id']} ${tender['access']['token']}
  448 + Log ${data}
  449 + ${reply}= Call Method ${USERS.users['${username}'].client} patch_tender ${data}
  450 + Log ${reply}
  451 +
  452 +
  453 +Додати постачальника
  454 + [Arguments] ${username}
  455 + ${tender}= Викликати для учасника ${username} Отримати тендер [modified]
  456 + ${supplier_data}= test supplier data
  457 + Log ${supplier_data}
  458 + ${reply}= Call Method ${USERS.users['${username}'].client} create_award ${tender} ${supplier_data}
  459 + Log ${reply}
  460 +
  461 +
  462 +Підтвердити постачальника
  463 + [Arguments] ${username}
  464 + ${tender}= Викликати для учасника ${username} Отримати тендер [modified]
  465 + ${data}= Confirm supplier ${tender['data']['awards'][0]['id']}
  466 + Log ${data}
  467 + ${reply}= Call Method ${USERS.users['${username}'].client} patch_award ${tender} ${data}
  468 + Log ${reply}
  469 +
  470 +
  471 +Додати запит на скасування
  472 + [Arguments] ${username}
  473 + ${tender}= Викликати для учасника ${username} Отримати тендер [modified]
  474 + ${CANCELLATION_REASON} Set variable prost :))
  475 + Set suite variable ${CANCELLATION_REASON}
  476 + ${data}= Cancel tender ${CANCELLATION_REASON}
  477 + Log ${data}
  478 + ${reply}= Call Method ${USERS.users['${username}'].client} create_cancellation ${tender} ${data}
  479 + Log ${reply}
  480 +
  481 +
  482 +Завантажити документацію до запиту на скасування
  483 + [Arguments] ${username}
  484 + ${tender}= Викликати для учасника ${username} Отримати тендер [modified]
  485 + ${FIRST_CANCELLATION_DOCUMENT}= create_fake_doc
  486 + Set suite variable ${FIRST_CANCELLATION_DOCUMENT}
  487 + ${cancel_num} Set variable 0
  488 + Log ${cancel_num}
  489 + ${reply}= Call Method ${USERS.users['${username}'].client} upload_cancellation_document ${FIRST_CANCELLATION_DOCUMENT} ${tender} ${tender['data']['cancellations'][${cancel_num}]['id']}
  490 + Log ${reply}
  491 +
  492 +
  493 +Змінити опис документа в скасуванні
  494 + [Arguments] ${username}
  495 + ${tender}= Викликати для учасника ${username} Отримати тендер [modified]
  496 + ${CANCELLATION_DOCUMENT_DESCRIPTION} Set variable test description
  497 + Set suite variable ${CANCELLATION_DOCUMENT_DESCRIPTION}
  498 + ${cancellation_document_field} Set variable description
  499 + ${data}= change_cancellation_document_field ${cancellation_document_field} ${CANCELLATION_DOCUMENT_DESCRIPTION}
  500 + Log ${data}
  501 + ${cancel_num} Set variable 0
  502 + ${doc_num} Set variable 0
  503 + ${reply}= Call Method ${USERS.users['${username}'].client} patch_cancellation_document ${tender} ${data} ${cancel_num} ${doc_num}
  504 + Log ${reply}
  505 +
  506 +
  507 +Завантажити нову версію документа до запиту на скасування
  508 + [Arguments] ${username}
  509 + ${tender}= Викликати для учасника ${username} Отримати тендер [modified]
  510 + ${SECOND_CANCELLATION_DOCUMENT}= create_fake_doc
  511 + Set suite variable ${SECOND_CANCELLATION_DOCUMENT}
  512 + Log ${SECOND_CANCELLATION_DOCUMENT}
  513 + ${cancel_num} Set variable 0
  514 + ${doc_num} Set variable 0
  515 + ${reply}= Call Method ${USERS.users['${username}'].client} update_cancellation_document ${SECOND_CANCELLATION_DOCUMENT} ${tender} ${tender['data']['cancellations'][${cancel_num}]['id']} ${tender['data']['cancellations'][${cancel_num}]['documents'][${doc_num}]['id']}
  516 + Log ${reply}
  517 +
  518 +
  519 +Підтвердити скасування закупівлі
  520 + [Arguments] ${username}
  521 + ${tender}= Викликати для учасника ${username} Отримати тендер [modified]
  522 + ${cancel_num} Set variable 0
  523 + Log ${cancel_num}
  524 + ${data}= Confirm cancellation ${tender['data']['cancellations'][${cancel_num}]['id']}
  525 + Log ${data}
  526 + ${reply}= Call Method ${USERS.users['${username}'].client} patch_cancellation ${tender} ${data}
  527 + Log ${reply}
  528 +
  529 +
  530 +Підтвердити підписання контракту
  531 + [Arguments] ${username}
  532 + ${tender}= Викликати для учасника ${username} Отримати тендер [modified]
  533 + ${contract_num} Set variable 0
  534 + ${data}= confirm contract ${tender['data']['contracts'][${contract_num}]['id']}
  535 + Log ${data}
  536 + ${reply}= Call Method ${USERS.users['${username}'].client} patch_contract ${tender} ${data}
  537 + Log ${reply}
... ...
... ... @@ -112,6 +112,58 @@ def test_tender_data(intervals):
112 112 return t_data
113 113
114 114
  115 +def test_tender_data_limited(intervals):
  116 + return {
  117 + "items": [
  118 + {
  119 + "additionalClassifications": [
  120 + {
  121 + "description": u"Послуги шкільних їдалень",
  122 + "id": "55.51.10.300",
  123 + "scheme": u"ДКПП"
  124 + }
  125 + ],
  126 + "classification": {
  127 + "description": u"Послуги з харчування у школах",
  128 + "id": "55523100-3",
  129 + "scheme": "CPV"
  130 + },
  131 + "description": u"Послуги шкільних їдалень",
  132 + "id": "2dc54675d6364e2baffbc0f8e74432ac"
  133 + }
  134 + ],
  135 + "owner": "test.quintagroup.com",
  136 + "procurementMethod": "limited",
  137 + "procurementMethodType": "reporting",
  138 + "procuringEntity": {
  139 + "address": {
  140 + "countryName": u"Україна",
  141 + "locality": u"м. Вінниця",
  142 + "postalCode": "21027",
  143 + "region": u"м. Вінниця",
  144 + "streetAddress": u"вул. Стахурського. 22"
  145 + },
  146 + "contactPoint": {
  147 + "name": u"Куца Світлана Валентинівна",
  148 + "telephone": "+380 (432) 46-53-02",
  149 + "url": "http://sch10.edu.vn.ua/"
  150 + },
  151 + "identifier": {
  152 + "id": "21725150",
  153 + "legalName": u"Заклад \"Загальноосвітня школа І-ІІІ ступенів № 10 Вінницької міської ради\"",
  154 + "scheme": u"UA-EDR"
  155 + },
  156 + "name": u"ЗОСШ #10 м.Вінниці"
  157 + },
  158 + "value": {
  159 + "amount": 500000,
  160 + "currency": "UAH",
  161 + "valueAddedTaxIncluded": True
  162 + },
  163 + "title": u"Послуги шкільних їдалень",
  164 + }
  165 +
  166 +
115 167 def test_tender_data_multiple_items(intervals):
116 168 now = get_now()
117 169 t_data = test_tender_data(intervals)
... ... @@ -566,6 +618,41 @@ def auction_bid():
566 618 })
567 619
568 620
  621 +def test_supplier_data():
  622 + return {
  623 + "data": {
  624 + "suppliers": [
  625 + {
  626 + "address": {
  627 + "countryName": u"Україна",
  628 + "locality": u"м. Вінниця",
  629 + "postalCode": "21100",
  630 + "region": u"м. Вінниця",
  631 + "streetAddress": u"вул. Островського, 33"
  632 + },
  633 + "contactPoint": {
  634 + "email": "soleksuk@gmail.com",
  635 + "name": u"Сергій Олексюк",
  636 + "telephone": "+380 (432) 21-69-30"
  637 + },
  638 + "identifier": {
  639 + "id": "13313462",
  640 + "legalName": u"Державне комунальне підприємство громадського харчування «Школяр»",
  641 + "scheme": "UA-EDR",
  642 + "uri": "http://sch10.edu.vn.ua/"
  643 + },
  644 + "name": u"ДКП «Школяр»"
  645 + }
  646 + ],
  647 + "value": {
  648 + "amount": 475000,
  649 + "currency": "UAH",
  650 + "valueAddedTaxIncluded": True
  651 + }
  652 + }
  653 + }
  654 +
  655 +
569 656 def test_award_data():
570 657 return munchify({'data': {}})
571 658
... ...
... ... @@ -7,17 +7,20 @@ Library Selenium2Library
7 7 Library DateTime
8 8 Library DebugLibrary
9 9
  10 +
10 11 *** Keywords ***
11 12 TestSuiteSetup
12 13 Set Selenium Implicit Wait 5 s
13 14 Set Selenium Timeout 10 s
14 15 Завантажуємо дані про користувачів і майданчики
15 16
  17 +
16 18 Set Suite Variable With Default Value
17 19 [Arguments] ${suite_var} ${def_value}
18 20 ${tmp}= Get Variable Value ${${suite_var}} ${def_value}
19 21 Set Suite Variable ${${suite_var}} ${tmp}
20 22
  23 +
21 24 Завантажуємо дані про користувачів і майданчики
22 25 Log ${broker}
23 26 Log ${role}
... ... @@ -47,6 +50,7 @@ Set Suite Variable With Default Value
47 50 \ Run Keyword If '${status}' == 'True' Завантажуємо бібліотеку з реалізацією для майданчика ${keywords_file}
48 51 \ Run Keyword If '${status}' == 'True' Викликати для учасника ${username} Підготувати клієнт для користувача
49 52
  53 +
50 54 Get Broker Property
51 55 [Arguments] ${broker_name} ${property}
52 56 [Documentation]
... ... @@ -59,6 +63,7 @@ Get Broker Property
59 63 Should Contain ${BROKERS['Default']} ${property}
60 64 [return] ${BROKERS['Default'].${property}}
61 65
  66 +
62 67 Get Broker Property By Username
63 68 [Documentation]
64 69 ... This keyword gets the corresponding broker name
... ... @@ -68,6 +73,7 @@ Get Broker Property By Username
68 73 ${broker_name}= Get Variable Value ${USERS.users['${username}'].broker}
69 74 Run Keyword And Return Get Broker Property ${broker_name} ${property}
70 75
  76 +
71 77 Підготовка початкових даних
72 78 @{QUESTIONS}= Create list
73 79 ${question}= test question data
... ... @@ -97,13 +103,14 @@ Get Broker Property By Username
97 103 Log ${tender_data}
98 104 [return] ${tender_data}
99 105
  106 +
100 107 Завантажуємо бібліотеку з реалізацією для майданчика ${keywords_file}
101 108 ${bundled_st}= Run Keyword And Return Status Import Resource ${CURDIR}/brokers/${keywords_file}.robot
102 109 ${external_st}= Run Keyword And Return Status Import Resource ${CURDIR}/../../src/robot_tests.broker.${keywords_file}/${keywords_file}.robot
103 110 Run Keyword If ${bundled_st} == ${external_st} == ${False} Fail Resource file ${keywords_file}.robot not found
104 111 Run Keyword If ${bundled_st} == ${external_st} == ${True} Fail Resource file ${keywords_file}.robot found in both brokers/ and src/
105 112
106   -##################################################################################
  113 +
107 114 Дочекатись синхронізації з майданчиком
108 115 [Arguments] ${username}
109 116 [Documentation]
... ... @@ -115,34 +122,40 @@ Get Broker Property By Username
115 122 ${wait_timeout}= Subtract Time From Time ${timeout_on_wait} ${delta}
116 123 Run Keyword If ${wait_timeout}>0 Sleep ${wait_timeout}
117 124
  125 +
118 126 Звірити поле тендера
119 127 [Arguments] ${username} ${tender_data} ${field}
120 128 ${left}= Get_From_Object ${tender_data.data} ${field}
121 129 ${right}= Викликати для учасника ${username} Отримати інформацію із тендера ${field}
122 130 Порівняти об'єкти ${left} ${right}
123 131
  132 +
124 133 Звірити поле тендера із значенням
125 134 [Arguments] ${username} ${left} ${field}
126 135 ${right}= Викликати для учасника ${username} Отримати інформацію із тендера ${field}
127 136 Порівняти об'єкти ${left} ${right}
128 137
  138 +
129 139 Порівняти об'єкти
130 140 [Arguments] ${left} ${right}
131 141 Should Not Be Equal ${left} ${None}
132 142 Should Not Be Equal ${right} ${None}
133 143 Should Be Equal ${left} ${right}
134 144
  145 +
135 146 Звірити дату тендера
136 147 [Arguments] ${username} ${tender_data} ${field}
137 148 ${left}= Get_From_Object ${tender_data.data} ${field}
138 149 ${right}= Викликати для учасника ${username} Отримати інформацію із тендера ${field}
139 150 Звірити дату ${left} ${right}
140 151
  152 +
141 153 Звірити дату тендера із значенням
142 154 [Arguments] ${username} ${left} ${field}
143 155 ${right}= Викликати для учасника ${username} Отримати інформацію із тендера ${field}
144 156 Звірити дату ${left} ${right}
145 157
  158 +
146 159 Звірити дату
147 160 [Arguments] ${left} ${right}
148 161 Should Not Be Equal ${left} ${None}
... ... @@ -150,6 +163,7 @@ Get Broker Property By Username
150 163 ${status}= compare_date ${left} ${right}
151 164 Should Be True ${status}
152 165
  166 +
153 167 Звірити поля предметів закупівлі багатопредметного тендера
154 168 [Arguments] ${username} ${tender_data} ${field}
155 169 Дочекатись синхронізації з майданчиком ${username}
... ... @@ -159,6 +173,7 @@ Get Broker Property By Username
159 173 \ Log ${index}
160 174 \ Звірити поле тендера ${viewer} ${tender_data} items[${index}].${field}
161 175
  176 +
162 177 Звірити дату предметів закупівлі багатопредметного тендера
163 178 [Arguments] ${username} ${tender_data} ${field}
164 179 Дочекатись синхронізації з майданчиком ${username}
... ... @@ -168,6 +183,7 @@ Get Broker Property By Username
168 183 \ Log ${index}
169 184 \ Звірити дату тендера ${viewer} ${tender_data} items[${index}].${field}
170 185
  186 +
171 187 Викликати для учасника
172 188 [Documentation]
173 189 ... Cause sometimes keyword SHOULD fail to pass the testcase,
... ... @@ -181,6 +197,7 @@ Get Broker Property By Username
181 197 Run Keyword And Return If '${state}' == 'shouldfail' SwitchState ${username} ${command} @{arguments}
182 198 Run Keyword And Return If '${state}' == 'pass' Normal ${username} ${command} @{arguments}
183 199
  200 +
184 201 Normal
185 202 [Arguments] ${username} ${command} @{arguments}
186 203 Log ${username}
... ... @@ -189,6 +206,7 @@ Normal
189 206 ${keywords_file}= Get Broker Property By Username ${username} keywords_file
190 207 Run Keyword And Return ${keywords_file}.${command} ${username} @{arguments}
191 208
  209 +
192 210 SwitchState
193 211 [Arguments] ${username} ${command} @{arguments}
194 212 Log ${username}
... ... @@ -201,19 +219,24 @@ SwitchState
201 219 Run keyword if '${status}' == 'PASS' Log Учасник ${username} зміг виконати "${command}" WARN
202 220 [return] ${value}
203 221
  222 +
204 223 Дочекатись дати
205 224 [Arguments] ${date}
206 225 ${wait_timeout}= wait_to_date ${date}
207 226 Run Keyword If ${wait_timeout}>0 Sleep ${wait_timeout}
208 227
  228 +
209 229 Дочекатись дати початку прийому пропозицій
210 230 Дочекатись дати ${tender_data.data.tenderPeriod.startDate}
211 231
  232 +
212 233 Дочекатись дати закінчення прийому пропозицій
213 234 Дочекатись дати ${tender_data.data.tenderPeriod.endDate}
214 235
  236 +
215 237 Дочекатись дати початку аукціону
216 238 Дочекатись дати ${tender_data.data.auctionPeriod.startDate}
217 239
  240 +
218 241 Дочекатись дати закінчення аукціону
219 242 Дочекатись дати ${tender_data.data.auctionPeriod.endDate}
... ...
  1 +*** Settings ***
  2 +Library op_robot_tests.tests_files.service_keywords
  3 +Library Collections
  4 +Resource keywords.robot
  5 +Resource resource.robot
  6 +Suite Setup TestSuiteSetup
  7 +Suite Teardown Close all browsers
  8 +
  9 +
  10 +*** Variables ***
  11 +${mode} limited
  12 +${role} viewer
  13 +${broker} Quinta
  14 +
  15 +
  16 +*** Test Cases ***
  17 +Можливість створити пряму закупівлю
  18 + ${tender_data}= Підготовка початкових даних
  19 + ${TENDER_UAID}= Викликати для учасника ${tender_owner} Створити тендер ${tender_data}
  20 + Log ${tender_data}
  21 + ${LAST_MODIFICATION_DATE}= Get Current TZdate
  22 + Set To Dictionary ${TENDER} LAST_MODIFICATION_DATE ${LAST_MODIFICATION_DATE}
  23 + Set To Dictionary ${TENDER} TENDER_UAID ${TENDER_UAID}
  24 + Set To Dictionary ${USERS.users['${tender_owner}']} initial_data ${tender_data}
  25 + Log ${TENDER}
  26 +
  27 +
  28 +Можливість модифікації закупівлі
  29 + Викликати для учасника ${tender_owner} Модифікувати закупівлю
  30 +
  31 +
  32 +Можливість додати документацію до прямої закупівлі
  33 + ${TENDER_DOCUMENT_FILEPATH}= create_fake_doc
  34 + Set suite variable ${TENDER_DOCUMENT_FILEPATH}
  35 + Викликати для учасника ${tender_owner} Завантажити документ ${TENDER_DOCUMENT_FILEPATH} ${TENDER['TENDER_UAID']}
  36 +
  37 +
  38 +Можливість зареєструвати і підтвердити постачальника
  39 + Викликати для учасника ${tender_owner} Додати постачальника
  40 + Викликати для учасника ${tender_owner} Підтвердити постачальника
  41 +
  42 +
  43 +Пошук прямої закупівлі по ідентифікатору
  44 + Дочекатись синхронізації з майданчиком ${viewer}
  45 + Викликати для учасника ${viewer} Пошук тендера по ідентифікатору ${TENDER['TENDER_UAID']}
  46 +
  47 +##############################################################################################
  48 +# MAIN DATA
  49 +##############################################################################################
  50 +
  51 +Відображення title
  52 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} title
  53 +
  54 +
  55 +Відображення owner
  56 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} owner
  57 +
  58 +
  59 +Відображення procurement method
  60 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procurementMethod
  61 +
  62 +
  63 +Відображення procurement method type
  64 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procurementMethodType
  65 +
  66 +
  67 +Відображення tenderID
  68 + Звірити поле тендера із значенням ${viewer} ${TENDER['TENDER_UAID']} tenderID
  69 +
  70 +##############################################################################################
  71 +# MAIN DATA.VALUE
  72 +##############################################################################################
  73 +
  74 +Відображення value.amount
  75 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} value.amount
  76 +
  77 +
  78 +Відображення value.currency
  79 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} value.currency
  80 +
  81 +
  82 +Відображення value.valueAddedTaxIncluded
  83 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} value.valueAddedTaxIncluded
  84 +
  85 +##############################################################################################
  86 +# MAIN DATA.PROCURING ENTITY
  87 +##############################################################################################
  88 +
  89 +Відображення procuringEntity.address.countryName
  90 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.address.countryName
  91 +
  92 +
  93 +Відображення procuringEntity.address.locality
  94 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.address.locality
  95 +
  96 +
  97 +Відображення procuringEntity.address.postalCode
  98 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.address.postalCode
  99 +
  100 +
  101 +Відображення procuringEntity.address.region
  102 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.address.region
  103 +
  104 +
  105 +Відображення procuringEntity.address.streetAddress
  106 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.address.streetAddress
  107 +
  108 +
  109 +Відображення procuringEntity.contactPoint.name
  110 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.contactPoint.name
  111 +
  112 +
  113 +Відображення procuringEntity.contactPoint.telephone
  114 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.contactPoint.telephone
  115 +
  116 +
  117 +Відображення procuringEntity.contactPoint.url
  118 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.contactPoint.url
  119 +
  120 +
  121 +Відображення procuringEntity.identifier.id
  122 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.identifier.id
  123 +
  124 +
  125 +Відображення procuringEntity.identifier.legalName
  126 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.identifier.legalName
  127 +
  128 +
  129 +Відображення procuringEntity.identifier.scheme
  130 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.identifier.scheme
  131 +
  132 +
  133 +Відображення procuringEntity.name
  134 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} procuringEntity.name
  135 +
  136 +##############################################################################################
  137 +# MAIN DATA.ITEMS
  138 +##############################################################################################
  139 +
  140 +Відображення items[0].additionalClassifications.[0].description
  141 + ${ITEMS_NUM} Set variable 0
  142 + Set Suite Variable ${ITEMS_NUM}
  143 + ${ADDITIONAL_CLASS_NUM} Set variable 0
  144 + Set Suite Variable ${ADDITIONAL_CLASS_NUM}
  145 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} items[${ITEMS_NUM}].additionalClassifications.[${ADDITIONAL_CLASS_NUM}].description
  146 +
  147 +
  148 +Відображення items[0].additionalClassifications.[0].id
  149 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} items[${ITEMS_NUM}].additionalClassifications.[${ADDITIONAL_CLASS_NUM}].id
  150 +
  151 +
  152 +Відображення items[0].additionalClassifications.[0].scheme
  153 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} items[${ITEMS_NUM}].additionalClassifications.[${ADDITIONAL_CLASS_NUM}].scheme
  154 +
  155 +
  156 +Відображення items[0].classification.scheme
  157 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} items[${ITEMS_NUM}].classification.scheme
  158 +
  159 +
  160 +Відображення items[0].classification.id
  161 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} items[${ITEMS_NUM}].classification.id
  162 +
  163 +
  164 +Відображення items[0].classification.description
  165 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} items[${ITEMS_NUM}].classification.description
  166 +
  167 +
  168 +Відображення items[0].description
  169 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} items[${ITEMS_NUM}].description
  170 +
  171 +
  172 +Відображення items[0].id
  173 + Звірити поле тендера ${viewer} ${USERS.users['${tender_owner}'].initial_data} items[${ITEMS_NUM}].id
  174 +
  175 +
  176 +Відображення items[0].quantity
  177 + ${foo_id} Set variable 0
  178 + ${foo_token} Set variable 0
  179 + ${data}= modify_tender ${foo_id} ${foo_token}
  180 + Звірити поле тендера із значенням ${viewer} ${data['data']['items'][${ITEMS_NUM}]['quantity']} items[${ITEMS_NUM}].quantity
  181 +
  182 +
  183 +Відображення items[0].unit.name
  184 + ${foo_id} Set variable 0
  185 + ${foo_token} Set variable 0
  186 + ${data}= modify_tender ${foo_id} ${foo_token}
  187 + Звірити поле тендера із значенням ${viewer} ${data['data']['items'][${ITEMS_NUM}]['unit']['name']} items[${ITEMS_NUM}].unit.name
  188 +
  189 +
  190 +Відображення items[0].unit.code
  191 + ${foo_id} Set variable 0
  192 + ${foo_token} Set variable 0
  193 + ${data}= modify_tender ${foo_id} ${foo_token}
  194 + Звірити поле тендера із значенням ${viewer} ${data['data']['items'][${ITEMS_NUM}]['unit']['code']} items[${ITEMS_NUM}].unit.code
  195 +
  196 +##############################################################################################
  197 +# DOCUMENTS
  198 +##############################################################################################
  199 +
  200 +Відображення documents[0].title
  201 + ${doc_num} Set variable 0
  202 + Звірити поле тендера із значенням ${viewer} ${tender_document_filepath} documents[${doc_num}].title
  203 +
  204 +##############################################################################################
  205 +# AWARDS
  206 +##############################################################################################
  207 +
  208 +Відображення awards[0].status (active)
  209 + ${AWARD_NUM} Set variable 0
  210 + Set Suite Variable ${AWARD_NUM}
  211 + ${SUPP_NUM} Set variable 0
  212 + Set Suite Variable ${SUPP_NUM}
  213 + ${supp_data}= test_supplier_data
  214 + Set Suite Variable ${supp_data}
  215 + ${award_status} Set variable active
  216 + Звірити поле тендера із значенням ${viewer} ${award_status} awards[${AWARD_NUM}].status
  217 +
  218 +
  219 +Відображення awards[0].suppliers[0].address.countryName
  220 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['address']['countryName']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].address.countryName
  221 +
  222 +
  223 +Відображення awards[0].suppliers[0].address.locality
  224 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['address']['locality']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].address.locality
  225 +
  226 +
  227 +Відображення awards[0].suppliers[0].address.postalCode
  228 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['address']['postalCode']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].address.postalCode
  229 +
  230 +
  231 +Відображення awards[0].suppliers[0].address.region
  232 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['address']['region']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].address.region
  233 +
  234 +
  235 +Відображення awards[0].suppliers[0].address.streetAddress
  236 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['address']['streetAddress']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].address.streetAddress
  237 +
  238 +
  239 +Відображення awards[0].suppliers[0].contactPoint.telephone
  240 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['contactPoint']['telephone']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].contactPoint.telephone
  241 +
  242 +
  243 +Відображення awards[0].suppliers[0].contactPoint.name
  244 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['contactPoint']['name']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].contactPoint.name
  245 +
  246 +
  247 +Відображення awards[0].suppliers[0].contactPoint.email
  248 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['contactPoint']['email']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].contactPoint.email
  249 +
  250 +
  251 +Відображення awards[0].suppliers[0].identifier.scheme
  252 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['identifier']['scheme']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].identifier.scheme
  253 +
  254 +
  255 +Відображення awards[0].suppliers[0].identifier.legalName
  256 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['identifier']['legalName']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].identifier.legalName
  257 +
  258 +
  259 +Відображення awards[0].suppliers[0].identifier.id
  260 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['identifier']['id']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].identifier.id
  261 +
  262 +
  263 +Відображення awards[0].suppliers[0].name
  264 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['suppliers'][${SUPP_NUM}]['name']} awards[${AWARD_NUM}].suppliers[${SUPP_NUM}].name
  265 +
  266 +
  267 +Відображення awards[0].value.valueAddedTaxIncluded
  268 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['value']['valueAddedTaxIncluded']} awards[${AWARD_NUM}].value.valueAddedTaxIncluded
  269 +
  270 +
  271 +Відображення awards[0].value.currency
  272 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['value']['currency']} awards[${AWARD_NUM}].value.currency
  273 +
  274 +
  275 +Відображення awards[0].value.amount
  276 + Звірити поле тендера із значенням ${viewer} ${supp_data['data']['value']['amount']} awards[${AWARD_NUM}].value.amount
  277 +
  278 +##############################################################################################
  279 +# CONTRACTS
  280 +##############################################################################################
  281 +
  282 +Неможливість укласти угоду доки не пройде stand-still period
  283 + Викликати для учасника ${tender_owner} Підтвердити підписання контракту shouldfail
  284 +
  285 +
  286 +Відображення contracts.status (pending)
  287 + ${contr_num} Set Variable 0
  288 + ${contract_status} Set variable pending
  289 + Звірити поле тендера із значенням ${viewer} ${contract_status} contracts[${contr_num}].status
  290 +
  291 +##############################################################################################
  292 +# CANCELLATIONS
  293 +##############################################################################################
  294 +
  295 +Можливість сформувати запит на скасування
  296 + Викликати для учасника ${tender_owner} Додати запит на скасування
  297 + Викликати для учасника ${tender_owner} Завантажити документацію до запиту на скасування
  298 +
  299 +
  300 +Можливість змінити опис документа в скасуванні
  301 + Викликати для учасника ${tender_owner} Змінити опис документа в скасуванні
  302 +
  303 +
  304 +Можливість завантажити нову версію документа до запиту на скасування
  305 + Викликати для учасника ${tender_owner} Завантажити нову версію документа до запиту на скасування
  306 + Дочекатись синхронізації з майданчиком ${viewer}
  307 + Викликати для учасника ${viewer} Оновити сторінку з тендером ${TENDER['TENDER_UAID']}
  308 +
  309 +
  310 +Можливість активувати скасування закупівлі
  311 + Викликати для учасника ${tender_owner} Підтвердити скасування закупівлі
  312 + Дочекатись синхронізації з майданчиком ${viewer}
  313 + Викликати для учасника ${viewer} Оновити сторінку з тендером ${TENDER['TENDER_UAID']}
  314 +
  315 +
  316 +Відображення cancellations[0].status (active)
  317 + ${CANCEL_NUM}= Set variable 0
  318 + Set suite variable ${CANCEL_NUM}
  319 + ${cancellation_status} Set variable active
  320 + Звірити поле тендера із значенням ${viewer} ${cancellation_status} cancellations[${CANCEL_NUM}].status
  321 +
  322 +
  323 +Відображення cancellations[0].cancellationOf
  324 + ${CANCEL_NUM} Set Variable 0
  325 + ${FIRST_DOC} Set Variable 0
  326 + ${SECOND_DOC} Set Variable 1
  327 + Set Suite Variable ${CANCEL_NUM}
  328 + Set Suite Variable ${FIRST_DOC}
  329 + Set Suite Variable ${SECOND_DOC}
  330 + Звірити поле тендера із значенням ${viewer} ${CANCELLATION_REASON} cancellations[${CANCEL_NUM}].reason
  331 +
  332 +
  333 +Відображення cancellations[0].documents[0].description
  334 + Звірити поле тендера із значенням ${viewer} ${CANCELLATION_DOCUMENT_DESCRIPTION} cancellations[${CANCEL_NUM}].documents[${FIRST_DOC}].description
  335 +
  336 +
  337 +Відображення cancellations[0].documents[0].title
  338 + Звірити поле тендера із значенням ${viewer} ${FIRST_CANCELLATION_DOCUMENT} cancellations[${CANCEL_NUM}].documents[${FIRST_DOC}].title
  339 +
  340 +
  341 +Відображення cancellations[0].documents[1].title
  342 + Звірити поле тендера із значенням ${viewer} ${SECOND_CANCELLATION_DOCUMENT} cancellations[${CANCEL_NUM}].documents[${SECOND_DOC}].title
... ...
... ... @@ -19,7 +19,8 @@ from .initial_data import (
19 19 test_invalid_features_data, test_item_data, test_lot_complaint_data,
20 20 test_lot_data, test_lot_document_data, test_lot_question_data,
21 21 test_lots_bid_data, test_meat_tender_data, test_question_answer_data,
22   - test_question_data, test_tender_data, test_tender_data_multiple_items,
  22 + test_question_data, test_supplier_data, test_tender_data,
  23 + test_tender_data_limited, test_tender_data_multiple_items,
23 24 test_tender_data_multiple_lots
24 25 )
25 26 from .local_time import get_now, TZ
... ... @@ -106,6 +107,8 @@ def prepare_test_tender_data(period_intervals, mode):
106 107 return munchify({'data': test_tender_data(period_intervals)})
107 108 elif mode == 'multi':
108 109 return munchify({'data': test_tender_data_multiple_items(period_intervals)})
  110 + elif mode == 'limited':
  111 + return munchify({'data': test_tender_data_limited(period_intervals)})
109 112 raise ValueError('Invalid mode for test_tender_data')
110 113
111 114
... ... @@ -179,6 +182,57 @@ def merge_dicts(left, right):
179 182 return new
180 183
181 184
  185 +def cancel_tender(cancellation_reason):
  186 + return {
  187 + 'data': {
  188 + 'reason': cancellation_reason
  189 + }
  190 + }
  191 +
  192 +
  193 +def confirm_supplier(supplier_id):
  194 + return {
  195 + "data": {
  196 + "status": "active",
  197 + "id": supplier_id
  198 + }
  199 + }
  200 +
  201 +
  202 +def change_cancellation_document_field(key, value):
  203 + data = {
  204 + "data": {
  205 + key: value
  206 + }
  207 + }
  208 + return data
  209 +
  210 +
  211 +def confirm_cancellation(cancellation_id):
  212 + data = {
  213 + "data": {
  214 + "status": "active",
  215 + "id": cancellation_id
  216 + }
  217 + }
  218 + return data
  219 +
  220 +
  221 +def confirm_contract(contract_id):
  222 + data = {
  223 + "data": {
  224 + "id": contract_id,
  225 + "status": "active"
  226 + }
  227 + }
  228 + return data
  229 +
  230 +
  231 +def modify_tender(tender_id, access_token):
  232 + data = {"access": {"token": access_token}, "data": {"id": tender_id, "items": [{"unit": {"code": "MON", "name": "month"}, "quantity": 9}]}}
  233 + return data
  234 +
  235 +
182 236 # GUI Frontends common
183 237 def add_data_for_gui_frontends(tender_data):
184 238 now = get_now()
... ...
Please register or login to post a comment