Wrote specs for HasPublicAuthor module
This commit is contained in:
@@ -5,7 +5,8 @@ describe Comment do
|
||||
let(:comment) { build(:comment) }
|
||||
|
||||
it_behaves_like "public_voters_stats"
|
||||
|
||||
it_behaves_like "has_public_author"
|
||||
|
||||
it "is valid" do
|
||||
expect(comment).to be_valid
|
||||
end
|
||||
|
||||
21
spec/models/concerns/has_public_author_spec.rb
Normal file
21
spec/models/concerns/has_public_author_spec.rb
Normal file
@@ -0,0 +1,21 @@
|
||||
require 'spec_helper'
|
||||
|
||||
shared_examples_for 'has_public_author' do
|
||||
let(:model) { described_class }
|
||||
|
||||
describe 'public_author' do
|
||||
it "returns author if author's activity is public" do
|
||||
author = create(:user, public_activity: true)
|
||||
authored_element = create(model.to_s.underscore.to_sym, author: author)
|
||||
|
||||
expect(authored_element.public_author).to eq(author)
|
||||
end
|
||||
|
||||
it "returns nil if author's activity is private" do
|
||||
author = create(:user, public_activity: false)
|
||||
authored_element = create(model.to_s.underscore.to_sym, author: author)
|
||||
|
||||
expect(authored_element.public_author).to be_nil
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -5,7 +5,8 @@ describe Debate do
|
||||
let(:debate) { build(:debate) }
|
||||
|
||||
it_behaves_like "public_voters_stats"
|
||||
|
||||
it_behaves_like "has_public_author"
|
||||
|
||||
it "should be valid" do
|
||||
expect(debate).to be_valid
|
||||
end
|
||||
|
||||
@@ -5,6 +5,7 @@ describe Proposal do
|
||||
let(:proposal) { build(:proposal) }
|
||||
|
||||
it_behaves_like "public_voters_stats"
|
||||
it_behaves_like "has_public_author"
|
||||
|
||||
it "should be valid" do
|
||||
expect(proposal).to be_valid
|
||||
|
||||
Reference in New Issue
Block a user