Commit dba4059307f564aece356c8bac8022134b660754

Authored by kosaniak
Committed by GitHub
2 parents 4f9a8dd7 6cc0bce6

Merge pull request #275 from kosaniak/auction

Auction
1   -*** Settings ***
2   -Resource keywords.robot
3   -Resource resource.robot
4   -Suite Setup Test Suite Setup
5   -Suite Teardown Test Suite Teardown
6   -
7   -
8   -*** Variables ***
9   -@{USED_ROLES} viewer
10   -
11   -
12   -*** Test Cases ***
13   -Можливість знайти закупівлю по ідентифікатору
14   - [Tags] ${USERS.users['${viewer}'].broker}: Пошук тендера
15   - ... ${USERS.users['${viewer}'].broker}
16   - ... find_tender level1
17   - Завантажити дані про тендер
18   - Run As ${viewer} Пошук тендера по ідентифікатору ${TENDER['TENDER_UAID']}
19   -
20   -##############################################################################################
21   -# AUCTION
22   -##############################################################################################
23   -
24   -Відображення дати початку аукціону
25   - [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних аукціону
26   - ... viewer
27   - ... ${USERS.users['${viewer}'].broker}
28   - ... tender_view level2
29   - [Setup] Дочекатись дати закінчення прийому пропозицій ${viewer} ${TENDER['TENDER_UAID']}
30   - Дочекатись дати початку періоду аукціону ${viewer} ${TENDER['TENDER_UAID']}
31   - Отримати дані із тендера ${viewer} ${TENDER['TENDER_UAID']} auctionPeriod.startDate ${TENDER['LOT_ID']}
32   -
33   -
34   -Можливість дочекатися початку аукціону
35   - [Tags] ${USERS.users['${viewer}'].broker}: Процес аукціону
36   - ... viewer
37   - ... ${USERS.users['${viewer}'].broker}
38   - ... auction
39   - Дочекатись дати початку аукціону ${viewer}
40   -
41   -
42   -Можливість вичитати посилання на аукціон для глядача
43   - [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних аукціону
44   - ... viewer
45   - ... ${USERS.users['${viewer}'].broker}
46   - ... auction level1
47   - Можливість вичитати посилання на аукціон для ${viewer}
48   -
49   -
50   -Можливість дочекатися завершення аукціону
51   - [Tags] ${USERS.users['${viewer}'].broker}: Процес аукціону
52   - ... viewer
53   - ... ${USERS.users['${viewer}'].broker}
54   - ... auction
55   - [Teardown] Оновити LAST_MODIFICATION_DATE
56   - Дочекатись дати закінчення аукціону користувачем ${viewer}
57   -
58   -
59   -Відображення дати завершення аукціону
60   - [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних аукціону
61   - ... viewer
62   - ... ${USERS.users['${viewer}'].broker}
63   - ... tender_view
64   - [Setup] Дочекатись синхронізації з майданчиком ${viewer}
65   - Отримати дані із тендера ${viewer} ${TENDER['TENDER_UAID']} auctionPeriod.endDate ${TENDER['LOT_ID']}
66   -
67   -
68   -*** Keywords ***
69   -Дочекатись дати початку аукціону
70   - [Arguments] ${username}
71   - # Can't use that dirty hack here since we don't know
72   - # the date of auction when creating the procurement :)
73   - ${auctionStart}= Отримати дані із тендера ${username} ${TENDER['TENDER_UAID']} auctionPeriod.startDate ${TENDER['LOT_ID']}
74   - Дочекатись дати ${auctionStart}
75   - Оновити LAST_MODIFICATION_DATE
76   - Дочекатись синхронізації з майданчиком ${username}
77   -
78   -
79   -Можливість вичитати посилання на аукціон для ${username}
80   - ${url}= Run As ${username} Отримати посилання на аукціон для глядача ${TENDER['TENDER_UAID']} ${TENDER['LOT_ID']}
81   - Should Be True '${url}'
82   - Should Match Regexp ${url} ^https?:\/\/auction(?:-sandbox)?\.openprocurement\.org\/tenders\/([0-9A-Fa-f]{32})
83   - Log URL аукціону для глядача: ${url}
84   -
85   -
86   -Відкрити сторінку аукціону для ${username}
87   - ${url}= Run as ${username} Отримати посилання на аукціон для глядача ${TENDER['TENDER_UAID']} ${TENDER['LOT_ID']}
88   - Open browser ${url} ${USERS.users['${username}'].browser}
89   -
90   -
91   -Дочекатись дати закінчення аукціону користувачем ${username}
92   - Відкрити сторінку аукціону для ${username}
93   - ${status} ${_}= Run Keyword And Ignore Error Wait Until Keyword Succeeds 61 times 30 s Page should contain Аукціон завершився
94   - Run Keyword If '${status}' == 'FAIL'
95   - ... Run Keywords
96   - ... Отримати дані із тендера ${username} ${TENDER['TENDER_UAID']} auctionPeriod.startDate ${TENDER['LOT_ID']}
97   - ... AND
98   - ... Дочекатись дати початку аукціону ${username}
99   - ... AND
100   - ... Дочекатись дати закінчення аукціону користувачем ${username}
101   - ... ELSE
102   - ... Run Keywords
103   - ... Wait Until Keyword Succeeds 5 times 30 s Page should not contain очікуємо розкриття учасників
104   - ... AND
105   - ... Close browser
  1 +*** Settings ***
  2 +Resource keywords.robot
  3 +Resource resource.robot
  4 +Suite Setup Test Suite Setup
  5 +Suite Teardown Test Suite Teardown
  6 +Library Selenium2Library
  7 +
  8 +*** Variables ***
  9 +@{USED_ROLES} viewer provider provider1
  10 +
  11 +
  12 +*** Test Cases ***
  13 +Можливість знайти закупівлю по ідентифікатору
  14 + [Tags] ${USERS.users['${viewer}'].broker}: Пошук тендера
  15 + ... ${USERS.users['${viewer}'].broker}
  16 + ... find_tender
  17 + Завантажити дані про тендер
  18 + Run As ${viewer} Пошук тендера по ідентифікатору ${TENDER['TENDER_UAID']}
  19 +
  20 +##############################################################################################
  21 +# AUCTION
  22 +##############################################################################################
  23 +
  24 +Відображення дати початку аукціону
  25 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних аукціону
  26 + ... viewer
  27 + ... ${USERS.users['${viewer}'].broker}
  28 + ... tender_view
  29 + [Setup] Дочекатись дати закінчення прийому пропозицій ${viewer} ${TENDER['TENDER_UAID']}
  30 + Дочекатись дати початку періоду аукціону ${viewer} ${TENDER['TENDER_UAID']}
  31 + Отримати дані із тендера ${viewer} ${TENDER['TENDER_UAID']} auctionPeriod.startDate ${TENDER['LOT_ID']}
  32 +
  33 +
  34 +Можливість дочекатися початку аукціону
  35 + [Tags] ${USERS.users['${viewer}'].broker}: Процес аукціону
  36 + ... viewer
  37 + ... ${USERS.users['${viewer}'].broker}
  38 + ... auction
  39 + Дочекатись дати початку аукціону ${viewer}
  40 +
  41 +
  42 +Можливість вичитати посилання на аукціон для першого учасника
  43 + [Tags] ${USERS.users['${provider}'].broker}: Процес аукціону
  44 + ... provider
  45 + ... ${USERS.users['${provider}'].broker}
  46 + ... auction
  47 + Можливість вичитати посилання на аукціон для ${provider}
  48 +
  49 +
  50 +Можливість вичитати посилання на аукціон для другого учасника
  51 + [Tags] ${USERS.users['${provider1}'].broker}: Процес аукціону
  52 + ... provider1
  53 + ... ${USERS.users['${provider1}'].broker}
  54 + ... auction
  55 + Можливість вичитати посилання на аукціон для ${provider1}
  56 +
  57 +
  58 +Можливість вичитати посилання на аукціон для глядача
  59 + [Tags] ${USERS.users['${viewer}'].broker}: Процес аукціону
  60 + ... viewer
  61 + ... ${USERS.users['${viewer}'].broker}
  62 + ... auction
  63 + Можливість вичитати посилання на аукціон для ${viewer}
  64 +
  65 +
  66 +Можливість дочекатись першого раунду
  67 + [Tags] ${USERS.users['${viewer}'].broker}: Процес аукціону
  68 + ... viewer provider provider1
  69 + ... ${USERS.users['${viewer}'].broker}
  70 + ... ${USERS.users['${provider}'].broker}
  71 + ... ${USERS.users['${provider1}'].broker}
  72 + ... auction
  73 + Дочекатись завершення паузи перед першим раундом
  74 +
  75 +
  76 +Можливість проведення 1 го раунду аукціону для першого учасника
  77 + [Tags] ${USERS.users['${provider}'].broker}: Процес аукціону
  78 + ... provider
  79 + ... ${USERS.users['${provider}'].broker}
  80 + ... auction
  81 + Вибрати учасника, який може зробити ставку
  82 + Поставити максимально можливу ставку
  83 + Дочекатись учасником закінчення стадії ставок
  84 + Перевірити чи ставка була прийнята
  85 +
  86 +
  87 +Можливість проведення 1 го раунду аукціону для другого учасника
  88 + [Tags] ${USERS.users['${provider1}'].broker}: Процес аукціону
  89 + ... provider1
  90 + ... ${USERS.users['${provider1}'].broker}
  91 + ... auction
  92 + Вибрати учасника, який може зробити ставку
  93 + Поставити ставку більшу від максимальної на 1 грн
  94 + Поставити максимально можливу ставку
  95 + Дочекатись учасником закінчення стадії ставок
  96 + Перевірити чи ставка була прийнята
  97 +
  98 +
  99 +Можливість дочекатись другого раунду
  100 + [Tags] ${USERS.users['${viewer}'].broker}: Процес аукціону
  101 + ... viewer provider provider1
  102 + ... ${USERS.users['${viewer}'].broker}
  103 + ... ${USERS.users['${provider}'].broker}
  104 + ... ${USERS.users['${provider1}'].broker}
  105 + ... auction
  106 + Дочекатись завершення паузи перед 2 раундом
  107 +
  108 +
  109 +Можливість проведення 2 го раунду аукціону для першого учасника
  110 + [Tags] ${USERS.users['${provider}'].broker}: Процес аукціону
  111 + ... provider
  112 + ... ${USERS.users['${provider}'].broker}
  113 + ... auction
  114 + Вибрати учасника, який може зробити ставку
  115 + Поставити малу ставку в 1 грн
  116 + Відмінитити ставку
  117 + Поставити максимально можливу ставку
  118 + Дочекатись учасником закінчення стадії ставок
  119 + Перевірити чи ставка була прийнята
  120 +
  121 +
  122 +Можливість проведення 2 го раунду аукціону для другого учасника
  123 + [Tags] ${USERS.users['${provider1}'].broker}: Процес аукціону
  124 + ... provider1
  125 + ... ${USERS.users['${provider1}'].broker}
  126 + ... auction
  127 + Дочекатись учасником закінчення стадії ставок
  128 + Вибрати учасника, який може зробити ставку
  129 + Поставити максимально можливу ставку
  130 + Дочекатись учасником закінчення стадії ставок
  131 + Перевірити чи ставка була прийнята
  132 +
  133 +
  134 +Можливість дочекатись третього раунду
  135 + [Tags] ${USERS.users['${viewer}'].broker}: Процес аукціону
  136 + ... viewer provider provider1
  137 + ... ${USERS.users['${viewer}'].broker}
  138 + ... ${USERS.users['${provider}'].broker}
  139 + ... ${USERS.users['${provider1}'].broker}
  140 + ... auction
  141 + Дочекатись завершення паузи перед 3 раундом
  142 +
  143 +
  144 +Можливість проведення 3 го раунду аукціону для першого учасника
  145 + [Tags] ${USERS.users['${provider}'].broker}: Процес аукціону
  146 + ... provider
  147 + ... ${USERS.users['${provider}'].broker}
  148 + ... auction
  149 + Вибрати учасника, який може зробити ставку
  150 + Поставити нульову ставку
  151 + Поставити максимально можливу ставку
  152 + Дочекатись учасником закінчення стадії ставок
  153 + Перевірити чи ставка була прийнята
  154 +
  155 +
  156 +Можливість проведення 3 го раунду аукціону для другого учасника
  157 + [Tags] ${USERS.users['${provider1}'].broker}: Процес аукціону
  158 + ... provider1
  159 + ... ${USERS.users['${provider1}'].broker}
  160 + ... auction
  161 + Вибрати учасника, який може зробити ставку
  162 + Поставити малу ставку в 1 грн
  163 + Змінити ставку на максимальну
  164 + Дочекатись учасником закінчення стадії ставок
  165 + Перевірити чи ставка була прийнята
  166 +
  167 +
  168 +Можливість дочекатися завершення аукціону
  169 + [Tags] ${USERS.users['${viewer}'].broker}: Процес аукціону
  170 + ... viewer provider provider1
  171 + ... ${USERS.users['${viewer}'].broker}
  172 + ... ${USERS.users['${provider}'].broker}
  173 + ... ${USERS.users['${provider1}'].broker}
  174 + ... auction
  175 + [Teardown] Оновити LAST_MODIFICATION_DATE
  176 + Дочекатись дати закінчення аукціону
  177 +
  178 +
  179 +Відображення дати завершення аукціону
  180 + [Tags] ${USERS.users['${viewer}'].broker}: Відображення основних даних аукціону
  181 + ... viewer
  182 + ... ${USERS.users['${viewer}'].broker}
  183 + ... tender_view
  184 + [Setup] Дочекатись синхронізації з майданчиком ${viewer}
  185 + Отримати дані із тендера ${viewer} ${TENDER['TENDER_UAID']} auctionPeriod.endDate ${TENDER['LOT_ID']}
  186 +
  187 +
  188 +*** Keywords ***
  189 +Дочекатись дати початку аукціону
  190 + [Arguments] ${username}
  191 + # Can't use that dirty hack here since we don't know
  192 + # the date of auction when creating the procurement :)
  193 + ${auctionStart}= Отримати дані із тендера ${username} ${TENDER['TENDER_UAID']} auctionPeriod.startDate ${TENDER['LOT_ID']}
  194 + Дочекатись дати ${auctionStart}
  195 + Оновити LAST_MODIFICATION_DATE
  196 + Дочекатись синхронізації з майданчиком ${username}
  197 +
  198 +
  199 +Можливість вичитати посилання на аукціон для ${username}
  200 + ${url}= Run Keyword If '${username}' == '${viewer}' Run As ${viewer} Отримати посилання на аукціон для глядача ${TENDER['TENDER_UAID']} ${TENDER['LOT_ID']}
  201 + ... ELSE Run As ${username} Отримати посилання на аукціон для учасника ${TENDER['TENDER_UAID']} ${TENDER['LOT_ID']}
  202 + Should Be True '${url}'
  203 + Should Match Regexp ${url} ^https?:\/\/auction(?:-sandbox)?\.openprocurement\.org\/tenders\/([0-9A-Fa-f]{32})
  204 + Log URL: ${url}
  205 + [return] ${url}
  206 +
  207 +
  208 +Відкрити сторінку аукціону для ${username}
  209 + ${url}= Можливість вичитати посилання на аукціон для ${username}
  210 + Open browser ${url} ${USERS.users['${username}'].browser} ${username}
  211 + Set Window Position @{USERS['${username}']['position']}
  212 + Set Window Size @{USERS['${username}']['size']}
  213 + Run Keyword Unless '${username}' == '${viewer}'
  214 + ... Click Element xpath=//button[contains(@class, 'btn btn-success')]
  215 +
  216 +
  217 +Дочекатись завершення паузи перед першим раундом
  218 + Відкрити сторінку аукціону для ${viewer}
  219 + Дочекатись паузи перед першим раундом глядачем
  220 + Дочекатись завершення паузи перед першим раундом для користувачів
  221 +
  222 +
  223 +Дочекатись дати закінчення аукціону
  224 + Переключитись на учасника ${viewer}
  225 + ${status} ${_}= Run Keyword And Ignore Error Wait Until Keyword Succeeds 61 times 30 s Page should contain Аукціон завершився
  226 + Run Keyword If '${status}' == 'FAIL'
  227 + ... Run Keywords
  228 + ... Отримати дані із тендера ${username} ${TENDER['TENDER_UAID']} auctionPeriod.startDate ${TENDER['LOT_ID']}
  229 + ... AND
  230 + ... Дочекатись дати початку аукціону ${username}
  231 + ... AND
  232 + ... Дочекатись дати закінчення аукціону для ${username}
  233 + ... ELSE
  234 + ... Run Keywords
  235 + ... Wait Until Keyword Succeeds 15 times 30 s Page should not contain Очікуємо на розкриття імен учасників
  236 + ... AND
  237 + ... Переключитись на учасника ${provider}
  238 + ... AND
  239 + ... Page should contain Аукціон завершився
  240 + ... AND
  241 + ... Переключитись на учасника ${provider1}
  242 + ... AND
  243 + ... Page should contain Аукціон завершився
  244 + ... AND
  245 + ... Close browser
  246 +
  247 +
  248 +Дочекатись паузи перед першим раундом глядачем
  249 + ${status} ${_}= Run Keyword And Ignore Error Page should contain Очікування
  250 + Run Keyword If '${status}' == 'PASS'
  251 + ... Run Keywords
  252 + ... Дочекатись дати початку аукціону ${viewer}
  253 + ... AND
  254 + ... Wait Until Keyword Succeeds 15 times 10 s Page should contain до початку раунду
  255 +
  256 +
  257 +Дочекатись завершення паузи перед ${round_number} раундом
  258 + Переключитись на учасника ${viewer}
  259 + Wait Until Keyword Succeeds 30 times 5s Page should contain → ${round_number}
  260 + ${date}= Get Current Date
  261 + Переключитись на учасника ${provider}
  262 + Page should contain → ${round_number}
  263 + Переключитись на учасника ${provider1}
  264 + Page should contain → ${round_number}
  265 + Переключитись на учасника ${viewer}
  266 + Wait Until Keyword Succeeds 30 times 5 s Page should not contain → ${round_number}
  267 + ${new_date}= Get Current Date
  268 + Переключитись на учасника ${provider}
  269 + Page should not contain → ${round_number}
  270 + Переключитись на учасника ${provider1}
  271 + Page should not contain → ${round_number}
  272 + ${time}= Subtract Date From Date ${new_date} ${date}
  273 + Should Be True ${time} < 140 and ${time} > 100
  274 +
  275 +
  276 +Дочекатись завершення паузи перед першим раундом для користувачів
  277 + Wait Until Keyword Succeeds 30 times 5s Page should contain → 1
  278 + ${date}= Get Current Date
  279 + Відкрити сторінку аукціону для ${provider}
  280 + Відкрити сторінку аукціону для ${provider1}
  281 + Переключитись на учасника ${viewer}
  282 + Wait Until Keyword Succeeds 62 times 5 s Page should not contain → 1
  283 + ${new_date}= Get Current Date
  284 + ${time}= Subtract Date From Date ${new_date} ${date}
  285 + Should Be True ${time} < 310 and ${time} > 250
  286 + Переключитись на учасника ${provider}
  287 + Page should not contain → 1
  288 + Переключитись на учасника ${provider1}
  289 + Page should not contain → 1
  290 +
  291 +
  292 +Дочекатись закінчення стадії ставок глядачем
  293 + Wait Until Keyword Succeeds 30 times 5s Page should contain до закінчення раунду
  294 + ${date}= Get Current Date
  295 + Wait Until Keyword Succeeds 50 times 5 s Page should not contain до закінчення раунду
  296 + ${new_date}= Get Current Date
  297 + ${time}= Subtract Date From Date ${new_date} ${date}
  298 + Should Be True ${time} < 250 and ${time} > 210
  299 +
  300 +
  301 +Дочекатись учасником закінчення стадії ставок
  302 + Wait Until Keyword Succeeds 12 times 10 s Page should not contain до закінчення вашої черги
  303 +
  304 +
  305 +Дочекатись оголошення результатів глядачем
  306 + Wait Until Keyword Succeeds 30 times 5s Page should contain до оголошення результатів
  307 + ${date}= Get Current Date
  308 + Wait Until Keyword Succeeds 50 times 5 s Page should not contain до оголошення результатів
  309 + ${new_date}= Get Current Date
  310 + ${time}= Subtract Date From Date ${new_date} ${date}
  311 + Should Be True ${time} < 250 and ${time} > 210
  312 +
  313 +
  314 +Переключитись на учасника
  315 + [Arguments] ${username}
  316 + Switch Browser ${username}
  317 + ${CURRENT_USER}= Set Variable ${username}
  318 + Set Global Variable ${CURRENT_USER}
  319 +
  320 +
  321 +Поставити максимально можливу ставку
  322 + Wait Until Page Contains Element id=max_bid_amount_price
  323 + ${last_amount}= Get Text id=max_bid_amount_price
  324 + Поставити ставку ${last_amount} Заявку прийнято
  325 +
  326 +
  327 +Поставити ставку більшу від максимальної на ${extra_amount} грн
  328 + Wait Until Page Contains Element id=max_bid_amount_price
  329 + ${last_amount}= Get Text id=max_bid_amount_price
  330 + ${last_amount}= convert_amount_string_to_float ${last_amount}
  331 + ${extra_amount}= convert_amount_string_to_float ${extra_amount}
  332 + ${last_amount}= Evaluate ${last_amount}+${extra_amount}
  333 + Поставити ставку ${last_amount} Надто висока заявка
  334 +
  335 +
  336 +Поставити ставку
  337 + [Arguments] ${amount} ${msg}
  338 + ${amount}= Convert To String ${amount}
  339 + Set To Dictionary ${USERS['${CURRENT_USER}']} last_amount=${amount}
  340 + Click Element id=clear-bid-button
  341 + Wait Until Page Does Not Contain Element xpath=//alert[contains(@class, 'bids-form')] 7s
  342 + Input Text id=bid-amount-input ${amount}
  343 + Click Element id=place-bid-button
  344 + Wait Until Page Contains ${msg} 30s
  345 +
  346 +
  347 +Відмінитити ставку
  348 + Click Element id=cancel-bid-button
  349 + Wait Until Page Contains Заявку відмінено 10s
  350 +
  351 +
  352 +Змінити ставку на максимальну
  353 + Click Element id=edit-bid-button
  354 + Click Element id=clear-bid-button
  355 + Поставити максимально можливу ставку
  356 +
  357 +
  358 +Вибрати учасника, який може зробити ставку
  359 + :FOR ${username} IN ${provider} ${provider1}
  360 + \ Переключитись на учасника ${username}
  361 + \ ${status} ${_}= Run Keyword And Ignore Error Page Should Contain до закінчення вашої черги
  362 + \ Run Keyword If '${status}' == 'PASS' Exit For Loop
  363 +
  364 +
  365 +Поставити малу ставку в ${last_amount} грн
  366 + Wait Until Page Contains Element id=max_bid_amount_price
  367 + Поставити ставку ${last_amount} Ви ввели дуже малу суму
  368 +
  369 +
  370 +Поставити нульову ставку
  371 + Wait Until Page Contains Element id=max_bid_amount_price
  372 + Поставити ставку 0 Bid amount is required
  373 +
  374 +
  375 +Перевірити чи ставка була прийнята
  376 + Page Should Contain ${USERS['${CURRENT_USER}']['last_amount']}
... ...
... ... @@ -739,6 +739,8 @@ Library openprocurement_client_helper.py
739 739 Set To Dictionary ${USERS.users['${username}']} access_token=${reply['access']['token']}
740 740 Set To Dictionary ${USERS.users['${username}'].bidresponses['bid'].data} id=${reply['data']['id']}
741 741 Log ${reply_active}
  742 + Set To Dictionary ${USERS.users['${username}']} bid_id=${reply['data']['id']}
  743 + Log ${reply}
742 744
743 745
744 746 Змінити цінову пропозицію
... ... @@ -800,8 +802,8 @@ Library openprocurement_client_helper.py
800 802 Отримати пропозицію
801 803 [Arguments] ${username} ${tender_uaid}
802 804 ${tender}= openprocurement_client.Пошук тендера по ідентифікатору ${username} ${tender_uaid}
803   - ${bid_id}= Get Variable Value ${USERS.users['${username}'].bidresponses['bid'].data.id}
804   - ${token}= Get Variable Value ${USERS.users['${username}']['access_token']}
  805 + ${bid_id}= Get Variable Value ${USERS.users['${username}'].bid_id}
  806 + ${token}= Get Variable Value ${USERS.users['${username}'].access_token}
805 807 ${reply}= Call Method ${USERS.users['${username}'].client} get_bid ${tender} ${bid_id} ${token}
806 808 ${reply}= munch_dict arg=${reply}
807 809 [return] ${reply}
... ...
... ... @@ -3,23 +3,37 @@ users:
3 3 api_key: e9c3ccb8e8124f26941d5f9639a4ebc3
4 4 broker: Quinta
5 5 auth_edr: [test.quintagroup.com, f5111c99a97a45348d8165ba8fcf0d62]
  6 + browser: phantomjs
  7 + position: [0, 0]
  8 + size: [1400, 900]
6 9 Tender_User:
7 10 api_key: e9c3ccb8e8124f26941d5f9639a4ebc3
8 11 broker: Quinta
9 12 auth_edr: [test.quintagroup.com, f5111c99a97a45348d8165ba8fcf0d62]
  13 + browser: phantomjs
  14 + position: [0, 0]
  15 + size: [1400, 900]
10 16 Tender_User1:
11 17 api_key: e9c3ccb8e8124f26941d5f9639a4ebc3
12 18 broker: Quinta
13 19 auth_edr: [test.quintagroup.com, f5111c99a97a45348d8165ba8fcf0d62]
  20 + browser: phantomjs
  21 + position: [0, 0]
  22 + size: [1400, 900]
14 23 Tender_User2:
15 24 api_key: e9c3ccb8e8124f26941d5f9639a4ebc3
16 25 broker: Quinta
17 26 auth_edr: [test.quintagroup.com, f5111c99a97a45348d8165ba8fcf0d62]
  27 + browser: phantomjs
  28 + position: [0, 0]
  29 + size: [1400, 900]
18 30 Tender_Viewer:
19 31 api_key: ""
20 32 broker: Quinta
21 33 browser: firefox
22 34 auth_edr: [test.quintagroup.com, f5111c99a97a45348d8165ba8fcf0d62]
  35 + position: [0, 0]
  36 + size: [1400, 900]
23 37 Etender_Owner:
24 38 broker: Etender
25 39 homepage: "http://bid.uat.e-tender.biz/#/"
... ...
... ... @@ -70,7 +70,7 @@ def test_tender_data(params,
70 70 submissionMethodDetails = submissionMethodDetails \
71 71 if submissionMethodDetails else "quick"
72 72 now = get_now()
73   - value_amount = round(random.uniform(3000, 99999999999.99), 2) # max value equals to budget of Ukraine in hryvnias
  73 + value_amount = round(random.uniform(3000, 99999999.99), 2) # max value equals to budget of Ukraine in hryvnias
74 74 data = {
75 75 "mode": "test",
76 76 "submissionMethodDetails": submissionMethodDetails,
... ... @@ -298,7 +298,7 @@ def test_bid_value(max_value_amount):
298 298 return munchify({
299 299 "value": {
300 300 "currency": "UAH",
301   - "amount": round(random.uniform(1, max_value_amount), 2),
  301 + "amount": round(random.uniform((0.95 * max_value_amount), max_value_amount), 2),
302 302 "valueAddedTaxIncluded": True
303 303 }
304 304 })
... ...
... ... @@ -174,6 +174,8 @@ Get Broker Property By Username
174 174 Run Keyword And Ignore Error Set To Dictionary ${artifact} tender_owner_access_token=${USERS.users['${tender_owner}'].access_token}
175 175 Run Keyword And Ignore Error Set To Dictionary ${artifact} provider_access_token=${USERS.users['${provider}'].access_token}
176 176 Run Keyword And Ignore Error Set To Dictionary ${artifact} provider1_access_token=${USERS.users['${provider1}'].access_token}
  177 + Run Keyword And Ignore Error Set To Dictionary ${artifact} provider_bid_id=${USERS.users['${provider}'].bid_id}
  178 + Run Keyword And Ignore Error Set To Dictionary ${artifact} provider1_bid_id=${USERS.users['${provider1}'].bid_id}
177 179 ${status} ${lots_ids}= Run Keyword And Ignore Error Отримати ідентифікатори об’єктів ${viewer} lots
178 180 Run Keyword If '${status}'=='PASS'
179 181 ... Set To Dictionary ${artifact} lots=${lots_ids}
... ... @@ -195,6 +197,8 @@ Get Broker Property By Username
195 197 Run Keyword And Ignore Error Set To Dictionary ${USERS.users['${tender_owner}']} access_token=${ARTIFACT.tender_owner_access_token}
196 198 Run Keyword And Ignore Error Set To Dictionary ${USERS.users['${provider}']} access_token=${ARTIFACT.provider_access_token}
197 199 Run Keyword And Ignore Error Set To Dictionary ${USERS.users['${provider1}']} access_token=${ARTIFACT.provider1_access_token}
  200 + Run Keyword And Ignore Error Set To Dictionary ${USERS.users['${provider}']} bid_id=${ARTIFACT.provider_bid_id}
  201 + Run Keyword And Ignore Error Set To Dictionary ${USERS.users['${provider1}']} bid_id=${ARTIFACT.provider1_bid_id}
198 202 Set Suite Variable ${MODE}
199 203 Set Suite Variable ${lot_index}
200 204 Set Suite Variable ${TENDER}
... ...
... ... @@ -1391,6 +1391,15 @@ ${ITEM_MEAT} ${True}
1391 1391 Можливість подати цінову пропозицію користувачем ${provider1}
1392 1392
1393 1393
  1394 +Можливість зменшити пропозицію на 5% другим учасником
  1395 + [Tags] ${USERS.users['${provider1}'].broker}: Подання пропозиції
  1396 + ... provider1
  1397 + ... ${USERS.users['${provider1}'].broker}
  1398 + ... modify_bid_by_provider1
  1399 + [Teardown] Оновити LAST_MODIFICATION_DATE
  1400 + Можливість зменшити пропозицію до 95 відсотків користувачем ${provider1}
  1401 +
  1402 +
1394 1403 Можливість подати пропозицію третім учасником
1395 1404 [Tags] ${USERS.users['${provider1}'].broker}: Подання пропозиції
1396 1405 ... provider2
... ...
... ... @@ -551,3 +551,6 @@ def generate_test_bid_data_second_stage(tender_data, index='0'):
551 551 parameter = {"value": fake.random_element(elements=(0.05, 0.01, 0)), "code": feature.get('code', '')}
552 552 bid.data.parameters.append(parameter)
553 553 return bid
  554 +
  555 +def convert_amount_string_to_float(amount_string):
  556 + return float(amount_string.replace(' ', '').replace(',', '.'))
... ...
... ... @@ -15,6 +15,7 @@
15 15
16 16 -i make_bid_by_provider
17 17 -i make_bid_by_provider1
  18 +-i modify_bid_by_provider1
18 19
19 20 -i auction
20 21
... ...
Please register or login to post a comment