Commit 2f16f03cb686c23e7debcfbf6f211974ea8f1136
Merge branch 'master' of https://github.com/ProzorroUKR/robot_tests into feature/pq
Showing
7 changed files
with
174 additions
and
8 deletions
@@ -2127,6 +2127,21 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | @@ -2127,6 +2127,21 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | ||
2127 | Remove File ${file_path} | 2127 | Remove File ${file_path} |
2128 | 2128 | ||
2129 | 2129 | ||
2130 | +Можливість завантажити обгрунтування аномально низької ціни до пропозиції учасником | ||
2131 | + [Arguments] ${username} ${doc_name} ${doc_type}=${NONE} | ||
2132 | + ${file_path} ${file_name} ${file_content}= create_fake_doc | ||
2133 | + ${doc_id}= get_id_from_string ${file_name} | ||
2134 | + ${bid_document_data}= Create Dictionary | ||
2135 | + ... doc_name=${file_name} | ||
2136 | + ... doc_content=${file_content} | ||
2137 | + ... doc_id=${doc_id} | ||
2138 | + Run As ${username} Завантажити документ в ставку обгрунтування аномально низької ціни ${file_path} ${TENDER['TENDER_UAID']} ${doc_name} ${doc_type} | ||
2139 | + Set To Dictionary ${USERS.users['${username}']} bid_document=${bid_document_data} | ||
2140 | + #Set To Dictionary ${USERS.users['${username}']} bidresponses=${bid_doc_upload} | ||
2141 | + #Set To Dictionary ${USERS.users['${username}'].bidresponses} bid_doc_upload=${bid_doc_upload} | ||
2142 | + Remove File ${file_path} | ||
2143 | + | ||
2144 | + | ||
2130 | Можливість змінити документацію цінової пропозиції користувачем ${username} | 2145 | Можливість змінити документацію цінової пропозиції користувачем ${username} |
2131 | ${file_path} ${file_name} ${file_content}= create_fake_doc | 2146 | ${file_path} ${file_name} ${file_content}= create_fake_doc |
2132 | ${doc_id}= get_id_from_string ${file_name} | 2147 | ${doc_id}= get_id_from_string ${file_name} |
@@ -2150,6 +2165,18 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | @@ -2150,6 +2165,18 @@ ${ERROR_PLAN_MESSAGE}= Calling method 'get_plan' failed: ResourceGone: {"status | ||
2150 | Set To Dictionary ${USERS.users['${username}']} bid_document_modified=${bid_document_modified_data} | 2165 | Set To Dictionary ${USERS.users['${username}']} bid_document_modified=${bid_document_modified_data} |
2151 | Remove File ${file_path} | 2166 | Remove File ${file_path} |
2152 | 2167 | ||
2168 | + | ||
2169 | +Можливість змінити документацію обгрунтування аномально низької ціни користувачем ${username} | ||
2170 | + ${file_path} ${file_name} ${file_content}= create_fake_doc | ||
2171 | + ${doc_id}= get_id_from_string ${file_name} | ||
2172 | + ${bid_document_modified_data}= Create Dictionary | ||
2173 | + ... doc_name=${file_name} | ||
2174 | + ... doc_content=${file_content} | ||
2175 | + ... doc_id=${doc_id} | ||
2176 | + Run As ${username} Змінити документ в ставці при обгрунтуванні аномально низької ціни ${TENDER['TENDER_UAID']} ${file_path} ${USERS.users['${username}']['bid_document']['doc_id']} | ||
2177 | + Set To Dictionary ${USERS.users['${username}']} bid_document_modified=${bid_document_modified_data} | ||
2178 | + Remove File ${file_path} | ||
2179 | + | ||
2153 | ############################################################################################## | 2180 | ############################################################################################## |
2154 | # Cancellations | 2181 | # Cancellations |
2155 | ############################################################################################## | 2182 | ############################################################################################## |
@@ -1688,6 +1688,25 @@ Library openprocurement_client.utils | @@ -1688,6 +1688,25 @@ Library openprocurement_client.utils | ||
1688 | [Return] ${uploaded_file} | 1688 | [Return] ${uploaded_file} |
1689 | 1689 | ||
1690 | 1690 | ||
1691 | +Завантажити документ в ставку обгрунтування аномально низької ціни | ||
1692 | + [Arguments] ${username} ${path} ${tender_uaid} ${doc_name}=documents ${doc_type}=${None} | ||
1693 | + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid} | ||
1694 | + ${bid_id}= set variable ${tender.data.awards[0].bid_id} | ||
1695 | + ${tender}= set_access_key ${tender} ${USERS.users['${username}']['access_token']} | ||
1696 | + ${response}= Call Method ${USERS.users['${username}'].client} upload_bid_document | ||
1697 | + ... ${path} | ||
1698 | + ... ${tender.data.id} | ||
1699 | + ... ${bid_id} | ||
1700 | + ... doc_type=${doc_type} | ||
1701 | + ... access_token=${tender.access.token} | ||
1702 | + ... subitem_name=${doc_name} | ||
1703 | + ${uploaded_file} = Create Dictionary | ||
1704 | + ... filepath=${path} | ||
1705 | + ... upload_response=${response} | ||
1706 | + Log object data ${uploaded_file} | ||
1707 | + [Return] ${uploaded_file} | ||
1708 | + | ||
1709 | + | ||
1691 | Змінити документ в ставці | 1710 | Змінити документ в ставці |
1692 | [Arguments] ${username} ${tender_uaid} ${path} ${doc_id} ${doc_type}=documents | 1711 | [Arguments] ${username} ${tender_uaid} ${path} ${doc_id} ${doc_type}=documents |
1693 | ${bid_id}= Get Variable Value ${USERS.users['${username}'].bidresponses['bid'].data.id} | 1712 | ${bid_id}= Get Variable Value ${USERS.users['${username}'].bidresponses['bid'].data.id} |
@@ -1728,6 +1747,26 @@ Library openprocurement_client.utils | @@ -1728,6 +1747,26 @@ Library openprocurement_client.utils | ||
1728 | [Return] ${uploaded_file} | 1747 | [Return] ${uploaded_file} |
1729 | 1748 | ||
1730 | 1749 | ||
1750 | +Змінити документ в ставці при обгрунтуванні аномально низької ціни | ||
1751 | + [Arguments] ${username} ${tender_uaid} ${path} ${doc_id} ${doc_type}=documents | ||
1752 | + ${bid_id}= openprocurement_client.Отримати інформацію із пропозиції ${username} ${tender_uaid} id | ||
1753 | + ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid} | ||
1754 | + ${tender}= set_access_key ${tender} ${USERS.users['${username}']['access_token']} | ||
1755 | + ${bid}= openprocurement_client.Отримати пропозицію ${username} ${tender_uaid} | ||
1756 | + ${bid_doc}= get_document_by_id ${bid.data} ${doc_id} | ||
1757 | + ${response}= Call Method ${USERS.users['${username}'].client} update_bid_document | ||
1758 | + ... ${path} | ||
1759 | + ... ${tender.data.id} | ||
1760 | + ... ${bid_id} | ||
1761 | + ... ${bid_doc['id']} | ||
1762 | + ... access_token=${tender.access.token} | ||
1763 | + ${uploaded_file} = Create Dictionary | ||
1764 | + ... filepath=${path} | ||
1765 | + ... upload_response=${response} | ||
1766 | + Log object data ${uploaded_file} | ||
1767 | + [Return] ${uploaded_file} | ||
1768 | + | ||
1769 | + | ||
1731 | Змінити документацію в ставці | 1770 | Змінити документацію в ставці |
1732 | [Arguments] ${username} ${tender_uaid} ${doc_data} ${doc_id} | 1771 | [Arguments] ${username} ${tender_uaid} ${doc_data} ${doc_id} |
1733 | ${bid_id}= Get Variable Value ${USERS.users['${username}'].bidresponses['bid'].data.id} | 1772 | ${bid_id}= Get Variable Value ${USERS.users['${username}'].bidresponses['bid'].data.id} |
@@ -303,11 +303,19 @@ def test_tender_data_planning(params): | @@ -303,11 +303,19 @@ def test_tender_data_planning(params): | ||
303 | } | 303 | } |
304 | }, | 304 | }, |
305 | "procuringEntity": { | 305 | "procuringEntity": { |
306 | + #"kind": "general", | ||
306 | "identifier": { | 307 | "identifier": { |
307 | "scheme": "UA-EDR", | 308 | "scheme": "UA-EDR", |
308 | "id": random.choice(["13313462", "00037256"]), | 309 | "id": random.choice(["13313462", "00037256"]), |
309 | "legalName": random.choice([u"Київський Тестовий Ліцей", u"Київська Тестова міська клінічна лікарня"]), | 310 | "legalName": random.choice([u"Київський Тестовий Ліцей", u"Київська Тестова міська клінічна лікарня"]), |
310 | }, | 311 | }, |
312 | + "address": { | ||
313 | + "countryName": "Україна", | ||
314 | + "postalCode": "01220", | ||
315 | + "region": "м. Київ", | ||
316 | + "streetAddress": "вул. Банкова, 11, корпус 1", | ||
317 | + "locality": "м. Київ" | ||
318 | + } | ||
311 | }, | 319 | }, |
312 | "tender": { | 320 | "tender": { |
313 | "procurementMethod": "", | 321 | "procurementMethod": "", |
@@ -321,6 +329,12 @@ def test_tender_data_planning(params): | @@ -321,6 +329,12 @@ def test_tender_data_planning(params): | ||
321 | "buyers": [] | 329 | "buyers": [] |
322 | } | 330 | } |
323 | data["procuringEntity"]["name"] = data["procuringEntity"]["identifier"]["legalName"] | 331 | data["procuringEntity"]["name"] = data["procuringEntity"]["identifier"]["legalName"] |
332 | + if params.get("mode") == "aboveThresholdUA.defense": | ||
333 | + data["procuringEntity"]["kind"] = "defense" | ||
334 | + elif params.get("mode") in ["belowThreshold", "reporting"]: | ||
335 | + data["procuringEntity"]["kind"] = "other" | ||
336 | + else: | ||
337 | + data["procuringEntity"]["kind"] = random.choice(["general", "special", "central", "authority", "social"]) | ||
324 | buyers = test_buyers_data() | 338 | buyers = test_buyers_data() |
325 | buyers["name"] = buyers["identifier"]["legalName"] | 339 | buyers["name"] = buyers["identifier"]["legalName"] |
326 | data['buyers'].append(buyers) | 340 | data['buyers'].append(buyers) |
@@ -377,22 +391,46 @@ def test_tender_data_limited(params, plan_data): | @@ -377,22 +391,46 @@ def test_tender_data_limited(params, plan_data): | ||
377 | data.update({"procurementMethodType": params['mode'], "procurementMethod": "limited"}) | 391 | data.update({"procurementMethodType": params['mode'], "procurementMethod": "limited"}) |
378 | if params['mode'] == "negotiation": | 392 | if params['mode'] == "negotiation": |
379 | cause_variants = ( | 393 | cause_variants = ( |
380 | - "artContestIP", | ||
381 | - "noCompetition", | 394 | + "resolvingInsolvency", |
395 | + "artPurchase", | ||
396 | + "contestWinner", | ||
397 | + "technicalReasons", | ||
398 | + "intProperty", | ||
399 | + "lastHope", | ||
382 | "twiceUnsuccessful", | 400 | "twiceUnsuccessful", |
383 | "additionalPurchase", | 401 | "additionalPurchase", |
384 | "additionalConstruction", | 402 | "additionalConstruction", |
385 | "stateLegalServices" | 403 | "stateLegalServices" |
386 | ) | 404 | ) |
387 | cause = fake.random_element(cause_variants) | 405 | cause = fake.random_element(cause_variants) |
406 | + data.update({ | ||
407 | + "cause": cause, | ||
408 | + "causeDescription": fake.description() | ||
409 | + }) | ||
388 | elif params['mode'] == "negotiation.quick": | 410 | elif params['mode'] == "negotiation.quick": |
389 | - cause_variants = ('quick',) | ||
390 | - if params['mode'] in ("negotiation", "negotiation.quick"): | 411 | + cause_variants = ( |
412 | + "resolvingInsolvency", | ||
413 | + "artPurchase", | ||
414 | + "contestWinner", | ||
415 | + "technicalReasons", | ||
416 | + "intProperty", | ||
417 | + "lastHope", | ||
418 | + "twiceUnsuccessful", | ||
419 | + "additionalPurchase", | ||
420 | + "additionalConstruction", | ||
421 | + "stateLegalServices", | ||
422 | + "emergency", | ||
423 | + "humanitarianAid", | ||
424 | + "contractCancelled", | ||
425 | + "activeComplaint" | ||
426 | + ) | ||
391 | cause = fake.random_element(cause_variants) | 427 | cause = fake.random_element(cause_variants) |
392 | data.update({ | 428 | data.update({ |
393 | "cause": cause, | 429 | "cause": cause, |
394 | "causeDescription": fake.description() | 430 | "causeDescription": fake.description() |
395 | }) | 431 | }) |
432 | + #if params['mode'] in ("negotiation", "negotiation.quick"): | ||
433 | + #cause = fake.random_element(cause_variants) | ||
396 | return munchify(data) | 434 | return munchify(data) |
397 | 435 | ||
398 | 436 | ||
@@ -1066,10 +1104,18 @@ def invalid_gmdn_data(): | @@ -1066,10 +1104,18 @@ def invalid_gmdn_data(): | ||
1066 | 1104 | ||
1067 | def test_buyers_data(): | 1105 | def test_buyers_data(): |
1068 | buyers = { | 1106 | buyers = { |
1107 | + "kind": "general", | ||
1069 | "identifier": { | 1108 | "identifier": { |
1070 | "scheme": "UA-EDR", | 1109 | "scheme": "UA-EDR", |
1071 | "id": random.choice(["13313462", "00037256"]), | 1110 | "id": random.choice(["13313462", "00037256"]), |
1072 | "legalName": random.choice([u"Київський Тестовий Ліцей", u"Київська Тестова міська клінічна лікарня"]), | 1111 | "legalName": random.choice([u"Київський Тестовий Ліцей", u"Київська Тестова міська клінічна лікарня"]), |
1112 | + }, | ||
1113 | + "address": { | ||
1114 | + "countryName": "Україна", | ||
1115 | + "postalCode": "01220", | ||
1116 | + "region": "м. Київ", | ||
1117 | + "streetAddress": "вул. Банкова, 11, корпус 1", | ||
1118 | + "locality": "м. Київ" | ||
1073 | } | 1119 | } |
1074 | } | 1120 | } |
1075 | return munchify(buyers) | 1121 | return munchify(buyers) |
@@ -182,8 +182,10 @@ Get Broker Property By Username | @@ -182,8 +182,10 @@ Get Broker Property By Username | ||
182 | Run Keyword And Ignore Error Set To Dictionary ${artifact} tender_owner_access_token=${USERS.users['${tender_owner}'].access_token} | 182 | Run Keyword And Ignore Error Set To Dictionary ${artifact} tender_owner_access_token=${USERS.users['${tender_owner}'].access_token} |
183 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider_access_token=${USERS.users['${provider}'].access_token} | 183 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider_access_token=${USERS.users['${provider}'].access_token} |
184 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider1_access_token=${USERS.users['${provider1}'].access_token} | 184 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider1_access_token=${USERS.users['${provider1}'].access_token} |
185 | + Run Keyword And Ignore Error Set To Dictionary ${artifact} provider2_access_token=${USERS.users['${provider1}'].access_token} | ||
185 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider_bid_id=${USERS.users['${provider}'].bid_id} | 186 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider_bid_id=${USERS.users['${provider}'].bid_id} |
186 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider1_bid_id=${USERS.users['${provider1}'].bid_id} | 187 | Run Keyword And Ignore Error Set To Dictionary ${artifact} provider1_bid_id=${USERS.users['${provider1}'].bid_id} |
188 | + Run Keyword And Ignore Error Set To Dictionary ${artifact} provider2_bid_id=${USERS.users['${provider1}'].bid_id} | ||
187 | Run Keyword And Ignore Error Set To Dictionary ${artifact} | 189 | Run Keyword And Ignore Error Set To Dictionary ${artifact} |
188 | ... tender_file_properties=${USERS.users['${tender_owner}'].tender_document.file_properties} | 190 | ... tender_file_properties=${USERS.users['${tender_owner}'].tender_document.file_properties} |
189 | ... lot_file_properties=${USERS.users['${tender_owner}'].lots_documents[0].file_properties} | 191 | ... lot_file_properties=${USERS.users['${tender_owner}'].lots_documents[0].file_properties} |
@@ -21,6 +21,9 @@ ${VAT_INCLUDED} ${True} | @@ -21,6 +21,9 @@ ${VAT_INCLUDED} ${True} | ||
21 | ${ROAD_INDEX} ${False} | 21 | ${ROAD_INDEX} ${False} |
22 | ${GMDN_INDEX} ${False} | 22 | ${GMDN_INDEX} ${False} |
23 | ${PLAN_TENDER} ${True} | 23 | ${PLAN_TENDER} ${True} |
24 | +${BID_AMOUNT_1} ${500} | ||
25 | +${BID_AMOUNT_2} ${1000} | ||
26 | +${BID_AMOUNT_3} ${1500} | ||
24 | 27 | ||
25 | *** Test Cases *** | 28 | *** Test Cases *** |
26 | Можливість оголосити тендер | 29 | Можливість оголосити тендер |
@@ -2044,7 +2047,7 @@ ${PLAN_TENDER} ${True} | @@ -2044,7 +2047,7 @@ ${PLAN_TENDER} ${True} | ||
2044 | ... critical | 2047 | ... critical |
2045 | [Setup] Дочекатись дати початку прийому пропозицій ${provider} ${TENDER['TENDER_UAID']} | 2048 | [Setup] Дочекатись дати початку прийому пропозицій ${provider} ${TENDER['TENDER_UAID']} |
2046 | [Teardown] Оновити LAST_MODIFICATION_DATE | 2049 | [Teardown] Оновити LAST_MODIFICATION_DATE |
2047 | - Можливість подати цінову пропозицію на суму 500 користувачем ${provider} | 2050 | + Можливість подати цінову пропозицію на суму ${BID_AMOUNT_1} користувачем ${provider} |
2048 | 2051 | ||
2049 | 2052 | ||
2050 | Можливість зменшити пропозицію на 5% першим учасником | 2053 | Можливість зменшити пропозицію на 5% першим учасником |
@@ -2096,7 +2099,7 @@ ${PLAN_TENDER} ${True} | @@ -2096,7 +2099,7 @@ ${PLAN_TENDER} ${True} | ||
2096 | ... critical | 2099 | ... critical |
2097 | [Setup] Дочекатись дати початку прийому пропозицій ${provider} ${TENDER['TENDER_UAID']} | 2100 | [Setup] Дочекатись дати початку прийому пропозицій ${provider} ${TENDER['TENDER_UAID']} |
2098 | [Teardown] Оновити LAST_MODIFICATION_DATE | 2101 | [Teardown] Оновити LAST_MODIFICATION_DATE |
2099 | - Можливість подати цінову пропозицію на суму 1000 користувачем ${provider1} | 2102 | + Можливість подати цінову пропозицію на суму ${BID_AMOUNT_2} користувачем ${provider1} |
2100 | 2103 | ||
2101 | 2104 | ||
2102 | Можливість зменшити пропозицію на 5% другим учасником | 2105 | Можливість зменшити пропозицію на 5% другим учасником |
@@ -2127,7 +2130,7 @@ ${PLAN_TENDER} ${True} | @@ -2127,7 +2130,7 @@ ${PLAN_TENDER} ${True} | ||
2127 | ... critical | 2130 | ... critical |
2128 | [Setup] Дочекатись дати початку прийому пропозицій ${provider} ${TENDER['TENDER_UAID']} | 2131 | [Setup] Дочекатись дати початку прийому пропозицій ${provider} ${TENDER['TENDER_UAID']} |
2129 | [Teardown] Оновити LAST_MODIFICATION_DATE | 2132 | [Teardown] Оновити LAST_MODIFICATION_DATE |
2130 | - Можливість подати цінову пропозицію на суму 1500 користувачем ${provider2} | 2133 | + Можливість подати цінову пропозицію на суму ${BID_AMOUNT_3} користувачем ${provider2} |
2131 | 2134 | ||
2132 | ############################################################################################## | 2135 | ############################################################################################## |
2133 | # ABOVETRHESHOLD BIDDING | 2136 | # ABOVETRHESHOLD BIDDING |
@@ -228,7 +228,15 @@ ${award_index} ${0} | @@ -228,7 +228,15 @@ ${award_index} ${0} | ||
228 | Повідомлення в awards про невіповідність пропозиції 0 | 228 | Повідомлення в awards про невіповідність пропозиції 0 |
229 | 229 | ||
230 | 230 | ||
231 | -Можливість завантажити документ в пропозицію першим учасником | 231 | +Неможливість визначити переможця до завершення dueDate |
232 | + [Tags] ${USERS.users['${tender_owner}'].broker}: | ||
233 | + ... tender_owner | ||
234 | + ... ${USERS.users['${tender_owner}'].broker} | ||
235 | + ... qualification_approve_award_dueDate_error | ||
236 | + run keyword and expect error * Підтвердити постачальника ${tender_owner} ${TENDER['TENDER_UAID']} 0 | ||
237 | + | ||
238 | + | ||
239 | +Можливість завантажити документ в пропозицію учасником 24 години | ||
232 | [Tags] ${USERS.users['${provider}'].broker}: Подання пропозиції | 240 | [Tags] ${USERS.users['${provider}'].broker}: Подання пропозиції |
233 | ... provider | 241 | ... provider |
234 | ... ${USERS.users['${provider}'].broker} | 242 | ... ${USERS.users['${provider}'].broker} |
@@ -248,6 +256,26 @@ ${award_index} ${0} | @@ -248,6 +256,26 @@ ${award_index} ${0} | ||
248 | Можливість змінити документацію цінової пропозиції при усуненні невідповідності користувачем ${provider} | 256 | Можливість змінити документацію цінової пропозиції при усуненні невідповідності користувачем ${provider} |
249 | 257 | ||
250 | 258 | ||
259 | +Можливість завантажити документ в пропозицію учасником аномально низька ціна | ||
260 | + [Tags] ${USERS.users['${provider}'].broker}: Подання пропозиції | ||
261 | + ... provider | ||
262 | + ... ${USERS.users['${provider}'].broker} | ||
263 | + ... add_doc_to_bid_by_provider_alp_qualification | ||
264 | + ... critical | ||
265 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
266 | + Можливість завантажити обгрунтування аномально низької ціни до пропозиції учасником ${provider} documents evidence | ||
267 | + | ||
268 | + | ||
269 | +Можливість змінити документацію цінової пропозиції учасником аномально низька ціна | ||
270 | + [Tags] ${USERS.users['${provider}'].broker}: Подання пропозиції | ||
271 | + ... provider | ||
272 | + ... ${USERS.users['${provider}'].broker} | ||
273 | + ... change_doc_to_bid_by_provider_alp_qualification | ||
274 | + ... critical | ||
275 | + [Teardown] Оновити LAST_MODIFICATION_DATE | ||
276 | + Можливість змінити документацію обгрунтування аномально низької ціни користувачем ${provider} | ||
277 | + | ||
278 | + | ||
251 | Можливість дочекатися перевірки переможців по ЄДРПОУ | 279 | Можливість дочекатися перевірки переможців по ЄДРПОУ |
252 | [Tags] ${USERS.users['${tender_owner}'].broker}: Перевірка користувача по ЄДРПОУ | 280 | [Tags] ${USERS.users['${tender_owner}'].broker}: Перевірка користувача по ЄДРПОУ |
253 | ... tender_owner | 281 | ... tender_owner |
robot_tests_arguments/alp.txt
0 → 100644
1 | +-v MODE:openua | ||
2 | + | ||
3 | +-v NUMBER_OF_ITEMS:1 | ||
4 | +-v NUMBER_OF_LOTS:1 | ||
5 | + | ||
6 | +-v TENDER_MEAT:False | ||
7 | +-v ITEM_MEAT:False | ||
8 | +-v LOT_MEAT:False | ||
9 | + | ||
10 | +-i create_tender | ||
11 | +-i find_tender | ||
12 | + | ||
13 | +-i make_bid_fixed_amount_by_provider | ||
14 | +-i make_bid_fixed_amount_by_provider1 | ||
15 | +-i make_bid_fixed_amount_by_provider2 | ||
16 | + | ||
17 | +-i wait_active_qualification_start | ||
18 | +-i qualification_approve_award_dueDate_error | ||
19 | +-i add_doc_to_bid_by_provider_alp_qualification | ||
20 | +-i qualification_add_doc_to_first_award | ||
21 | +-i qualification_approve_first_award |
Please
register
or
login
to post a comment