discourse/spec/serializers/user_bookmark_serializer_spec.rb
Martin Brennan 03c012bd97 Unscope post + topic relation for bookmark
* we want to be able to get these records for the bookmark
  even if they are trashed, for serialization for the bookmark
  list
2020-03-12 16:00:45 +10:00

36 lines
866 B
Ruby

# frozen_string_literal: true
require 'rails_helper'
RSpec.describe UserBookmarkSerializer do
let(:bookmark) do
Fabricate(:bookmark)
Bookmark.all.includes(post: :user).includes(:topic).last
end
subject { described_class.new(bookmark) }
context "when the topic is deleted" do
before do
bookmark.topic.trash!
bookmark.reload
end
it "still returns the topic title because the relationship is unscoped" do
expect(subject.title).not_to eq(nil)
end
end
context "when the post is deleted" do
before do
bookmark.post.trash!
bookmark.reload
end
it "still returns the post number because the relationship is unscoped" do
expect(subject.linked_post_number).not_to eq(nil)
end
it "still returns the post username" do
expect(subject.username).not_to eq(nil)
end
end
end