Outras dicas

Eu sei que tem sido idades desde que esta pergunta foi feita, mas eu estava fazendo algo semelhante com pepino recentemente então aqui está uma solução alternativa, se alguém está interessado ...

Given the following user records
 | username | date                             |
 | bob      | Time.now.strftime("%Y-%m-%d")    |

E, em seguida, em sua definição da etapa apenas eval () a seqüência de data

Given /^the following user records$/ do |table|
  table.hashes.each do |hash|
    date = eval(hash["date"])
  end
end

Embora ao contrário do exemplo de Brandon isso não vai deixar você colocar em datas exatas assim sem mais alguma lógica.

A resposta de bodnarbm é muito bom se é isso que você quer fazer. Minha própria sugestão seria a de tomar um olhar para o rel Timecop gem . Use-o para tempo definido para um dia conhecido, em seguida, ajustar suas tabelas em conformidade.

Com base em arquivos luminárias Eu criei este código:

Feature:

Given the following "Inquirers":
  | id | email                    | start_date        |
  |  1 | alberto@deco.proteste.pt | <%= Time.now %>   |

Helper:

Given(/^the following "(.*?)":$/) do |model, table|
  table.hashes.each do |hash|
    attributes = Rack::Utils.parse_nested_query(hash.to_query)
    object     = model_name.classify.constantize.new

    attributes.keys.each do |key|
      object.send("#{key}=", ERB.new(value).result())
    end
    ...
  end
end
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top