Ponieważ tabela jest przetwarzana według definicji kroku, można umieścić w tabeli specjalny znak miejsca, taki jak ciąg "TODAYS_DATE", a następnie użyć map_column!
, aby przetworzyć dane w kolumnie do żądanego formatu .
Dla przykładu podano Poniższa tabela
Given the following user records
| username | date |
| alice | 2001-01-01 |
| bob | TODAYS_DATE |
W swojej definicji kroku trzeba
Given /^the following user records$/ do |table|
table.map_column!('date') do |date|
if date == 'TODAYS_DATE'
date = Time.now.strftime("%Y-%m-%d")
end
date
end
table.hashes.each do |hash|
#Whatever you need to do
end
end
Uwaga to tylko zmienia wartości, gdy prosimy o hash. table i table.raw pozostaną niezmienione, ale gdy potrzebujesz haseł wierszy, zostaną one przekonwertowane przez kod w kolumnie map_column!
Uwaga: tak, wiem, jak kliknięcie na znaczniku . Gram głupio, pokazując wagę: właściwej kapitalizacji, kontekstu w pytaniu, poprawnego tagowania ... – PhiLho
Szybkie wyszukiwanie w Google sugeruje, że BDD i Cucumber są powiązane z Ruby on Rails - co może być oczywiste, jeśli się poruszasz w tych kręgach, ale nie, jeśli nie. –
Ogórek jest rzeczywiście związany z rubinem, a nie z RoR. Programiści niepobudliwi używają go do testowania swojego kodu. Używam go do testowania kodu Java. A BDD nie jest powiązany z Railsami, to Behavioral Driven Development, inny styl niż TDD, Test Driven Development. –