24 lines
762 B
Ruby
24 lines
762 B
Ruby
|
# frozen_string_literal: true
|
||
|
|
||
|
RSpec.describe UserPostBookmarkSerializer do
|
||
|
let(:user) { Fabricate(:user) }
|
||
|
let(:post) { Fabricate(:post, user: user, topic: topic) }
|
||
|
let(:topic) { Fabricate(:topic) }
|
||
|
let!(:bookmark) { Fabricate(:bookmark, name: 'Test', user: user, bookmarkable: post) }
|
||
|
|
||
|
it "uses the correct highest_post_number column based on whether the user is staff" 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.update!(admin: true)
|
||
|
|
||
|
expect(serializer.highest_post_number).to eq(4)
|
||
|
end
|
||
|
end
|