Files
fizzy/test/models/user/day_timeline/summarizable_test.rb
T
Jorge Manrubia d90fac853f Add missing test
2025-07-25 10:09:00 +02:00

59 lines
1.3 KiB
Ruby

require "test_helper"
class User::DayTimeline::SummarizableTest < ActiveSupport::TestCase
include VcrTestHelper
setup do
@user = users(:david)
freeze_timestamps
Current.session = sessions(:david)
@day = events(:logo_published).reload.created_at
@day_timeline = @user.timeline_for(@day, filter: @user.filters.new)
end
test "summarize" do
assert_not @day_timeline.summarized?
assert @day_timeline.events.any?
summary = assert_difference -> { Event::ActivitySummary.count }, +1 do
@day_timeline.summarize
end
assert @day_timeline.summarized?
assert_equal summary, @day_timeline.summary
assert_no_difference -> { Event::ActivitySummary.count } do
@day_timeline.summarize
end
end
test "past events are summarizable" do
unfreeze_time
# Not summarizable in the future
travel_to @day - 2.weeks
assert_not @day_timeline.summarizable?
# Summarizable in the past
travel_to @day + 1.day
assert @day_timeline.summarizable?
end
test "today events are summarizable" do
unfreeze_time
travel_to @day
assert_not @day_timeline.summarizable?
10.times.each do |index|
cards(:logo).update! title: "Title change #{index} to track event"
end
# Summarizable in the past
assert @day_timeline.summarizable?
end
end