From b6187b5b5018112d5e00fe5e9a2baad0c76f13f4 Mon Sep 17 00:00:00 2001 From: Adam Meehan Date: Tue, 22 Jul 2008 12:18:57 +1000 Subject: [PATCH] made benchmark fairer for time comparison to ensure valid time must date as well --- benchmark.rb | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/benchmark.rb b/benchmark.rb index 3609782..cd385de 100644 --- a/benchmark.rb +++ b/benchmark.rb @@ -2,11 +2,10 @@ require 'date' require 'parsedate' require 'benchmark' require 'rubygems' -require 'rails/version' require 'active_support' require 'active_record' require 'action_controller' -require 'action_view' + $: << 'lib' require 'lib/validates_timeliness' @@ -18,10 +17,12 @@ Benchmark.bm do |x| end } - x.report('time') { + x.report('date/time') { n.times do "2000-01-04 12:12:12" =~ /\A(\d{4})-(\d{2})-(\d{2}) (\d{2})[\. :](\d{2})([\. :](\d{2}))?\Z/ - Time.mktime($1, $2, $3, $3, $5, $6) + arr = [$1, $2, $3, $3, $5, $6].map {|i| i.to_i } + Date.new(*arr[0..2]) + Time.mktime(*arr) end }