Wrote specs for HasPublicAuthor module

This commit is contained in:
Alberto Miedes Garcés
2017-01-07 18:00:14 +01:00
parent 861a723724
commit f467bb64c7
4 changed files with 26 additions and 2 deletions

View File

@@ -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

View 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

View File

@@ -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

View File

@@ -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