Como la tabla está siendo procesada por su definición de paso, puede poner un marcador especial en la tabla, como la cadena "TODAYS_DATE", y luego usar map_column!
para procesar los datos en la columna al formato que desee .
Por ejemplo, dada la siguiente tabla
Given the following user records
| username | date |
| alice | 2001-01-01 |
| bob | TODAYS_DATE |
En su definición de paso que tendría
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
Nota esto sólo cambia los valores cuando se pide el hash. table y table.raw seguirán siendo los mismos, pero cada vez que necesites los hashes de fila, serán convertidos por el código dentro de map_column.
Nota: Sí, ya sé cómo hacer clic en una etiqueta . Me estoy haciendo el tonto para mostrar la importancia de: capitalización adecuada, proporcionar contexto en una pregunta, etiquetar correctamente ... – PhiLho
Una búsqueda rápida con Google sugiere que BDD y Cucumber están relacionados con Ruby on Rails, lo que podría ser obvio si te mueves en esos círculos, pero no si no lo haces. –
El pepino está realmente relacionado con el rubí, no con el RoR. Los desarrolladores de non rails lo usan para probar su código. Lo uso para probar código Java. Y BDD no está relacionado con Rails, es el desarrollo impulsado por el comportamiento, un estilo diferente de TDD, desarrollo impulsado por prueba. –