2019-04-30 08:27:42 +08:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2018-11-19 14:54:40 +08:00
|
|
|
require 'rails_helper'
|
|
|
|
|
|
|
|
RSpec.describe TopicListSerializer do
|
2019-05-07 11:12:20 +08:00
|
|
|
fab!(:user) { Fabricate(:user) }
|
2018-11-19 14:54:40 +08:00
|
|
|
|
|
|
|
let(:topic) do
|
|
|
|
Fabricate(:topic).tap do |t|
|
|
|
|
t.allowed_user_ids = [t.user_id]
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
it 'should return the right payload' do
|
|
|
|
topic_list = TopicList.new(nil, user, [topic])
|
|
|
|
|
|
|
|
serialized = described_class.new(topic_list,
|
|
|
|
scope: Guardian.new(user)
|
|
|
|
).as_json
|
|
|
|
|
|
|
|
expect(serialized[:users].first[:id]).to eq(topic.user_id)
|
2018-11-19 15:13:54 +08:00
|
|
|
expect(serialized[:primary_groups]).to eq([])
|
2018-11-19 14:54:40 +08:00
|
|
|
expect(serialized[:topic_list][:topics].first[:id]).to eq(topic.id)
|
|
|
|
end
|
|
|
|
end
|