Используя ParameterType с данными таблицы? - PullRequest
1 голос
/ 02 мая 2019

Я использую Cucumber с Ruby.

У меня есть ParameterType , который распознает денежные значения и анализирует их в BigDecimal, например, "Учитывая стоимость $ 25.50".

Я хотел бы сделать что-то подобное для таблиц, то есть все, что соответствует шаблону, должно быть автоматически преобразовано, например:

Given these products:
  | item | cost   |
  | foo  | $10.50 |
  | bar  | $5.25  |

Я не смог найти ничего в документации по этому поводу.Возможно ли это?

РЕДАКТИРОВАТЬ: Кажется, это раньше поддерживалось с Шаговые преобразования аргумента , но они были удалены в Cucumber 3:

Табличное преобразованиесопоставляется через разделенный запятыми список заголовков столбцов с префиксом 'table:'

1 Ответ

0 голосов
/ 02 мая 2019

В определении шага не забудьте перебрать все элементы в таблице и вызвать шаг Given the cost is XXX

Вот пример логики в шаге def

And(/^Given these products:$/) do |table|
    # iterate through table
    table.hashes.each do |product|
       # you can get the product details here
       item = product['item']
       cost = product['cost']
       # you can use the item  if you want to select or any operation
       # calling the Given the cost is xx step (here calling the step that already you implemented)
       step("Given the cost is #{cost}")
    end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...