Sha256: c3643811e3271ebbb6ce6e5a3902d16e331f7a4f57a39ed59cd5f9865d3604a6
Contents?: true
Size: 982 Bytes
Versions: 1
Compression:
Stored size: 982 Bytes
Contents
require "chronic" require "timecop" module TemporalHelpers # Travels to +time+ and lets the clock keep running. # # If a block is given, executes the block at that # time then returns to the present. def travel_to(time, &block) Timecop.travel parse_time(time), &block end # Travels to and freezes the clock at +time+. # # If a block is given, executes the block at that # time then returns to the present. def freeze_time_at(time, &block) Timecop.freeze parse_time(time), &block end private def parse_time(time) Chronic.parse(time) || Time.parse(time) end end World(TemporalHelpers) Given /^it is currently (.+)$/ do |time| travel_to time end Given /^time is frozen at (.+)$/ do |time| freeze_time_at time end Given /^(?:I|we) jump in our Delorean and return to the present$/ do Timecop.return end Before do # Ensure Chronic is using the same time zone Chronic.time_class = Time.zone end After do Timecop.return end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cucumber-timecop-0.0.3 | lib/cucumber/timecop.rb |