mirror of
https://github.com/discourse/discourse.git
synced 2024-11-24 20:51:50 +08:00
493d437e79
* Remove outdated option
04078317ba
* Use the non-globally exposed RSpec syntax
https://github.com/rspec/rspec-core/pull/2803
* Use the non-globally exposed RSpec syntax, cont
https://github.com/rspec/rspec-core/pull/2803
* Comply to strict predicate matchers
See:
- https://github.com/rspec/rspec-expectations/pull/1195
- https://github.com/rspec/rspec-expectations/pull/1196
- https://github.com/rspec/rspec-expectations/pull/1277
29 lines
967 B
Ruby
29 lines
967 B
Ruby
# frozen_string_literal: true
|
|
|
|
RSpec.describe BasicUserSerializer do
|
|
describe '#as_json' do
|
|
let(:user) { Fabricate.build(:user) }
|
|
let(:serializer) { BasicUserSerializer.new(user, scope: Guardian.new(user), root: false) }
|
|
let(:json) { serializer.as_json }
|
|
|
|
it "returns the username" do
|
|
expect(json[:username]).to eq(user.username)
|
|
expect(json[:name]).to eq(user.name)
|
|
expect(json[:avatar_template]).to eq(user.avatar_template)
|
|
end
|
|
|
|
describe 'extended serializers' do
|
|
let(:post_action) { Fabricate(:post_action, user: user) }
|
|
let(:serializer) { PostActionUserSerializer.new(post_action, scope: Guardian.new(user), root: false) }
|
|
it "returns the user correctly" do
|
|
expect(serializer.user.username).to eq(user.username)
|
|
end
|
|
end
|
|
|
|
it "doesn't return the name it when `enable_names` is false" do
|
|
SiteSetting.enable_names = false
|
|
expect(json[:name]).to eq(nil)
|
|
end
|
|
end
|
|
end
|