adds model specs for archived proposal

This commit is contained in:
Juanjo Bazán
2016-09-12 18:15:18 +02:00
parent fa8458576c
commit acae610995
3 changed files with 28 additions and 14 deletions

View File

@@ -678,7 +678,7 @@ feature 'Proposals' do
feature 'Archived proposals' do
scenario 'Archived proposals show on archived tab' do
scenario 'Show on archived tab' do
create_featured_proposals
archived_proposals = create_archived_proposals
@@ -692,7 +692,7 @@ feature 'Proposals' do
end
end
scenario 'Archived proposals do not show support buttons in index' do
scenario 'Do not show support buttons in index' do
create_featured_proposals
archived_proposals = create_archived_proposals
@@ -708,19 +708,14 @@ feature 'Proposals' do
end
end
scenario 'Archived proposals do not show support buttons in show' do
scenario 'Do not show support buttons in show' do
create_featured_proposals
archived_proposals = create_archived_proposals
visit proposals_path
within("#proposals-list") do
archived_proposals.each do |proposal|
within("#proposal_#{proposal.id}_votes") do
expect(page).to_not have_css(".supports")
expect(page).to have_content "This proposal has been archived and can't collect supports"
end
end
archived_proposals.each do |proposal|
visit proposal_path(proposal)
expect(page).to_not have_css(".supports")
expect(page).to have_content "This proposal has been archived and can't collect supports"
end
end

View File

@@ -811,4 +811,23 @@ describe Proposal do
end
end
describe "archived" do
before(:all) do
@new_proposal = create(:proposal)
@archived_proposal = create(:proposal, created_at: (Setting["months_to_archive_proposals"].to_i + 1).months.ago)
end
it "archived? is true only for proposals created more than n (configured months) ago" do
expect(@new_proposal.archived?).to eq false
expect(@archived_proposal.archived?).to eq true
end
it "scope archived" do
archived = Proposal.archived
expect(archived.size).to eq(1)
expect(archived.first).to eq(@archived_proposal)
end
end
end

View File

@@ -193,8 +193,8 @@ module CommonActions
end
def create_archived_proposals
[create(:proposal, title: "This is an expired proposal", created_at: Time.now - Setting["months_to_archive_proposals"].to_i.month),
create(:proposal, title: "This is an oldest expired proposal", created_at: Time.now - Setting["months_to_archive_proposals"].to_i.month - 2.month)]
[create(:proposal, title: "This is an expired proposal", created_at: Setting["months_to_archive_proposals"].to_i.months.ago),
create(:proposal, title: "This is an oldest expired proposal", created_at: (Setting["months_to_archive_proposals"].to_i + 2).months.ago)]
end
def tag_names(tag_cloud)