Sha256: 1465d51af9e9a0a373931cdbc904b48ad216a81bd2a35df28c70547ee045f4d4

Contents?: true

Size: 901 Bytes

Versions: 3

Compression:

Stored size: 901 Bytes

Contents

module StampStepHelpers
  def month(month_name)
    month = Date::MONTHNAMES.index(month_name) || Date::ABBR_MONTHNAMES.index(month_name)
    assert (1..12).include?(month), "Invalid month: #{month_name}"
    return month
  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.utc(year.to_i, month(month_name), day.to_i, hours.to_i, minutes.to_i, seconds.to_i)
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

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
stamp-0.1.6 features/step_definitions/stamp_steps.rb
stamp-0.1.5 features/step_definitions/stamp_steps.rb
stamp-0.1.4 features/step_definitions/stamp_steps.rb