mirror of
https://github.com/discourse/discourse.git
synced 2024-11-23 23:06:57 +08:00
4ea21fa2d0
This change both speeds up specs (less strings to allocate) and helps catch cases where methods in Discourse are mutating inputs. Overall we will be migrating everything to use #frozen_string_literal: true it will take a while, but this is the first and safest move in this direction
26 lines
617 B
Ruby
26 lines
617 B
Ruby
# frozen_string_literal: true
|
|
|
|
require 'rails_helper'
|
|
|
|
RSpec.describe TopicListSerializer do
|
|
let(:user) { Fabricate(:user) }
|
|
|
|
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)
|
|
expect(serialized[:primary_groups]).to eq([])
|
|
expect(serialized[:topic_list][:topics].first[:id]).to eq(topic.id)
|
|
end
|
|
end
|