Commit d0d521f32ffeb14c5ed34cdbe31d10e18be2b770

Authored by qa-user-1
1 parent 77f0adfa

add_all_vat_code

@@ -20,6 +20,7 @@ Resource resource.robot @@ -20,6 +20,7 @@ Resource resource.robot
20 ... item_meat=${${ITEM_MEAT}} 20 ... item_meat=${${ITEM_MEAT}}
21 ... api_host_url=${API_HOST_URL} 21 ... api_host_url=${API_HOST_URL}
22 ... moz_integration=${${MOZ_INTEGRATION}} 22 ... moz_integration=${${MOZ_INTEGRATION}}
  23 + ... vat_included=${${VAT_INCLUDED}}
23 ${DIALOGUE_TYPE}= Get Variable Value ${DIALOGUE_TYPE} 24 ${DIALOGUE_TYPE}= Get Variable Value ${DIALOGUE_TYPE}
24 ${FUNDING_KIND}= Get Variable Value ${FUNDING_KIND} 25 ${FUNDING_KIND}= Get Variable Value ${FUNDING_KIND}
25 Run keyword if '${DIALOGUE_TYPE}' != '${None}' Set to dictionary ${tender_parameters} dialogue_type=${DIALOGUE_TYPE} 26 Run keyword if '${DIALOGUE_TYPE}' != '${None}' Set to dictionary ${tender_parameters} dialogue_type=${DIALOGUE_TYPE}
@@ -6,8 +6,10 @@ Suite Teardown Test Suite Teardown @@ -6,8 +6,10 @@ Suite Teardown Test Suite Teardown
6 *** Variables *** 6 *** Variables ***
7 @{USED_ROLES} tender_owner viewer 7 @{USED_ROLES} tender_owner viewer
8 ${MOZ_INTEGRATION} ${False} 8 ${MOZ_INTEGRATION} ${False}
  9 +${VAT_INCLUDED} ${True}
9 ${NUMBER_OF_MILESTONES} ${0} 10 ${NUMBER_OF_MILESTONES} ${0}
10 11
  12 +
11 *** Test Cases *** 13 *** Test Cases ***
12 Можливість оголосити тендер 14 Можливість оголосити тендер
13 [Tags] ${USERS.users['${tender_owner}'].broker}: Оголошення тендера 15 [Tags] ${USERS.users['${tender_owner}'].broker}: Оголошення тендера
@@ -7,6 +7,7 @@ Suite Teardown Test Suite Teardown @@ -7,6 +7,7 @@ Suite Teardown Test Suite Teardown
7 ${MODE} belowThreshold 7 ${MODE} belowThreshold
8 @{USED_ROLES} tender_owner provider provider1 provider2 viewer 8 @{USED_ROLES} tender_owner provider provider1 provider2 viewer
9 ${MOZ_INTEGRATION} ${False} 9 ${MOZ_INTEGRATION} ${False}
  10 +${VAT_INCLUDED} ${True}
10 11
11 ${NUMBER_OF_ITEMS} ${1} 12 ${NUMBER_OF_ITEMS} ${1}
12 ${NUMBER_OF_LOTS} ${1} 13 ${NUMBER_OF_LOTS} ${1}
@@ -161,15 +161,28 @@ Suite Teardown Test Suite Teardown @@ -161,15 +161,28 @@ Suite Teardown Test Suite Teardown
161 Run As ${tender_owner} Редагувати поле договору ${CONTRACT_UAID} title ${title} 161 Run As ${tender_owner} Редагувати поле договору ${CONTRACT_UAID} title ${title}
162 162
163 163
  164 +Можливість редагувати вартість договору без ПДВ
  165 + ${tender_owner_data}= Get From Dictionary ${USERS.users} ${tender_owner}
  166 + [Tags] ${tender_owner_data.broker}: Редагування договору
  167 + ... tender_owner
  168 + ... ${tender_owner_data.broker}
  169 + ... modify_contract
  170 + [Teardown] Оновити LAST_MODIFICATION_DATE
  171 + ${amount_net}= create_fake_amount_net ${tender_owner_data.contract_data.data.value.amount}
  172 + Set to dictionary ${tender_owner_data} new_amount_net=${amount_net}
  173 + Run As ${tender_owner} Редагувати поле договору ${CONTRACT_UAID} value.amountNet ${amount_net}
  174 +
  175 +
164 Можливість редагувати вартість договору 176 Можливість редагувати вартість договору
165 - [Tags] ${USERS.users['${tender_owner}'].broker}: Редагування договору 177 + ${tender_owner_data}= Get From Dictionary ${USERS.users} ${tender_owner}
  178 + [Tags] ${tender_owner_data.broker}: Редагування договору
166 ... tender_owner 179 ... tender_owner
167 - ... ${USERS.users['${tender_owner}'].broker} 180 + ... ${tender_owner_data.broker}
168 ... modify_contract 181 ... modify_contract
169 [Teardown] Оновити LAST_MODIFICATION_DATE 182 [Teardown] Оновити LAST_MODIFICATION_DATE
170 - ${value.amount}= create_fake_value_amount  
171 - Set to dictionary ${USERS.users['${tender_owner}']} new_amount=${value.amount}  
172 - Run As ${tender_owner} Редагувати поле договору ${CONTRACT_UAID} value.amount ${value.amount} 183 + ${amount}= create_fake_amount ${tender_owner_data.contract_data.data.value.amount}
  184 + Set to dictionary ${tender_owner_data} new_amount=${amount}
  185 + Run As ${tender_owner} Редагувати поле договору ${CONTRACT_UAID} value.amount ${amount}
173 186
174 187
175 Можливість редагувати дату завершення дії договору 188 Можливість редагувати дату завершення дії договору
@@ -245,15 +258,31 @@ Suite Teardown Test Suite Teardown @@ -245,15 +258,31 @@ Suite Teardown Test Suite Teardown
245 ... title 258 ... title
246 259
247 260
  261 +Відображення відредагованої вартості договору без ПДВ
  262 + ${tender_owner_data}= Get From Dictionary ${USERS.users} ${tender_owner}
  263 + ${viewer_data}= Get From Dictionary ${USERS.users} ${viewer}
  264 + [Tags] ${viewer_data.broker}: Редагування договору
  265 + ... viewer
  266 + ... ${viewer_data.broker}
  267 + ... modify_contract
  268 + Звірити поле договору із значенням
  269 + ... ${viewer}
  270 + ... ${CONTRACT_UAID}
  271 + ... ${tender_owner_data.new_amount_net}
  272 + ... value.amountNet
  273 +
  274 +
248 Відображення відредагованої вартості договору 275 Відображення відредагованої вартості договору
249 - [Tags] ${USERS.users['${viewer}'].broker}: Редагування договору 276 + ${tender_owner_data}= Get From Dictionary ${USERS.users} ${tender_owner}
  277 + ${viewer_data}= Get From Dictionary ${USERS.users} ${viewer}
  278 + [Tags] ${viewer_data.broker}: Редагування договору
250 ... viewer 279 ... viewer
251 - ... ${USERS.users['${viewer}'].broker} 280 + ... ${viewer_data.broker}
252 ... modify_contract 281 ... modify_contract
253 Звірити поле договору із значенням 282 Звірити поле договору із значенням
254 ... ${viewer} 283 ... ${viewer}
255 ... ${CONTRACT_UAID} 284 ... ${CONTRACT_UAID}
256 - ... ${USERS.users['${tender_owner}'].new_amount} 285 + ... ${tender_owner_data.new_amount}
257 ... value.amount 286 ... value.amount
258 287
259 288
@@ -44,43 +44,145 @@ Suite Teardown Test Suite Teardown @@ -44,43 +44,145 @@ Suite Teardown Test Suite Teardown
44 Дочекатись дати ${standstillEnd} 44 Дочекатись дати ${standstillEnd}
45 45
46 46
47 -Відображення вартості угоди  
48 - [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних угоди 47 +Відображення вартості угоди без урахування ПДВ
  48 + ${viewer_data}= Get From Dictionary ${USERS.users} ${viewer}
  49 + ${tender_owner_data}= Get From Dictionary ${USERS.users} ${tender_owner}
  50 + [Tags] ${viewer_data.broker}: Відображення основних даних угоди
49 ... viewer 51 ... viewer
50 - ... ${USERS.users['${viewer}'].broker} 52 + ... ${viewer_data.broker}
51 ... contract_view 53 ... contract_view
52 ... non-critical 54 ... non-critical
53 [Setup] Дочекатись синхронізації з майданчиком ${viewer} 55 [Setup] Дочекатись синхронізації з майданчиком ${viewer}
54 ${award_index}= Отримати останній індекс awards ${tender_owner} ${viewer} 56 ${award_index}= Отримати останній індекс awards ${tender_owner} ${viewer}
55 - Отримати дані із поля awards[${award_index}].value.amount тендера для користувача ${viewer} 57 + ${award}= Get From List ${viewer_data.tender_data.data.awards} ${award_index}
  58 + ${award_amount}= Get From Dictionary ${award.value} amount
  59 + ${contract_index}= Отримати останній індекс contracts ${tender_owner} ${viewer}
  60 + ${amount_net_field}= Set Variable contracts[${contract_index}].value.amountNet
  61 + Звірити відображення поля ${amount_net_field} тендера із ${award_amount} для користувача ${viewer}
  62 +
  63 +
  64 +Можливість редагувати вартість угоди без урахування ПДВ
  65 + ${viewer_data}= Get From Dictionary ${USERS.users} ${viewer}
  66 + ${tender_owner_data}= Get From Dictionary ${USERS.users} ${tender_owner}
  67 + [Tags] ${tender_owner_data.broker}: Редагування угоди
  68 + ... tender_owner
  69 + ... ${tender_owner_data.broker}
  70 + ... modify_contract
  71 + ... critical
  72 + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner}
  73 + [Teardown] Оновити LAST_MODIFICATION_DATE
  74 + ${award}= Отримати останній элемент awards ${tender_owner} ${viewer}
  75 + ${amount_net}= create_fake_amount_net ${award.value.amount} ${award.value.valueAddedTaxIncluded}
  76 + ${contract_index}= Отримати останній індекс contracts ${tender_owner} ${viewer}
  77 + Set to dictionary ${tender_owner_data} new_amount_net=${amount_net}
  78 + Run As ${tender_owner} Редагувати угоду
  79 + ... ${TENDER['TENDER_UAID']}
  80 + ... ${contract_index}
  81 + ... value.amountNet
  82 + ... ${amount_net}
  83 +
  84 +
  85 +Відображення відредагованої вартості угоди без урахування ПДВ
  86 + ${viewer_data}= Get From Dictionary ${USERS.users} ${viewer}
  87 + ${tender_owner_data}= Get From Dictionary ${USERS.users} ${tender_owner}
  88 + [Tags] ${viewer_data.broker}: Відображення основних даних угоди
  89 + ... viewer
  90 + ... ${viewer_data.broker}
  91 + ... contract_view
  92 + ... non-critical
  93 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  94 + ${amount_net}= Get Variable Value ${tender_owner_data.new_amount_net}
  95 + ${contract_index}= Отримати останній індекс contracts ${tender_owner} ${viewer}
  96 + ${amount_net_field}= Set Variable contracts[${contract_index}].value.amountNet
  97 + Звірити відображення поля ${amount_net_field} тендера із ${amount_net} для користувача ${viewer}
  98 +
  99 +
  100 +Відображення вартості угоди
  101 + ${viewer_data}= Get From Dictionary ${USERS.users} ${viewer}
  102 + [Tags] ${viewer_data.broker}: Відображення основних даних угоди
  103 + ... viewer
  104 + ... ${viewer_data.broker}
  105 + ... contract_view
  106 + ... non-critical
  107 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  108 + ${contract_index}= Отримати останній індекс contracts ${tender_owner} ${viewer}
  109 + ${amount_field}= Set Variable contracts[${contract_index}].value.amount
  110 + Отримати дані із поля ${amount_field} тендера для користувача ${viewer}
56 111
57 112
58 Можливість редагувати вартість угоди 113 Можливість редагувати вартість угоди
59 - [Tags] ${USERS.users['${tender_owner}'].broker}: Редагування угоди 114 + ${viewer_data}= Get From Dictionary ${USERS.users} ${viewer}
  115 + ${tender_owner_data}= Get From Dictionary ${USERS.users} ${tender_owner}
  116 + [Tags] ${tender_owner_data.broker}: Редагування угоди
60 ... tender_owner 117 ... tender_owner
61 - ... ${USERS.users['${tender_owner}'].broker} 118 + ... ${tender_owner_data.broker}
62 ... modify_contract_value 119 ... modify_contract_value
63 ... critical 120 ... critical
64 [Setup] Дочекатись синхронізації з майданчиком ${tender_owner} 121 [Setup] Дочекатись синхронізації з майданчиком ${tender_owner}
65 [Teardown] Оновити LAST_MODIFICATION_DATE 122 [Teardown] Оновити LAST_MODIFICATION_DATE
66 - ${award_index}= Отримати останній індекс awards ${tender_owner} ${viewer} 123 + ${award}= Отримати останній элемент awards ${tender_owner} ${viewer}
  124 + ${amount}= create_fake_amount ${award.value.amount} ${award.value.valueAddedTaxIncluded}
67 ${contract_index}= Отримати останній індекс contracts ${tender_owner} ${viewer} 125 ${contract_index}= Отримати останній індекс contracts ${tender_owner} ${viewer}
68 - ${award_amount}= Get From Dictionary ${USERS.users['${viewer}'].tender_data.data.awards[${award_index}].value} amount  
69 - ${amount}= create_fake_amount ${award_amount}  
70 - Set to dictionary ${USERS.users['${tender_owner}']} new_amount=${amount}  
71 - Run As ${tender_owner} Редагувати угоду ${TENDER['TENDER_UAID']} ${contract_index} value.amount ${amount} 126 + Set to dictionary ${tender_owner_data} new_amount=${amount}
  127 + Run As ${tender_owner} Редагувати угоду
  128 + ... ${TENDER['TENDER_UAID']}
  129 + ... ${contract_index}
  130 + ... value.amount
  131 + ... ${amount}
72 132
73 133
74 Відображення відредагованої вартості угоди 134 Відображення відредагованої вартості угоди
75 - [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних угоди 135 + ${viewer_data}= Get From Dictionary ${USERS.users} ${viewer}
  136 + ${tender_owner_data}= Get From Dictionary ${USERS.users} ${tender_owner}
  137 + [Tags] ${viewer_data.broker}: Відображення основних даних угоди
76 ... viewer 138 ... viewer
77 - ... ${USERS.users['${viewer}'].broker} 139 + ... ${viewer_data.broker}
78 ... modify_contract_value 140 ... modify_contract_value
79 ... non-critical 141 ... non-critical
80 [Setup] Дочекатись синхронізації з майданчиком ${viewer} 142 [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  143 + ${amount}= Get Variable Value ${tender_owner_data.new_amount}
  144 + ${contract_index}= Отримати останній індекс contracts ${tender_owner} ${viewer}
  145 + ${amount_field}= Set Variable contracts[${contract_index}].value.amount
  146 + Звірити відображення поля ${amount_field} тендера із ${amount} для користувача ${viewer}
  147 +
  148 +
  149 +Неможливість встановити вартість угоди без ПДВ більше ніж вартість угоди
  150 + ${viewer_data}= Get From Dictionary ${USERS.users} ${viewer}
  151 + ${tender_owner_data}= Get From Dictionary ${USERS.users} ${tender_owner}
  152 + [Tags] ${tender_owner_data.broker}: Редагування угоди
  153 + ... tender_owner
  154 + ... ${tender_owner_data.broker}
  155 + ... modify_contract
  156 + ... critical
  157 + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner}
  158 + ${award}= Отримати останній элемент awards ${tender_owner} ${viewer}
  159 + ${contract_index}= Отримати останній індекс contracts ${tender_owner} ${viewer}
  160 + ${amount_net}= Evaluate ${award.value.amount} * 2
  161 + ${value}= Require Failure ${tender_owner} Редагувати угоду
  162 + ... ${TENDER['TENDER_UAID']}
  163 + ... ${contract_index}
  164 + ... value.amountNet
  165 + ... ${amount_net}
  166 + Should Contain ${value} Value amountNet should be less or equal to amount
  167 +
  168 +
  169 +Неможливість встановити вартість угоди без ПДВ нижче ніж вартість угоди більше ніж на 20 відсотків
  170 + ${viewer_data}= Get From Dictionary ${USERS.users} ${viewer}
  171 + ${tender_owner_data}= Get From Dictionary ${USERS.users} ${tender_owner}
  172 + [Tags] ${tender_owner_data.broker}: Редагування угоди
  173 + ... tender_owner
  174 + ... ${tender_owner_data.broker}
  175 + ... modify_contract
  176 + ... critical
  177 + [Setup] Дочекатись синхронізації з майданчиком ${tender_owner}
  178 + ${award}= Отримати останній элемент awards ${tender_owner} ${viewer}
81 ${contract_index}= Отримати останній індекс contracts ${tender_owner} ${viewer} 179 ${contract_index}= Отримати останній індекс contracts ${tender_owner} ${viewer}
82 - Run Keyword And Ignore Error Remove From Dictionary ${USERS.users['${viewer}'].tender_data.data.contracts[${contract_index}].value} amount  
83 - Звірити відображення поля contracts[${contract_index}].value.amount тендера із ${USERS.users['${tender_owner}'].new_amount} для користувача ${viewer} 180 + ${value}= Require Failure ${tender_owner} Редагувати угоду
  181 + ... ${TENDER['TENDER_UAID']}
  182 + ... ${contract_index}
  183 + ... value.amountNet
  184 + ... 0
  185 + Should Contain ${value} for 20.0%
84 186
85 187
86 Можливість встановити дату підписання угоди 188 Можливість встановити дату підписання угоди
@@ -44,8 +44,25 @@ def get_fake_funder_scheme(): @@ -44,8 +44,25 @@ def get_fake_funder_scheme():
44 return fake.funder_scheme() 44 return fake.funder_scheme()
45 45
46 46
47 -def create_fake_amount(award_amount):  
48 - return round(random.uniform(1, award_amount), 2) 47 +def create_fake_amount(award_amount, value_added_tax_included=False):
  48 + min_amount_net = award_amount - award_amount * 0.2
  49 + range_amount_net = award_amount - min_amount_net
  50 + half_min_amount_net = min_amount_net + range_amount_net / 2
  51 + half_max_amount_net = half_min_amount_net + range_amount_net
  52 + if value_added_tax_included:
  53 + return round(random.uniform(half_min_amount_net, award_amount), 2)
  54 + else:
  55 + return round(random.uniform(award_amount, half_max_amount_net), 2)
  56 +
  57 +
  58 +def create_fake_amount_net(award_amount, value_added_tax_included=False):
  59 + min_amount_net = award_amount - award_amount * 0.2
  60 + range_amount_net = award_amount - min_amount_net
  61 + half_min_amount_net = min_amount_net + range_amount_net / 2
  62 + if value_added_tax_included:
  63 + return round(random.uniform(min_amount_net, half_min_amount_net), 2)
  64 + else:
  65 + return round(random.uniform(half_min_amount_net, award_amount), 2)
49 66
50 67
51 def create_fake_number(min_number, max_number): 68 def create_fake_number(min_number, max_number):
@@ -135,6 +152,7 @@ def test_tender_data(params, @@ -135,6 +152,7 @@ def test_tender_data(params,
135 if submissionMethodDetails else "quick" 152 if submissionMethodDetails else "quick"
136 now = get_now() 153 now = get_now()
137 value_amount = round(random.uniform(3000, 99999999.99), 2) # max value equals to budget of Ukraine in hryvnias 154 value_amount = round(random.uniform(3000, 99999999.99), 2) # max value equals to budget of Ukraine in hryvnias
  155 + vat_included = params.get('vat_included', True)
138 data = { 156 data = {
139 "mode": "test", 157 "mode": "test",
140 "submissionMethodDetails": submissionMethodDetails, 158 "submissionMethodDetails": submissionMethodDetails,
@@ -149,11 +167,12 @@ def test_tender_data(params, @@ -149,11 +167,12 @@ def test_tender_data(params,
149 "value": { 167 "value": {
150 "amount": value_amount, 168 "amount": value_amount,
151 "currency": u"UAH", 169 "currency": u"UAH",
152 - "valueAddedTaxIncluded": True 170 + "valueAddedTaxIncluded": vat_included
153 }, 171 },
154 "minimalStep": { 172 "minimalStep": {
155 "amount": round(random.uniform(0.005, 0.03) * value_amount, 2), 173 "amount": round(random.uniform(0.005, 0.03) * value_amount, 2),
156 - "currency": u"UAH" 174 + "currency": u"UAH",
  175 + "valueAddedTaxIncluded": vat_included
157 }, 176 },
158 "items": [], 177 "items": [],
159 "features": [] 178 "features": []
@@ -183,7 +202,7 @@ def test_tender_data(params, @@ -183,7 +202,7 @@ def test_tender_data(params,
183 data['lots'] = [] 202 data['lots'] = []
184 for lot_number in range(params['number_of_lots']): 203 for lot_number in range(params['number_of_lots']):
185 lot_id = uuid4().hex 204 lot_id = uuid4().hex
186 - new_lot = test_lot_data(data['value']['amount']) 205 + new_lot = test_lot_data(data['value']['amount'], vat_included)
187 data['lots'].append(new_lot) 206 data['lots'].append(new_lot)
188 data['lots'][lot_number]['id'] = lot_id 207 data['lots'][lot_number]['id'] = lot_id
189 for i in range(params['number_of_items']): 208 for i in range(params['number_of_items']):
@@ -462,12 +481,12 @@ def test_bid_data(): @@ -462,12 +481,12 @@ def test_bid_data():
462 return bid 481 return bid
463 482
464 483
465 -def test_bid_value(max_value_amount): 484 +def test_bid_value(max_value_amount, vat_included):
466 return munchify({ 485 return munchify({
467 "value": { 486 "value": {
468 "currency": "UAH", 487 "currency": "UAH",
469 "amount": round(random.uniform((0.95 * max_value_amount), max_value_amount), 2), 488 "amount": round(random.uniform((0.95 * max_value_amount), max_value_amount), 2),
470 - "valueAddedTaxIncluded": True 489 + "valueAddedTaxIncluded": vat_included
471 } 490 }
472 }) 491 })
473 492
@@ -564,7 +583,7 @@ def test_invalid_features_data(): @@ -564,7 +583,7 @@ def test_invalid_features_data():
564 ] 583 ]
565 584
566 585
567 -def test_lot_data(max_value_amount): 586 +def test_lot_data(max_value_amount, vat_included=True):
568 value_amount = round(random.uniform(1, max_value_amount), 2) 587 value_amount = round(random.uniform(1, max_value_amount), 2)
569 return munchify( 588 return munchify(
570 { 589 {
@@ -575,12 +594,12 @@ def test_lot_data(max_value_amount): @@ -575,12 +594,12 @@ def test_lot_data(max_value_amount):
575 "value": { 594 "value": {
576 "currency": "UAH", 595 "currency": "UAH",
577 "amount": value_amount, 596 "amount": value_amount,
578 - "valueAddedTaxIncluded": True 597 + "valueAddedTaxIncluded": vat_included
579 }, 598 },
580 "minimalStep": { 599 "minimalStep": {
581 "currency": "UAH", 600 "currency": "UAH",
582 "amount": round(random.uniform(0.005, 0.03) * value_amount, 2), 601 "amount": round(random.uniform(0.005, 0.03) * value_amount, 2),
583 - "valueAddedTaxIncluded": True 602 + "valueAddedTaxIncluded": vat_included
584 }, 603 },
585 "status": "active" 604 "status": "active"
586 }) 605 })
@@ -1189,19 +1189,39 @@ Require Failure @@ -1189,19 +1189,39 @@ Require Failure
1189 Run Keyword If '${status}' == 'PASS' Set To Dictionary ${MONITORING} DASU_LAST_MODIFICATION_DATE=${LAST_MODIFICATION_DATE} 1189 Run Keyword If '${status}' == 'PASS' Set To Dictionary ${MONITORING} DASU_LAST_MODIFICATION_DATE=${LAST_MODIFICATION_DATE}
1190 1190
1191 1191
1192 -Отримати останній індекс  
1193 - [Arguments] ${object} @{username}  
1194 - :FOR ${role} IN @{username} 1192 +Отримати користувача з доступом до поля за пріорітетом
  1193 + [Arguments] ${field} @{usernames}
  1194 + :FOR ${username} IN @{usernames}
  1195 + \ ${user_data}= Get From Dictionary ${USERS.users} ${username}
1195 \ ${status} ${field_value}= Run Keyword And Ignore Error 1196 \ ${status} ${field_value}= Run Keyword And Ignore Error
1196 ... get_from_object 1197 ... get_from_object
1197 - ... ${USERS.users['${role}'].tender_data.data}  
1198 - ... ${object} 1198 + ... ${user_data.tender_data.data}
  1199 + ... ${field}
1199 \ Run Keyword If '${status}' == 'PASS' Exit For Loop 1200 \ Run Keyword If '${status}' == 'PASS' Exit For Loop
1200 - ${len_of_object}= Run Keyword If '${status}' == 'PASS' Get Length ${USERS.users['${role}'].tender_data.data.${object}}  
1201 - ${index}= Run Keyword If '${status}' == 'PASS' subtraction ${len_of_object} 1 1201 + Run Keyword If '${status}' == 'FAIL' Fail ${object} not found for usernames @{usernames}
  1202 + [Return] ${username}
  1203 +
  1204 +
  1205 +Отримати останній індекс
  1206 + [Arguments] ${field} @{usernames}
  1207 + ${username}= Отримати користувача з доступом до поля за пріорітетом ${field} @{usernames}
  1208 + ${user_data}= Get From Dictionary ${USERS.users} ${username}
  1209 + ${object}= Get From Dictionary ${user_data.tender_data.data} ${field}
  1210 + ${len}= Get Length ${object}
  1211 + ${index}= Evaluate ${len} - 1
1202 [Return] ${index} 1212 [Return] ${index}
1203 1213
1204 1214
  1215 +Отримати останній элемент
  1216 + [Arguments] ${field} @{usernames}
  1217 + ${username}= Отримати користувача з доступом до поля за пріорітетом ${field} @{usernames}
  1218 + ${index}= Отримати останній індекс ${field} @{usernames}
  1219 + ${user_data}= Get From Dictionary ${USERS.users} ${username}
  1220 + ${object}= Get From Dictionary ${user_data.tender_data.data} ${field}
  1221 + ${item}= Get From List ${object} ${index}
  1222 + [Return] ${item}
  1223 +
  1224 +
1205 Розрахувати ціну для ${contract_number} контракту 1225 Розрахувати ціну для ${contract_number} контракту
1206 ${contract_data}= Create Dictionary data=${USERS.users['${tender_owner}'].tender_data.data.agreements[0].contracts[${contract_number}]} 1226 ${contract_data}= Create Dictionary data=${USERS.users['${tender_owner}'].tender_data.data.agreements[0].contracts[${contract_number}]}
1207 ${quantity}= Set Variable ${0} 1227 ${quantity}= Set Variable ${0}
@@ -16,6 +16,7 @@ ${TENDER_MEAT} ${True} @@ -16,6 +16,7 @@ ${TENDER_MEAT} ${True}
16 ${LOT_MEAT} ${True} 16 ${LOT_MEAT} ${True}
17 ${ITEM_MEAT} ${True} 17 ${ITEM_MEAT} ${True}
18 ${MOZ_INTEGRATION} ${False} 18 ${MOZ_INTEGRATION} ${False}
  19 +${VAT_INCLUDED} ${True}
19 20
20 *** Test Cases *** 21 *** Test Cases ***
21 Можливість оголосити тендер 22 Можливість оголосити тендер
@@ -15,6 +15,7 @@ ${TENDER_MEAT} ${False} @@ -15,6 +15,7 @@ ${TENDER_MEAT} ${False}
15 ${LOT_MEAT} ${False} 15 ${LOT_MEAT} ${False}
16 ${ITEM_MEAT} ${False} 16 ${ITEM_MEAT} ${False}
17 ${MOZ_INTEGRATION} ${False} 17 ${MOZ_INTEGRATION} ${False}
  18 +${VAT_INCLUDED} ${True}
18 19
19 *** Test Cases *** 20 *** Test Cases ***
20 ############################################################################################## 21 ##############################################################################################
@@ -15,6 +15,7 @@ ${TENDER_MEAT} ${False} @@ -15,6 +15,7 @@ ${TENDER_MEAT} ${False}
15 ${LOT_MEAT} ${False} 15 ${LOT_MEAT} ${False}
16 ${ITEM_MEAT} ${False} 16 ${ITEM_MEAT} ${False}
17 ${MOZ_INTEGRATION} ${False} 17 ${MOZ_INTEGRATION} ${False}
  18 +${VAT_INCLUDED} ${True}
18 19
19 *** Test Cases *** 20 *** Test Cases ***
20 ############################################################################################## 21 ##############################################################################################
@@ -17,6 +17,7 @@ ${TENDER_MEAT} ${True} @@ -17,6 +17,7 @@ ${TENDER_MEAT} ${True}
17 ${LOT_MEAT} ${True} 17 ${LOT_MEAT} ${True}
18 ${ITEM_MEAT} ${True} 18 ${ITEM_MEAT} ${True}
19 ${MOZ_INTEGRATION} ${False} 19 ${MOZ_INTEGRATION} ${False}
  20 +${VAT_INCLUDED} ${True}
20 21
21 *** Test Cases *** 22 *** Test Cases ***
22 Можливість оголосити тендер 23 Можливість оголосити тендер
@@ -15,6 +15,7 @@ ${TENDER_MEAT} ${False} @@ -15,6 +15,7 @@ ${TENDER_MEAT} ${False}
15 ${LOT_MEAT} ${False} 15 ${LOT_MEAT} ${False}
16 ${ITEM_MEAT} ${False} 16 ${ITEM_MEAT} ${False}
17 ${MOZ_INTEGRATION} ${False} 17 ${MOZ_INTEGRATION} ${False}
  18 +${VAT_INCLUDED} ${True}
18 19
19 *** Test Cases *** 20 *** Test Cases ***
20 ############################################################################################## 21 ##############################################################################################
@@ -20,6 +20,7 @@ from .initial_data import ( @@ -20,6 +20,7 @@ from .initial_data import (
20 create_fake_doc, 20 create_fake_doc,
21 create_fake_sentence, 21 create_fake_sentence,
22 create_fake_amount, 22 create_fake_amount,
  23 + create_fake_amount_net,
23 create_fake_number, 24 create_fake_number,
24 create_fake_number_float, 25 create_fake_number_float,
25 create_fake_date, 26 create_fake_date,
@@ -626,7 +627,7 @@ def generate_test_bid_data(tender_data): @@ -626,7 +627,7 @@ def generate_test_bid_data(tender_data):
626 if tender_data.get('procurementMethodType', '') == 'esco': 627 if tender_data.get('procurementMethodType', '') == 'esco':
627 value = test_bid_value_esco(tender_data) 628 value = test_bid_value_esco(tender_data)
628 else: 629 else:
629 - value = test_bid_value(lot['value']['amount']) 630 + value = test_bid_value(lot['value']['amount'], lot['value']['valueAddedTaxIncluded'])
630 value['relatedLot'] = lot.get('id', '') 631 value['relatedLot'] = lot.get('id', '')
631 bid.data.lotValues.append(value) 632 bid.data.lotValues.append(value)
632 else: 633 else:
@@ -634,7 +635,7 @@ def generate_test_bid_data(tender_data): @@ -634,7 +635,7 @@ def generate_test_bid_data(tender_data):
634 value = test_bid_value(tender_data) 635 value = test_bid_value(tender_data)
635 bid.data.update(value) 636 bid.data.update(value)
636 else: 637 else:
637 - bid.data.update(test_bid_value(tender_data['value']['amount'])) 638 + bid.data.update(test_bid_value(tender_data['value']['amount'], tender_data['value']['valueAddedTaxIncluded']))
638 if 'features' in tender_data: 639 if 'features' in tender_data:
639 bid.data.parameters = [] 640 bid.data.parameters = []
640 for feature in tender_data['features']: 641 for feature in tender_data['features']:
  1 +-v MODE:belowThreshold
  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 +-v VAT_INCLUDED: False
  11 +
  12 +
  13 +-i create_tender
  14 +-i find_tender
  15 +-i tender_view
  16 +-i tender_view_unit_code
  17 +-i tender_view_coordinates
  18 +-i lot_view
  19 +
  20 +-i make_bid_by_provider
  21 +-i make_bid_by_provider1
  22 +-i modify_bid_by_provider1
  23 +
  24 +-i auction
  25 +
  26 +-i qualification_approve_first_award
  27 +
  28 +-i contract_view
  29 +-i modify_contract
  30 +-i add_doc_to_contract
  31 +-i contract_sign
Please register or login to post a comment