From fee1e3b504af4bcb877c69278b45410f088ff469 Mon Sep 17 00:00:00 2001 From: Reinier Balt Date: Thu, 5 Sep 2013 12:23:26 +0200 Subject: [PATCH] fix failing test on timezones and remove debug message --- app/models/recurring_todo.rb | 1 - lib/staleness.rb | 3 ++- test/models/preference_test.rb | 2 +- test/models/staleness_test.rb | 5 +++-- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/app/models/recurring_todo.rb b/app/models/recurring_todo.rb index a798105a..3769e585 100644 --- a/app/models/recurring_todo.rb +++ b/app/models/recurring_todo.rb @@ -48,7 +48,6 @@ class RecurringTodo < ActiveRecord::Base end def validate_weekly - puts "@@@ validate_weekly [#{self.weekly_every_x_week}]" if weekly_every_x_week.blank? errors[:base] << "Every other nth week may not be empty for recurrence setting" end diff --git a/lib/staleness.rb b/lib/staleness.rb index d5375621..f377f1bf 100644 --- a/lib/staleness.rb +++ b/lib/staleness.rb @@ -2,9 +2,10 @@ require 'active_support/all' class Staleness SECONDS_PER_DAY = 86400 + def self.days_stale(item, current_user) return 0 if cannot_be_stale(item, current_user) - (UserTime.new(current_user).time - item.created_at).to_i / SECONDS_PER_DAY + (UserTime.new(current_user).time.utc - item.created_at.utc).to_i / SECONDS_PER_DAY end def self.cannot_be_stale(item, current_user) diff --git a/test/models/preference_test.rb b/test/models/preference_test.rb index 9a66cfb5..d0c065fe 100644 --- a/test/models/preference_test.rb +++ b/test/models/preference_test.rb @@ -20,7 +20,7 @@ class PreferenceTest < ActiveSupport::TestCase end def test_parse_date - date = Time.new(2007, 05, 20).in_time_zone(@admin_user.preference.time_zone).at_midnight + date = UserTime.new(@admin_user).midnight(Time.new(2007, 05, 20, 0, 0, 0)) assert_equal date.to_s, @admin_user.preference.parse_date('20/5/2007').to_s end diff --git a/test/models/staleness_test.rb b/test/models/staleness_test.rb index c2c3efc4..0f119d87 100644 --- a/test/models/staleness_test.rb +++ b/test/models/staleness_test.rb @@ -1,6 +1,7 @@ require_relative '../minimal_test_helper' require_relative '../../lib/staleness' - +require_relative '../../lib/user_time' +require 'timecop' class StalenessTest < Test::Unit::TestCase FakePrefs = Struct.new(:time_zone) @@ -35,7 +36,7 @@ class StalenessTest < Test::Unit::TestCase def setup @current_user = FakeUser.new(now) - Timecop.freeze(Time.local(2013,02,28)) + Timecop.freeze(Time.utc(2013,02,28)) end def teardown