# frozen_string_literal: true RSpec.describe UserPostBookmarkSerializer do let(:user) { Fabricate(:user) } let(:topic) { Fabricate(:topic) } let(:post) { Fabricate(:post, user: user, topic: topic) } let!(:bookmark) { Fabricate(:bookmark, name: "Test", user: user, bookmarkable: post) } describe "#highest_post_number" do let(:whisperers_group) { Fabricate(:group) } before { SiteSetting.whispers_allowed_groups = "#{whisperers_group.id}" } it "uses the correct highest_post_number column based on whether the user is whisperer" do Fabricate(:post, topic: topic) Fabricate(:post, topic: topic) Fabricate(:whisper, topic: topic) topic.reload bookmark.reload serializer = UserPostBookmarkSerializer.new(bookmark, scope: Guardian.new(user)) expect(serializer.highest_post_number).to eq(3) user.groups << whisperers_group expect(serializer.highest_post_number).to eq(4) end end end