Commit aaa52d8b502655a1a488074c4f07028f45147bad

Authored by mykhaly
2 parents 4d5c1741 d3a66486

Merge branch 'devel' into master

... ... @@ -50,17 +50,19 @@ Resource base_keywords.robot
50 50
51 51
52 52 Можливість завантажити ${doc_type} документ до пропозиції учасником ${username}
53   - ${filepath}= create_fake_doc
54   - ${bid_doc_upload}= Run As ${username} Завантажити документ в ставку ${filepath} ${TENDER['TENDER_UAID']} ${doc_type}
  53 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  54 + ${bid_doc_upload}= Run As ${username} Завантажити документ в ставку ${file_path} ${TENDER['TENDER_UAID']} ${doc_type}
55 55 Set To Dictionary ${USERS.users['${username}'].bidresponses} bid_doc_upload=${bid_doc_upload}
  56 + Remove File ${file_path}
56 57
57 58 ##############################################################################################
58 59 # OPENEU Pre-Qualification
59 60 ##############################################################################################
60 61
61 62 Можливість завантажити документ у кваліфікацію ${bid_index} пропозиції
62   - ${filepath}= create_fake_doc
63   - Run As ${tender_owner} Завантажити документ у кваліфікацію ${filepath} ${TENDER['TENDER_UAID']} ${bid_index}
  63 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  64 + Run As ${tender_owner} Завантажити документ у кваліфікацію ${file_path} ${TENDER['TENDER_UAID']} ${bid_index}
  65 + Remove File ${file_path}
64 66
65 67
66 68 Можливість відхилити ${bid_index} пропозиції кваліфікації
... ...
... ... @@ -40,10 +40,12 @@ Resource resource.robot
40 40
41 41
42 42 Можливість додати документацію до тендера
43   - ${filepath}= create_fake_doc
44   - Run As ${tender_owner} Завантажити документ ${filepath} ${TENDER['TENDER_UAID']}
45   - ${documents}= Create Dictionary filepath=${filepath}
46   - Set To Dictionary ${USERS.users['${tender_owner}']} documents=${documents}
  43 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  44 + Run As ${tender_owner} Завантажити документ ${file_path} ${TENDER['TENDER_UAID']}
  45 + ${doc_id}= get_id_from_doc_name ${file_name}
  46 + ${tender_document}= Create Dictionary doc_name=${file_name} doc_id=${doc_id} doc_content=${file_content}
  47 + Set To Dictionary ${USERS.users['${tender_owner}']} tender_document=${tender_document}
  48 + Remove File ${file_path}
47 49
48 50
49 51 Можливість додати предмет закупівлі в тендер
... ... @@ -59,6 +61,11 @@ Resource resource.robot
59 61 Run As ${tender_owner} Видалити предмет закупівлі ${TENDER['TENDER_UAID']} ${USERS.users['${tender_owner}'].item_data.item_id}
60 62
61 63
  64 +Звірити відображення поля ${field} документа ${doc_id} із ${left} для користувача ${username}
  65 + ${right}= Run As ${username} Отримати інформацію із документа ${TENDER['TENDER_UAID']} ${doc_id} ${field}
  66 + Порівняти об'єкти ${left} ${right}
  67 +
  68 +
62 69 Звірити відображення поля ${field} тендера для усіх користувачів
63 70 :FOR ${username} IN ${viewer} ${tender_owner} ${provider} ${provider1}
64 71 \ Звірити відображення поля ${field} тендера для користувача ${username}
... ... @@ -72,12 +79,10 @@ Resource resource.robot
72 79 Звірити поле тендера ${username} ${TENDER['TENDER_UAID']} ${USERS.users['${tender_owner}'].initial_data} ${field}
73 80
74 81
75   -Звірити відображення вмісту документації до тендера для користувача ${username}
76   - ${file_content_loaded} ${file_name_loaded}= Run as ${viewer} Отримати документ ${TENDER['TENDER_UAID']} ${USERS.users['${username}'].tender_data.data.documents[0].url}
77   - ${file_name_uploaded}= Set variable ${USERS.users['${tender_owner}'].documents.filepath}
78   - ${document_content_uploaded}= get_file_contents ${file_name_uploaded}
79   - Порівняти об'єкти ${file_content_loaded} ${document_content_uploaded}
80   - Порівняти об'єкти ${file_name_loaded} ${file_name_uploaded}
  82 +Звірити відображення вмісту документа ${doc_id} з ${left} для користувача ${username}
  83 + ${file_name}= Run as ${username} Отримати документ ${TENDER['TENDER_UAID']} ${doc_id}
  84 + ${right}= Get File ${OUTPUT_DIR}${/}${file_name}
  85 + Порівняти об'єкти ${left} ${right}
81 86
82 87
83 88 Звірити відображення дати ${date} тендера для усіх користувачів
... ... @@ -153,16 +158,19 @@ Resource resource.robot
153 158
154 159 Можливість додати документацію до ${lot_index} лоту
155 160 ${lot_id}= get_id_from_object ${USERS.users['${tender_owner}'].tender_data.data.lots[${lot_index}]}
156   - ${filepath}= create_fake_doc
157   - Run As ${tender_owner} Завантажити документ в лот ${filepath} ${TENDER['TENDER_UAID']} ${lot_id}
  161 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  162 + Run As ${tender_owner} Завантажити документ в лот ${file_path} ${TENDER['TENDER_UAID']} ${lot_id}
  163 + ${doc_id}= get_id_from_doc_name ${file_name}
  164 + ${data}= Create Dictionary doc_name=${file_name} doc_id=${doc_id} doc_content=${file_content}
158 165 ${empty_list}= Create List
159 166 ${lots_documents}= Get variable value ${USERS.users['${tender_owner}'].lots_documents} ${empty_list}
160   - Append to list ${lots_documents} ${filepath}
  167 + Append to list ${lots_documents} ${data}
161 168 Set to dictionary ${USERS.users['${tender_owner}']} lots_documents=${lots_documents}
162 169 Log ${USERS.users['${tender_owner}'].lots_documents}
  170 + Remove File ${file_path}
  171 +
163 172
164 173 Можливість додати документацію до всіх лотів
165   - ${number_of_lots}= Get Length ${USERS.users['${tender_owner}'].initial_data.data.lots}
166 174 :FOR ${lot_index} IN RANGE ${number_of_lots}
167 175 \ Можливість додати документацію до ${lot_index} лоту
168 176
... ... @@ -177,6 +185,16 @@ Resource resource.robot
177 185 Set To Dictionary ${USERS.users['${tender_owner}']} item_data=${item_data}
178 186
179 187
  188 +Звірити відображення заголовку документації до всіх лотів для користувача ${username}
  189 + :FOR ${lot_index} IN RANGE ${number_of_lots}
  190 + \ Звірити відображення поля title документа ${USERS.users['${tender_owner}'].lots_documents[${lot_index}].doc_id} із ${USERS.users['${tender_owner}'].lots_documents[${lot_index}].doc_name} для користувача ${username}
  191 +
  192 +
  193 +Звірити відображення вмісту документації до всіх лотів для користувача ${username}
  194 + :FOR ${lot_index} IN RANGE ${number_of_lots}
  195 + \ Звірити відображення вмісту документа ${USERS.users['${tender_owner}'].lots_documents[${lot_index}].doc_id} з ${USERS.users['${tender_owner}'].lots_documents[${lot_index}].doc_content} для користувача ${username}
  196 +
  197 +
180 198 Можливість видалити предмет закупівлі з ${lot_index} лоту
181 199 ${lot_id}= get_id_from_object ${USERS.users['${tender_owner}'].tender_data.data.lots[${lot_index}]}
182 200 Run As ${tender_owner} Видалити предмет закупівлі ${TENDER['TENDER_UAID']} ${USERS.users['${tender_owner}'].item_data.item_id} ${lot_id}
... ... @@ -226,38 +244,6 @@ Resource resource.robot
226 244 Звірити поле тендера із значенням ${username} ${TENDER['TENDER_UAID']} ${data} ${field} ${lot_id}
227 245
228 246
229   -Звірити відображення заголовку документації до всіх лотів для користувача ${username}
230   - ${number_of_lots}= Get Length ${USERS.users['${tender_owner}'].initial_data.data.lots}
231   - :FOR ${lot_index} IN RANGE ${number_of_lots}
232   - \ ${lot_index}= Convert to integer ${lot_index}
233   - \ ${doc_index}= get_document_index_by_id ${USERS.users['${username}'].tender_data.data.documents} ${USERS.users['${tender_owner}'].lots_documents[${lot_index}]}
234   - \ Звірити відображення поля documents[${doc_index}].title тендера із ${USERS.users['${tender_owner}'].lots_documents[${lot_index}]} для користувача ${username}
235   -
236   -
237   -Отримати посилання на документацію до всіх лотів для користувача ${username}
238   - ${number_of_lots}= Get Length ${USERS.users['${tender_owner}'].initial_data.data.lots}
239   - :FOR ${lot_index} IN RANGE ${number_of_lots}
240   - \ ${lot_index}= Convert to integer ${lot_index}
241   - \ ${doc_index}= get_document_index_by_id ${USERS.users['${username}'].tender_data.data.documents} ${USERS.users['${tender_owner}'].lots_documents[${lot_index}]}
242   - \ Отримати дані із тендера ${username} ${TENDER['TENDER_UAID']} documents[${doc_index}].url
243   -
244   -
245   -Звірити відображення вмісту ${doc_index} документа до ${lot_index} лоту для користувача ${username}
246   - ${file_content_loaded} ${file_name_loaded}= Run as ${username} Отримати документ ${TENDER['TENDER_UAID']} ${USERS.users['${username}'].tender_data.data.documents[${doc_index}].url}
247   - ${doc_title}= Set variable ${USERS.users['${tender_owner}'].lots_documents[${lot_index}]}
248   - ${document_content_uploaded}= get_file_contents ${doc_title}
249   - Порівняти об'єкти ${file_content_loaded} ${document_content_uploaded}
250   - Порівняти об'єкти ${file_name_loaded} ${doc_title}
251   -
252   -
253   -Звірити відображення вмісту документації до всіх лотів для користувача ${username}
254   - ${number_of_lots}= Get Length ${USERS.users['${tender_owner}'].initial_data.data.lots}
255   - :FOR ${lot_index} IN RANGE ${number_of_lots}
256   - \ ${lot_index}= Convert to integer ${lot_index}
257   - \ ${doc_index}= get_document_index_by_id ${USERS.users['${username}'].tender_data.data.documents} ${USERS.users['${tender_owner}'].lots_documents[${lot_index}]}
258   - \ Звірити відображення вмісту ${doc_index} документа до ${lot_index} лоту для користувача ${username}
259   -
260   -
261 247 Звірити відображення поля ${field} у новоствореному лоті для усіх користувачів
262 248 :FOR ${username} IN ${viewer} ${tender_owner} ${provider} ${provider1}
263 249 \ Звірити відображення поля ${field} у новоствореному лоті для користувача ${username}
... ... @@ -455,44 +441,50 @@ Resource resource.robot
455 441
456 442 Можливість створити вимогу про виправлення умов закупівлі із документацією
457 443 ${claim}= Підготувати дані для подання вимоги
458   - ${document}= create_fake_doc
  444 + ${file_path} ${file_name} ${file_content}= create_fake_doc
459 445 ${complaintID}= Run As ${provider}
460 446 ... Створити вимогу про виправлення умов закупівлі
461 447 ... ${TENDER['TENDER_UAID']}
462 448 ... ${claim}
463   - ... ${document}
464   - ${claim_data}= Create Dictionary claim=${claim} complaintID=${complaintID} document=${document}
  449 + ... ${file_path}
  450 + ${doc_id}= get_id_from_doc_name ${file_name}
  451 + ${claim_data}= Create Dictionary claim=${claim} complaintID=${complaintID} doc_name=${file_name} doc_id=${doc_id} doc_content=${file_content}
465 452 ${claim_data}= munch_dict arg=${claim_data}
466 453 Set To Dictionary ${USERS.users['${provider}']} claim_data ${claim_data}
  454 + Remove File ${file_path}
467 455
468 456
469 457 Можливість створити вимогу про виправлення умов ${lot_index} лоту із документацією
470 458 ${claim}= Підготувати дані для подання вимоги
471 459 ${lot_id}= get_id_from_object ${USERS.users['${provider}'].tender_data.data.lots[${lot_index}]}
472   - ${document}= create_fake_doc
  460 + ${file_path} ${file_name} ${file_content}= create_fake_doc
473 461 ${complaintID}= Run As ${provider}
474 462 ... Створити вимогу про виправлення умов лоту
475 463 ... ${TENDER['TENDER_UAID']}
476 464 ... ${claim}
477 465 ... ${lot_id}
478   - ... ${document}
479   - ${claim_data}= Create Dictionary claim=${claim} complaintID=${complaintID} document=${document}
  466 + ... ${file_path}
  467 + ${doc_id}= get_id_from_doc_name ${file_name}
  468 + ${claim_data}= Create Dictionary claim=${claim} complaintID=${complaintID} doc_name=${file_name} doc_id=${doc_id} doc_content=${file_content}
480 469 ${claim_data}= munch_dict arg=${claim_data}
481 470 Set To Dictionary ${USERS.users['${provider}']} claim_data ${claim_data}
  471 + Remove File ${file_path}
482 472
483 473
484 474 Можливість створити вимогу про виправлення визначення ${award_index} переможця із документацією
485 475 ${claim}= Підготувати дані для подання вимоги
486   - ${document}= create_fake_doc
  476 + ${file_path} ${file_name} ${file_content}= create_fake_doc
487 477 ${complaintID}= Run As ${provider}
488 478 ... Створити вимогу про виправлення визначення переможця
489 479 ... ${TENDER['TENDER_UAID']}
490 480 ... ${claim}
491 481 ... ${award_index}
492   - ... ${document}
493   - ${claim_data}= Create Dictionary claim=${claim} complaintID=${complaintID} document=${document}
  482 + ... ${file_path}
  483 + ${doc_id}= get_id_from_doc_name ${file_name}
  484 + ${claim_data}= Create Dictionary claim=${claim} complaintID=${complaintID} doc_name=${file_name} doc_id=${doc_id} doc_content=${file_content}
494 485 ${claim_data}= munch_dict arg=${claim_data}
495 486 Set To Dictionary ${USERS.users['${provider}']} claim_data ${claim_data}
  487 + Remove File ${file_path}
496 488
497 489
498 490 Можливість скасувати вимогу про виправлення умов закупівлі
... ... @@ -812,16 +804,18 @@ Resource resource.robot
812 804
813 805
814 806 Можливість завантажити документ в пропозицію користувачем ${username}
815   - ${filepath}= create_fake_doc
816   - ${bid_doc_upload}= Run As ${username} Завантажити документ в ставку ${filepath} ${TENDER['TENDER_UAID']}
  807 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  808 + ${bid_doc_upload}= Run As ${username} Завантажити документ в ставку ${file_path} ${TENDER['TENDER_UAID']}
817 809 Set To Dictionary ${USERS.users['${username}'].bidresponses} bid_doc_upload=${bid_doc_upload}
  810 + Remove File ${file_path}
818 811
819 812
820 813 Можливість змінити документацію цінової пропозиції користувачем ${username}
821   - ${filepath}= create_fake_doc
  814 + ${file_path} ${file_name} ${file_content}= create_fake_doc
822 815 ${docid}= Get Variable Value ${USERS.users['${username}'].bidresponses['bid_doc_upload']['upload_response'].data.id}
823   - ${bid_doc_modified}= Run As ${username} Змінити документ в ставці ${filepath} ${docid}
  816 + ${bid_doc_modified}= Run As ${username} Змінити документ в ставці ${file_path} ${docid}
824 817 Set To Dictionary ${USERS.users['${username}'].bidresponses} bid_doc_modified=${bid_doc_modified}
  818 + Remove File ${file_path}
825 819
826 820 ##############################################################################################
827 821 # Cancellations
... ... @@ -836,13 +830,15 @@ Resource resource.robot
836 830
837 831 Можливість зареєструвати, додати документацію і підтвердити постачальника до закупівлі
838 832 ${supplier_data}= Підготувати дані про постачальника ${tender_owner}
839   - ${filepath}= create_fake_doc
  833 + ${file_path} ${file_name} ${file_content}= create_fake_doc
840 834 Run as ${tender_owner}
841 835 ... Створити постачальника, додати документацію і підтвердити його
842 836 ... ${TENDER['TENDER_UAID']}
843 837 ... ${supplier_data}
844   - ... ${filepath}
845   - Set to dictionary ${USERS.users['${tender_owner}']} award_document=${filepath}
  838 + ... ${file_path}
  839 + ${doc_id}= get_id_from_doc_name ${file_name}
  840 + Set to dictionary ${USERS.users['${tender_owner}']} award_doc_name=${file_name} award_doc_id=${doc_id} award_doc_content=${file_content}
  841 + Remove File ${file_path}
846 842
847 843
848 844 Можливість укласти угоду для закупівлі
... ...
... ... @@ -41,12 +41,20 @@ Library openprocurement_client_helper.py
41 41 [return] ${reply}
42 42
43 43
  44 +Отримати інформацію із документа
  45 + [Arguments] ${username} ${tender_uaid} ${doc_id} ${field}
  46 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid}
  47 + ${document}= get_document_by_id ${tender.data} ${doc_id}
  48 + Log ${document}
  49 + [Return] ${document['${field}']}
  50 +
  51 +
44 52 Отримати документ
45   - [Arguments] ${username} ${tender_uaid} ${url}
  53 + [Arguments] ${username} ${tender_uaid} ${doc_id}
46 54 ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid}
47   - ${token}= Get Variable Value ${USERS.users['${username}'].access_token}
48   - ${contents} ${filename}= Call Method ${USERS.users['${username}'].client} get_file ${tender} ${url} ${token}
49   - [return] ${contents} ${filename}
  55 + ${document}= get_document_by_id ${tender.data} ${doc_id}
  56 + ${filename}= download_file_from_url ${document.url} ${OUTPUT_DIR}${/}${document.title}
  57 + [return] ${filename}
50 58
51 59
52 60 Отримати посилання на аукціон для глядача
... ... @@ -646,15 +654,20 @@ Library openprocurement_client_helper.py
646 654 [Return] ${field_value}
647 655
648 656
649   -Отримати поле документації до скарги
650   - [Arguments] ${username} ${tender_uaid} ${complaintID} ${document_id} ${field_name} ${award_index}=${None}
651   - openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid}
652   - ${complaints}= Get Variable Value ${USERS.users['${username}'].tender_data.data.awards[${award_index}].complaints} ${USERS.users['${username}'].tender_data.data.complaints}
653   - ${complaint_index}= get_complaint_index_by_complaintID ${complaints} ${complaintID}
654   - Log ${complaints}
655   - ${document_index}= get_document_index_by_id ${complaints[${complaint_index}].documents} ${document_id}
656   - ${field_value}= Get Variable Value ${complaints[${complaint_index}].documents[${document_index}]['${field_name}']}
657   - [Return] ${field_value}
  657 +Отримати інформацію із документа до скарги
  658 + [Arguments] ${username} ${tender_uaid} ${complaintID} ${doc_id} ${field_name} ${award_index}=${None}
  659 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid}
  660 + ${document}= get_document_by_id ${tender.data} ${doc_id}
  661 + Log ${document}
  662 + [Return] ${document['${field_name}']}
  663 +
  664 +
  665 +Отримати документ до скарги
  666 + [Arguments] ${username} ${tender_uaid} ${doc_id}
  667 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid}
  668 + ${document}= get_document_by_id ${tender.data} ${doc_id}
  669 + ${filename}= download_file_from_url ${document.url} ${OUTPUT_DIR}${/}${document.title}
  670 + [return] ${filename}
658 671
659 672 ##############################################################################
660 673 # Bid operations
... ... @@ -897,6 +910,22 @@ Library openprocurement_client_helper.py
897 910 Log ${reply}
898 911
899 912
  913 +Отримати інформацію із документа до скасування
  914 + [Arguments] ${username} ${tender_uaid} ${doc_id} ${field_name}
  915 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid}
  916 + ${document}= get_document_by_id ${tender.data} ${doc_id}
  917 + Log ${document}
  918 + [Return] ${document['${field_name}']}
  919 +
  920 +
  921 +Отримати документ до скасування
  922 + [Arguments] ${username} ${tender_uaid} ${doc_id}
  923 + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid}
  924 + ${document}= get_document_by_id ${tender.data} ${doc_id}
  925 + ${filename}= download_file_from_url ${document.url} ${OUTPUT_DIR}${/}${document.title}
  926 + [return] ${filename}
  927 +
  928 +
900 929 Підтвердити підписання контракту
901 930 [Documentation]
902 931 ... [Arguments] Username, tender uaid, contract number
... ...
... ... @@ -3,6 +3,8 @@ from openprocurement_client.utils import get_tender_id_by_uaid
3 3 from openprocurement_client.exceptions import IdNotFound
4 4 from restkit.errors import RequestFailed
5 5 from retrying import retry
  6 +import os
  7 +import urllib
6 8
7 9
8 10 def retry_if_request_failed(exception):
... ... @@ -34,3 +36,33 @@ def get_complaint_internal_id(tender, complaintID):
34 36 except AttributeError:
35 37 pass
36 38 raise IdNotFound
  39 +
  40 +
  41 +def get_document_by_id(data, doc_id):
  42 + for document in data.get('documents', []):
  43 + if doc_id in document.get('title', ''):
  44 + return document
  45 + for complaint in data.get('complaints', []):
  46 + for document in complaint.get('documents', []):
  47 + if doc_id in document.get('title', ''):
  48 + return document
  49 + for award in data.get('awards', []):
  50 + for document in award.get('documents', []):
  51 + if doc_id in document.get('title', ''):
  52 + return document
  53 + for complaint in award.get('complaints', []):
  54 + for document in complaint.get('documents', []):
  55 + if doc_id in document.get('title', ''):
  56 + return document
  57 + for cancellation in data.get('cancellations', []):
  58 + for document in cancellation.get('documents', []):
  59 + if doc_id in document.get('title', ''):
  60 + return document
  61 + raise Exception('Document with id {} not found'.format(doc_id))
  62 +
  63 +
  64 +def download_file_from_url(url, path_to_save_file):
  65 + f = open(path_to_save_file, 'wb')
  66 + f.write(urllib.urlopen(url).read())
  67 + f.close()
  68 + return os.path.basename(f.name)
... ...
... ... @@ -35,7 +35,9 @@ Suite Teardown Test Suite Teardown
35 35 ... ${USERS.users['${viewer}'].broker}
36 36 ... tender_cancelation
37 37 [Setup] Дочекатись синхронізації з майданчиком ${viewer}
38   - Відображення активного статусу скасування
  38 + Звірити поле тендера із значенням ${viewer} ${TENDER['TENDER_UAID']}
  39 + ... active
  40 + ... cancellations[0].status
39 41
40 42
41 43 Відображення причини скасування тендера
... ... @@ -43,23 +45,33 @@ Suite Teardown Test Suite Teardown
43 45 ... viewer
44 46 ... ${USERS.users['${viewer}'].broker}
45 47 ... tender_cancelation
46   - Відображення причини скасування
  48 + Звірити поле тендера із значенням ${viewer} ${TENDER['TENDER_UAID']}
  49 + ... ${USERS.users['${tender_owner}']['cancellation_data']['cancellation_reason']}
  50 + ... cancellations[0].reason
  51 +
  52 +
  53 +Відображення опису документа до скасування тендера
  54 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення скасування тендера
  55 + ... viewer
  56 + ... ${USERS.users['${viewer}'].broker}
  57 + ... tender_cancelation
  58 + Звірити відображення поля description документа до скасування ${USERS.users['${tender_owner}']['cancellation_data']['document']['doc_id']} із ${USERS.users['${tender_owner}']['cancellation_data']['description']} для користувача ${viewer}
47 59
48 60
49   -Відображення опису документа скасування тендера
  61 +Відображення заголовку документа до скасування тендера
50 62 [Tags] ${USERS.users['${viewer}'].broker}: Відображення скасування тендера
51 63 ... viewer
52 64 ... ${USERS.users['${viewer}'].broker}
53 65 ... tender_cancelation
54   - Відображення опису документа скасування
  66 + Звірити відображення поля title документа до скасування ${USERS.users['${tender_owner}']['cancellation_data']['document']['doc_id']} із ${USERS.users['${tender_owner}']['cancellation_data']['document']['doc_name']} для користувача ${viewer}
55 67
56 68
57   -Відображення заголовку документа скасування тендера
  69 +Відображення вмісту документа до скасування тендера
58 70 [Tags] ${USERS.users['${viewer}'].broker}: Відображення скасування тендера
59 71 ... viewer
60 72 ... ${USERS.users['${viewer}'].broker}
61 73 ... tender_cancelation
62   - Відображення заголовку документа скасування
  74 + Звірити відображення вмісту документа до скасування ${USERS.users['${tender_owner}']['cancellation_data']['document']['doc_id']} з ${USERS.users['${tender_owner}']['cancellation_data']['document']['doc_content']} для користувача ${viewer}
63 75
64 76 ##############################################################################################
65 77 # LOT CANCELLATION
... ... @@ -80,7 +92,9 @@ Suite Teardown Test Suite Teardown
80 92 ... ${USERS.users['${viewer}'].broker}
81 93 ... lot_cancelation
82 94 [Setup] Дочекатись синхронізації з майданчиком ${viewer}
83   - Відображення активного статусу скасування
  95 + Звірити поле тендера із значенням ${viewer} ${TENDER['TENDER_UAID']}
  96 + ... active
  97 + ... cancellations[0].status
84 98
85 99
86 100 Відображення причини скасування лота
... ... @@ -88,23 +102,33 @@ Suite Teardown Test Suite Teardown
88 102 ... viewer
89 103 ... ${USERS.users['${viewer}'].broker}
90 104 ... lot_cancelation
91   - Відображення причини скасування
  105 + Звірити поле тендера із значенням ${viewer} ${TENDER['TENDER_UAID']}
  106 + ... ${USERS.users['${tender_owner}']['cancellation_data']['cancellation_reason']}
  107 + ... cancellations[0].reason
  108 +
  109 +
  110 +Відображення опису документа до скасування лота
  111 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення скасування лота
  112 + ... viewer
  113 + ... ${USERS.users['${viewer}'].broker}
  114 + ... lot_cancelation
  115 + Звірити відображення поля description документа до скасування ${USERS.users['${tender_owner}']['cancellation_data']['document']['doc_id']} із ${USERS.users['${tender_owner}']['cancellation_data']['description']} для користувача ${viewer}
92 116
93 117
94   -Відображення опису документа скасування лота
  118 +Відображення заголовку документа до скасування лота
95 119 [Tags] ${USERS.users['${viewer}'].broker}: Відображення скасування лота
96 120 ... viewer
97 121 ... ${USERS.users['${viewer}'].broker}
98 122 ... lot_cancelation
99   - Відображення опису документа скасування
  123 + Звірити відображення поля description документа до скасування ${USERS.users['${tender_owner}']['cancellation_data']['document']['doc_id']} із ${USERS.users['${tender_owner}']['cancellation_data']['document']['doc_name']} для користувача ${viewer}
100 124
101 125
102   -Відображення заголовку документа скасування лота
  126 +Відображення вмісту документа до скасування лота
103 127 [Tags] ${USERS.users['${viewer}'].broker}: Відображення скасування лота
104 128 ... viewer
105 129 ... ${USERS.users['${viewer}'].broker}
106 130 ... lot_cancelation
107   - Відображення заголовку документа скасування
  131 + Звірити відображення вмісту документа до скасування ${USERS.users['${tender_owner}']['cancellation_data']['document']['doc_id']} з ${USERS.users['${tender_owner}']['cancellation_data']['document']['doc_content']} для користувача ${viewer}
108 132
109 133 ##############################################################################################
110 134 # DELETING LOT
... ... @@ -126,7 +150,7 @@ Suite Teardown Test Suite Teardown
126 150 ... Скасувати закупівлю
127 151 ... ${TENDER['TENDER_UAID']}
128 152 ... ${cancellation_data['cancellation_reason']}
129   - ... ${cancellation_data['document']}
  153 + ... ${cancellation_data['document']['doc_path']}
130 154 ... ${cancellation_data['description']}
131 155
132 156
... ... @@ -137,29 +161,16 @@ Suite Teardown Test Suite Teardown
137 161 ... ${TENDER['TENDER_UAID']}
138 162 ... ${TENDER['LOT_ID']}
139 163 ... ${cancellation_data['cancellation_reason']}
140   - ... ${cancellation_data['document']}
  164 + ... ${cancellation_data['document']['doc_path']}
141 165 ... ${cancellation_data['description']}
142 166
143 167
144   -Відображення активного статусу скасування
145   - Звірити поле тендера із значенням ${viewer} ${TENDER['TENDER_UAID']}
146   - ... active
147   - ... cancellations[0].status
148   -
149   -
150   -Відображення причини скасування
151   - Звірити поле тендера із значенням ${viewer} ${TENDER['TENDER_UAID']}
152   - ... ${USERS.users['${tender_owner}']['cancellation_data']['cancellation_reason']}
153   - ... cancellations[0].reason
  168 +Звірити відображення поля ${field} документа до скасування ${doc_id} із ${left} для користувача ${username}
  169 + ${right}= Run As ${username} Отримати інформацію із документа ${TENDER['TENDER_UAID']} ${doc_id} ${field}
  170 + Порівняти об'єкти ${left} ${right}
154 171
155 172
156   -Відображення опису документа скасування
157   - Звірити поле тендера із значенням ${viewer} ${TENDER['TENDER_UAID']}
158   - ... ${USERS.users['${tender_owner}']['cancellation_data']['description']}
159   - ... cancellations[0].documents[0].description
160   -
161   -
162   -Відображення заголовку документа скасування
163   - Звірити поле тендера із значенням ${viewer} ${TENDER['TENDER_UAID']}
164   - ... ${USERS.users['${tender_owner}']['cancellation_data']['document']}
165   - ... cancellations[0].documents[0].title
  173 +Звірити відображення вмісту документа до скасування ${doc_id} з ${left} для користувача ${username}
  174 + ${file_name}= Run as ${username} Отримати документ до скасування ${TENDER['TENDER_UAID']} ${doc_id}
  175 + ${right}= Get File ${OUTPUT_DIR}${/}${file_name}
  176 + Порівняти об'єкти ${left} ${right}
... ...
... ... @@ -6,6 +6,7 @@ from uuid import uuid4
6 6 from tempfile import NamedTemporaryFile
7 7 from .local_time import get_now
8 8 from op_faker import OP_Provider
  9 +import os
9 10 import random
10 11
11 12
... ... @@ -44,7 +45,7 @@ def create_fake_doc():
44 45 tf = NamedTemporaryFile(delete=False, suffix=suffix, prefix=prefix)
45 46 tf.write(content)
46 47 tf.close()
47   - return tf.name
  48 + return tf.name, os.path.basename(tf.name), content
48 49
49 50
50 51 def test_tender_data(params, periods=("enquiry", "tender")):
... ...
... ... @@ -265,9 +265,16 @@ Get Broker Property By Username
265 265 Підготувати дані про скасування
266 266 [Arguments] ${username}
267 267 ${cancellation_reason}= create_fake_sentence
268   - ${document}= create_fake_doc
  268 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  269 + ${doc_id}= get_id_from_doc_name ${file_name}
  270 + ${document}= Create Dictionary
  271 + ... doc_path=${file_path}
  272 + ... doc_name=${file_name}
  273 + ... doc_content=${file_content}
  274 + ... doc_id=${doc_id}
269 275 ${new_description}= create_fake_sentence
270 276 ${cancellation_data}= Create Dictionary cancellation_reason=${cancellation_reason} document=${document} description=${new_description}
  277 + ${cancellation_data}= munchify ${cancellation_data}
271 278 Set To Dictionary ${USERS.users['${username}']} cancellation_data=${cancellation_data}
272 279 [Return] ${cancellation_data}
273 280
... ... @@ -542,17 +549,7 @@ Log differences between dicts
542 549
543 550 Звірити поле скарги із значенням
544 551 [Arguments] ${username} ${tender_uaid} ${given_value} ${field_name} ${complaintID} ${award_index}=${None}
545   - ${status}= Call method ${field_name} startswith document.
546   - ${fetched_field_name}= Run keyword if ${status} == ${True} Fetch From Right ${field_name} .
547   - ${field_name}= Set variable if ${status} == ${True} ${fetched_field_name} ${field_name}
548   - ${received_value}= Run keyword if ${status} == ${True} Run as ${username} Отримати поле документації до скарги
549   - ... ${tender_uaid}
550   - ... ${complaintID}
551   - ... ${given_value}
552   - ... ${field_name}
553   - ... ${award_index}
554   - ... ELSE
555   - ... Run as ${username} Отримати інформацію із скарги ${tender_uaid} ${complaintID} ${field_name} ${award_index}
  552 + ${received_value}= Run as ${username} Отримати інформацію із скарги ${tender_uaid} ${complaintID} ${field_name} ${award_index}
556 553 Порівняти об'єкти ${given_value} ${received_value}
557 554
558 555
... ...
... ... @@ -454,7 +454,7 @@ ${item_meat} ${False}
454 454 ... ${USERS.users['${viewer}'].broker}
455 455 ... add_tender_doc
456 456 ... level3
457   - Звірити відображення поля documents[0].title тендера із ${USERS.users['${tender_owner}']['documents']['filepath']} для користувача ${viewer}
  457 + Звірити відображення поля documents[0].title тендера із ${USERS.users['${tender_owner}']['tender_document']['doc_name']} для користувача ${viewer}
458 458
459 459 ##############################################################################################
460 460 # AWARDS
... ... @@ -466,7 +466,7 @@ ${item_meat} ${False}
466 466 ... ${USERS.users['${viewer}'].broker}
467 467 ... award_view
468 468 ... level2
469   - Звірити відображення поля awards[0].documents[0].title тендера із ${USERS.users['${tender_owner}'].award_document} для користувача ${viewer}
  469 + Звірити відображення поля awards[0].documents[0].title тендера із ${USERS.users['${tender_owner}'].award_doc_name} для користувача ${viewer}
470 470
471 471 Відображення підтвердженого постачальника переговорної процедури за нагальною потребою
472 472 [Tags] ${USERS.users['${viewer}'].broker}: Відображення постачальника процедури
... ...
... ... @@ -455,7 +455,7 @@ ${item_meat} ${False}
455 455 ... ${USERS.users['${viewer}'].broker}
456 456 ... add_tender_doc
457 457 ... level3
458   - Звірити відображення поля documents[0].title тендера із ${USERS.users['${tender_owner}']['documents']['filepath']} для користувача ${viewer}
  458 + Звірити відображення поля documents[0].title тендера із ${USERS.users['${tender_owner}']['tender_document']['doc_name']} для користувача ${viewer}
459 459
460 460 ##############################################################################################
461 461 # AWARDS
... ... @@ -467,7 +467,7 @@ ${item_meat} ${False}
467 467 ... ${USERS.users['${viewer}'].broker}
468 468 ... award_view
469 469 ... level2
470   - Звірити відображення поля awards[0].documents[0].title тендера із ${USERS.users['${tender_owner}'].award_document} для користувача ${viewer}
  470 + Звірити відображення поля awards[0].documents[0].title тендера із ${USERS.users['${tender_owner}'].award_doc_name} для користувача ${viewer}
471 471
472 472
473 473 Відображення підтвердженого постачальника переговорної процедури
... ...
... ... @@ -441,7 +441,7 @@ ${item_meat} ${True}
441 441 ... ${USERS.users['${viewer}'].broker}
442 442 ... add_tender_doc level2
443 443 [Setup] Дочекатись синхронізації з майданчиком ${viewer}
444   - Звірити відображення поля documents[0].title тендера із ${USERS.users['${tender_owner}']['documents']['filepath']} для користувача ${viewer}
  444 + Звірити відображення поля title документа ${USERS.users['${tender_owner}']['tender_document']['doc_id']} із ${USERS.users['${tender_owner}'].tender_document.doc_name} для користувача ${viewer}
445 445
446 446
447 447 Відображення заголовку документації до всіх лотів
... ... @@ -457,9 +457,7 @@ ${item_meat} ${True}
457 457 ... viewer
458 458 ... ${USERS.users['${viewer}'].broker}
459 459 ... add_tender_doc level2
460   - ${doc_index}= get_document_index_by_id ${USERS.users['${viewer}'].tender_data.data.documents} ${USERS.users['${tender_owner}'].documents.filepath}
461   - Отримати дані із тендера ${tender_owner} ${TENDER['TENDER_UAID']} documents[${doc_index}].url
462   - Звірити відображення вмісту документації до тендера для користувача ${viewer}
  460 + Звірити відображення вмісту документа ${USERS.users['${tender_owner}'].tender_document.doc_id} з ${USERS.users['${tender_owner}'].tender_document.doc_content} для користувача ${viewer}
463 461
464 462
465 463 Відображення вмісту документації до всіх лотів
... ... @@ -467,7 +465,6 @@ ${item_meat} ${True}
467 465 ... viewer
468 466 ... ${USERS.users['${viewer}'].broker}
469 467 ... add_lot_doc level2
470   - Отримати посилання на документацію до всіх лотів для користувача ${viewer}
471 468 Звірити відображення вмісту документації до всіх лотів для користувача ${viewer}
472 469
473 470
... ... @@ -862,6 +859,7 @@ ${item_meat} ${True}
862 859 [Teardown] Оновити LAST_MODIFICATION_DATE
863 860 Можливість створити вимогу про виправлення умов закупівлі із документацією
864 861
  862 +
865 863 Відображення опису вимоги про виправлення умов закупівлі
866 864 [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
867 865 ... viewer
... ... @@ -888,12 +886,25 @@ ${item_meat} ${True}
888 886 Звірити відображення поля title вимоги із ${USERS.users['${provider}'].claim_data.claim.data.title} для користувача ${viewer}
889 887
890 888
891   -Відображення заголовку документації вимоги про виправлення умов закупівлі
  889 +Відображення заголовку документа до вимоги про виправлення умов закупівлі
  890 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  891 + ... viewer
  892 + ... ${USERS.users['${viewer}'].broker}
  893 + ... create_tender_claim
  894 + ${right}= Run As ${viewer} Отримати інформацію із документа до скарги
  895 + ... ${TENDER['TENDER_UAID']}
  896 + ... ${USERS.users['${provider}'].claim_data.complaintID}
  897 + ... ${USERS.users['${provider}'].claim_data.doc_id}
  898 + ... title
  899 + Порівняти об'єкти ${USERS.users['${provider}'].claim_data.doc_name} ${right}
  900 +
  901 +
  902 +Відображення вмісту документа до вимоги про виправлення умов закупівлі
892 903 [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
893 904 ... viewer
894 905 ... ${USERS.users['${viewer}'].broker}
895 906 ... create_tender_claim
896   - Звірити відображення поля document.title вимоги із ${USERS.users['${provider}'].claim_data.document} для користувача ${viewer}
  907 + Звірити відображення вмісту документа ${USERS['${provider}'].claim_data.doc_id} з ${USERS['${provider}'].claim_data.doc_content} для користувача ${viewer}
897 908
898 909
899 910 Відображення поданого статусу вимоги про виправлення умов закупівлі
... ... @@ -1040,6 +1051,7 @@ ${item_meat} ${True}
1040 1051 [Teardown] Оновити LAST_MODIFICATION_DATE
1041 1052 Можливість створити вимогу про виправлення умов 0 лоту із документацією
1042 1053
  1054 +
1043 1055 Відображення опису вимоги про виправлення умов лоту
1044 1056 [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
1045 1057 ... viewer
... ... @@ -1066,12 +1078,25 @@ ${item_meat} ${True}
1066 1078 Звірити відображення поля title вимоги із ${USERS.users['${provider}'].claim_data.claim.data.title} для користувача ${viewer}
1067 1079
1068 1080
1069   -Відображення заголовку документації вимоги про виправлення умов лоту
  1081 +Відображення заголовку документа до вимоги про виправлення умов лоту
  1082 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  1083 + ... viewer
  1084 + ... ${USERS.users['${viewer}'].broker}
  1085 + ... create_lot_claim
  1086 + ${right}= Run As ${viewer} Отримати інформацію із документа до скарги
  1087 + ... ${TENDER['TENDER_UAID']}
  1088 + ... ${USERS.users['${provider}'].claim_data.complaintID}
  1089 + ... ${USERS.users['${provider}'].claim_data.doc_id}
  1090 + ... title
  1091 + Порівняти об'єкти ${USERS.users['${provider}'].claim_data.doc_name} ${right}
  1092 +
  1093 +
  1094 +Відображення вмісту документа до вимоги про виправлення умов лоту
1070 1095 [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
1071 1096 ... viewer
1072 1097 ... ${USERS.users['${viewer}'].broker}
1073 1098 ... create_lot_claim
1074   - Звірити відображення поля document.title вимоги із ${USERS.users['${provider}'].claim_data.document} для користувача ${viewer}
  1099 + Звірити відображення вмісту документа ${USERS['${provider}'].claim_data.doc_id} з ${USERS['${provider}'].claim_data.doc_content} для користувача ${viewer}
1075 1100
1076 1101
1077 1102 Відображення поданого статусу вимоги про виправлення умов лоту
... ...
... ... @@ -23,6 +23,7 @@ ${award_index} ${0}
23 23 :FOR ${username} IN ${viewer} ${tender_owner}
24 24 \ ${resp}= Run As ${username} Пошук тендера по ідентифікатору ${TENDER['TENDER_UAID']}
25 25
  26 +
26 27 Можливість створити вимогу про виправлення визначення переможця, додати до неї документацію і подати її користувачем
27 28 [Tags] ${USERS.users['${provider}'].broker}: Процес оскарження
28 29 ... provider
... ... @@ -65,7 +66,21 @@ ${award_index} ${0}
65 66 ... viewer
66 67 ... ${USERS.users['${viewer}'].broker}
67 68 ... create_award_claim
68   - Звірити відображення поля document.title вимоги про виправлення визначення ${award_index} переможця із ${USERS.users['${provider}'].claim_data.document} для користувача ${viewer}
  69 + ${right}= Run As ${viewer} Отримати інформацію із документа до скарги
  70 + ... ${TENDER['TENDER_UAID']}
  71 + ... ${USERS.users['${provider}'].claim_data.complaintID}
  72 + ... ${USERS.users['${provider}'].claim_data.doc_id}
  73 + ... title
  74 + ... ${award_index}
  75 + Порівняти об'єкти ${USERS.users['${provider}'].claim_data.doc_name} ${right}
  76 +
  77 +
  78 +Відображення вмісту документа до вимоги про виправлення визначення переможця
  79 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення оскарження
  80 + ... viewer
  81 + ... ${USERS.users['${viewer}'].broker}
  82 + ... create_award_claim
  83 + Звірити відображення вмісту документа ${USERS['${provider}'].claim_data.doc_id} з ${USERS['${provider}'].claim_data.doc_content} для користувача ${viewer}
69 84
70 85
71 86 Відображення поданого статусу вимоги про виправлення визначення переможця
... ... @@ -201,8 +216,9 @@ ${award_index} ${0}
201 216 ... tender_owner
202 217 ... ${USERS.users['${tender_owner}'].broker}
203 218 ... qualification_add_doc_to_first_award level3
204   - ${filepath}= create_fake_doc
205   - Run As ${tender_owner} Завантажити документ рішення кваліфікаційної комісії ${filepath} ${TENDER['TENDER_UAID']} 0
  219 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  220 + Run As ${tender_owner} Завантажити документ рішення кваліфікаційної комісії ${file_path} ${TENDER['TENDER_UAID']} 0
  221 + Remove File ${file_path}
206 222
207 223
208 224 Можливість підтвердити постачальника
... ... @@ -226,8 +242,9 @@ ${award_index} ${0}
226 242 ... tender_owner
227 243 ... ${USERS.users['${tender_owner}'].broker}
228 244 ... qualification_add_doc_to_second_award level3
229   - ${filepath}= create_fake_doc
230   - Run As ${tender_owner} Завантажити документ рішення кваліфікаційної комісії ${filepath} ${TENDER['TENDER_UAID']} 1
  245 + ${file_path} ${file_name} ${file_content}= create_fake_doc
  246 + Run As ${tender_owner} Завантажити документ рішення кваліфікаційної комісії ${file_path} ${TENDER['TENDER_UAID']} 1
  247 + Remove File ${file_path}
231 248
232 249
233 250 Можливість підтвердити нового постачальника
... ...
... ... @@ -461,7 +461,7 @@ ${item_meat} ${False}
461 461 ... ${USERS.users['${viewer}'].broker}
462 462 ... add_tender_doc
463 463 ... level3
464   - Звірити відображення поля documents[0].title тендера із ${USERS.users['${tender_owner}']['documents']['filepath']} для користувача ${viewer}
  464 + Звірити відображення поля documents[0].title тендера із ${USERS.users['${tender_owner}']['tender_document']['doc_name']} для користувача ${viewer}
465 465
466 466 ##############################################################################################
467 467 # AWARDS
... ... @@ -473,7 +473,7 @@ ${item_meat} ${False}
473 473 ... ${USERS.users['${viewer}'].broker}
474 474 ... award_view
475 475 ... level2
476   - Звірити відображення поля awards[0].documents[0].title тендера із ${USERS.users['${tender_owner}'].award_document} для користувача ${viewer}
  476 + Звірити відображення поля awards[0].documents[0].title тендера із ${USERS.users['${tender_owner}'].award_doc_name} для користувача ${viewer}
477 477
478 478
479 479 Відображення підтвердженого постачальника звіту про укладений договір
... ...
... ... @@ -59,11 +59,6 @@ def add_minutes_to_date(date, minutes):
59 59 return (parse(date) + timedelta(minutes=float(minutes))).isoformat()
60 60
61 61
62   -def get_file_contents(path):
63   - with open(path, 'r') as f:
64   - return unicode(f.read()) or u''
65   -
66   -
67 62 def compare_date(left, right, accuracy="minute", absolute_delta=True):
68 63 '''Compares dates with specified accuracy
69 64
... ... @@ -413,6 +408,10 @@ def get_id_from_object(obj):
413 408 return obj_id.group(1)
414 409
415 410
  411 +def get_id_from_doc_name(name):
  412 + return re.match(r'd\-[0-9a-fA-F]{8}', name).group(0)
  413 +
  414 +
416 415 def get_object_type_by_id(object_id):
417 416 prefixes = {'q': 'questions', 'f': 'features', 'i': 'items', 'l': 'lots'}
418 417 return prefixes.get(object_id[0])
... ... @@ -441,17 +440,6 @@ def get_complaint_index_by_complaintID(data, complaintID):
441 440 return index
442 441
443 442
444   -def get_document_index_by_id(data, document_id):
445   - if not data:
446   - return 0
447   - for index, element in enumerate(data):
448   - if element['title'] == document_id:
449   - break
450   - else:
451   - index += 1
452   - return index
453   -
454   -
455 443 def generate_test_bid_data(tender_data):
456 444 bid = test_bid_data()
457 445 if 'aboveThreshold' in tender_data.get('procurementMethodType', '') or 'competitiveDialogue' in tender_data.get('procurementMethodType', ''):
... ...
Please register or login to post a comment