Remove User#at_midnight

Replace it with a class called DateUtils with a method called
`#midnight_for` that takes a preference instance and date to convert to
midnight.
This commit is contained in:
Matt Rogers 2013-07-29 16:34:23 -05:00
parent e7c6142684
commit a1aaa283f1
6 changed files with 12 additions and 8 deletions

View file

@ -117,7 +117,9 @@ class RecurringTodosControllerTest < ActionController::TestCase
new_todo = Todo.where(:recurring_todo_id => 5).first
# due date should be the target_date
assert_equal users(:admin_user).at_midnight(Date.new(target_date.year, target_date.month, target_date.day)), new_todo.due
user = users(:admin_user)
target_date = Date.new(target_date.year, target_date.month, target_date.day)
assert_equal DateUtils.midnight_for(user.prefs, target_date), new_todo.due
# show_from should be nil since now+4.days-10.days is in the past
assert_equal nil, new_todo.show_from

View file

@ -20,7 +20,8 @@ class PreferenceTest < ActiveSupport::TestCase
end
def test_parse_date
assert_equal @admin_user.at_midnight(Date.new(2007, 5, 20)).to_s, @admin_user.preference.parse_date('20/5/2007').to_s
date = Time.new(2007, 05, 20).in_time_zone(@admin_user.preference.time_zone).at_midnight
assert_equal date.to_s, @admin_user.preference.parse_date('20/5/2007').to_s
end
def test_parse_date_returns_nil_if_string_is_empty