0

我有这种情况:

Given I am on the edit_stamp page
And I change the date to "14.5.2010"              #<-- i need this data
...
Then I should see that the new times has been set #<-- down here

我基本上是在更新模型的日期,在最后一步中,我想验证模型是否确实使用我在第一步中选择的日期进行了更新。

如何在最后一步定义中从顶部获取所选日期?

Then(/^I should see that the new times has been set$/) do
  s = Stamp.first
  find_by_id("day_date#{s.id}").has_text?("14.5.2010")
end

这就是我现在所拥有的,但我不想将日期(14.5.2010)写入步骤定义,我想从上一步中获取它。

4

1 回答 1

2

试试这个:

And (/^I change the date to "(.*?)"$/) do |input_date|
  @new_date = input_date
  # and here do whatever you are doing with the date
end

Then(/^I should see that the new times has been set$/) do
  s = Stamp.first
  s.date_or_whatever_attribute_you_are_using.to_s.should == @new_date
end

这些实例变量 (@xx) 与整个场景一起存在。

于 2013-05-09T12:35:16.153 回答