From 425885460fb62c3587d0ce7e3ad3fc17d66d0849 Mon Sep 17 00:00:00 2001 From: Parker Moore Date: Sat, 28 Sep 2013 14:16:57 -0400 Subject: [PATCH] DARN YOU RUBY 1.8.7 AND YOUR DIFFERENT TIME.TO_S METHOD --- features/support/env.rb | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/features/support/env.rb b/features/support/env.rb index 70437a79..7760bc3f 100644 --- a/features/support/env.rb +++ b/features/support/env.rb @@ -40,8 +40,16 @@ def location(folder, direction) [before || '.', after || '.'] end -def seconds_agnostic_time(datetime = Time.now) - date, time, zone = datetime.strftime("%Y-%m-%d %H:%M %z").split(" ") +def seconds_agnostic_datetime(datetime = Time.now) + pieces = datetime.to_s.split(" ") + if pieces.size == 6 # Ruby 1.8.7 + date = pieces[0..2].join(" ") + time = seconds_agnostic_time(pieces[3]) + zone = pieces[4..5].join(" ") + else # Ruby 1.9.1 or greater + date, time, zone = pieces + time = seconds_agnostic_time(time) + end [ Regexp.escape(date), "#{time}:\\d{2}", @@ -49,5 +57,13 @@ def seconds_agnostic_time(datetime = Time.now) ].join("\\ ") end +def seconds_agnostic_time(time) + if time.is_a? Time + time = time.strftime("%H:%M:%S") + end + hour, minutes, _ = time.split(":") + "#{hour}:#{minutes}" +end + # work around "invalid option: --format" cucumber bug (see #296) Test::Unit.run = true if RUBY_VERSION < '1.9'