Skip to content

Commit

Permalink
Avoid adjusting time by a number of days
Browse files Browse the repository at this point in the history
Using hours instead of days avoids test failures when moving
past a point in time when the clocks change.
  • Loading branch information
tomhughes committed Oct 25, 2024
1 parent d056315 commit fb6042e
Showing 1 changed file with 21 additions and 21 deletions.
42 changes: 21 additions & 21 deletions test/controllers/user_blocks_controller_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -636,15 +636,15 @@ def test_dates_when_viewed_before_end
:user_block => { :needs_view => true, :reason => "Testing deactivates_at" })
end
block = UserBlock.last
assert_equal Time.now.utc + 2.days, block.ends_at
assert_equal Time.now.utc + 48.hours, block.ends_at
assert_nil block.deactivates_at

travel 1.day
travel 24.hours
session_for(blocked_user)
get user_block_path(block)
block.reload
assert_equal Time.now.utc + 1.day, block.ends_at
assert_equal Time.now.utc + 1.day, block.deactivates_at
assert_equal Time.now.utc + 24.hours, block.ends_at
assert_equal Time.now.utc + 24.hours, block.deactivates_at
end
end

Expand All @@ -660,14 +660,14 @@ def test_dates_when_viewed_after_end
:user_block => { :needs_view => true, :reason => "Testing deactivates_at" })
end
block = UserBlock.last
assert_equal Time.now.utc + 1.day, block.ends_at
assert_equal Time.now.utc + 24.hours, block.ends_at
assert_nil block.deactivates_at

travel 2.days
travel 48.hours
session_for(blocked_user)
get user_block_path(block)
block.reload
assert_equal Time.now.utc - 1.day, block.ends_at
assert_equal Time.now.utc - 24.hours, block.ends_at
assert_equal Time.now.utc, block.deactivates_at
end
end
Expand All @@ -684,16 +684,16 @@ def test_dates_when_edited_before_end
:user_block => { :needs_view => false, :reason => "Testing deactivates_at" })
end
block = UserBlock.last
assert_equal Time.now.utc + 2.days, block.ends_at
assert_equal Time.now.utc + 2.days, block.deactivates_at
assert_equal Time.now.utc + 48.hours, block.ends_at
assert_equal Time.now.utc + 48.hours, block.deactivates_at

travel 1.day
travel 24.hours
put user_block_path(block,
:user_block_period => "48",
:user_block => { :needs_view => false, :reason => "Testing deactivates_at updated" })
block.reload
assert_equal Time.now.utc + 2.days, block.ends_at
assert_equal Time.now.utc + 2.days, block.deactivates_at
assert_equal Time.now.utc + 48.hours, block.ends_at
assert_equal Time.now.utc + 48.hours, block.deactivates_at
end
end

Expand All @@ -709,16 +709,16 @@ def test_dates_when_edited_after_end
:user_block => { :needs_view => false, :reason => "Testing deactivates_at" })
end
block = UserBlock.last
assert_equal Time.now.utc + 1.day, block.ends_at
assert_equal Time.now.utc + 1.day, block.deactivates_at
assert_equal Time.now.utc + 24.hours, block.ends_at
assert_equal Time.now.utc + 24.hours, block.deactivates_at

travel 2.days
travel 48.hours
put user_block_path(block,
:user_block_period => "0",
:user_block => { :needs_view => false, :reason => "Testing deactivates_at updated" })
block.reload
assert_equal Time.now.utc - 1.day, block.ends_at
assert_equal Time.now.utc - 1.day, block.deactivates_at
assert_equal Time.now.utc - 24.hours, block.ends_at
assert_equal Time.now.utc - 24.hours, block.deactivates_at
end
end

Expand All @@ -732,21 +732,21 @@ def test_update_legacy_deactivates_at
block = UserBlock.new :user => blocked_user,
:creator => moderator_user,
:reason => "because",
:ends_at => Time.now.utc + 1.day,
:ends_at => Time.now.utc + 24.hours,
:needs_view => false

assert_difference "UserBlock.count", 1 do
block.save :validate => false
end

travel 2.days
travel 48.hours
session_for(moderator_user)
put user_block_path(block,
:user_block_period => "0",
:user_block => { :needs_view => false, :reason => "Testing legacy block update" })
block.reload
assert_equal Time.now.utc - 1.day, block.ends_at
assert_equal Time.now.utc - 1.day, block.deactivates_at
assert_equal Time.now.utc - 24.hours, block.ends_at
assert_equal Time.now.utc - 24.hours, block.deactivates_at
end
end

Expand Down

0 comments on commit fb6042e

Please sign in to comment.