1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
module StampStepHelpers
def month(month_name)
Date::MONTHNAMES.index(month_name) || Date::ABBR_MONTHNAMES.index(month_name)
end
end
World(StampStepHelpers)
Given /^the date (\w+) (\d+), (\d{4})$/ do |month_name, day, year|
@target = Date.new(year.to_i, month(month_name), day.to_i)
end
Given /^the time (\w+) (\d+), (\d+) at (\d{2}):(\d{2}):(\d{2})$/ do |month_name, day, year, hours, minutes, seconds|
@target = Time.local(year.to_i, month(month_name), day.to_i, hours.to_i, minutes.to_i, seconds.to_i)
end
Given /^the time zone is "(.*?)"$/ do |zone|
ENV['TZ'] = zone
end
When /^I stamp the example "([^"]*)"$/ do |example|
@stamped = @target.stamp(example)
end
Then /^I produce "([^"]*)"$/ do |expected|
assert_equal expected.strip, @stamped.strip
end
When /^I call "([^"]*)" with "([^"]*)"$/ do |method, arg|
@stamped = @target.send(method, arg)
end
|