diff --git a/app/views/proposals/index.html.erb b/app/views/proposals/index.html.erb index 6f6516890..9e0da05a8 100644 --- a/app/views/proposals/index.html.erb +++ b/app/views/proposals/index.html.erb @@ -30,7 +30,7 @@ <% if has_banners %> <%= render "shared/banner" %> <% end %> - + <% if @featured_proposals.present? %>
diff --git a/spec/features/proposals_spec.rb b/spec/features/proposals_spec.rb index c7be4956b..70dcfec9f 100644 --- a/spec/features/proposals_spec.rb +++ b/spec/features/proposals_spec.rb @@ -676,6 +676,56 @@ feature 'Proposals' do end end + feature 'Archived proposals' do + + scenario 'Archived proposals show on archived tab' do + create_featured_proposals + archived_proposals = create_archived_proposals + + visit proposals_path + click_link 'Archived' + + within("#proposals-list") do + archived_proposals.each do |proposal| + expect(page).to have_content(proposal.title) + end + end + end + + scenario 'Archived proposals do not show support buttons in index' 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 + end + end + + scenario 'Archived proposals 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 + end + end + + end + context "Search" do context "Basic search" do diff --git a/spec/support/common_actions.rb b/spec/support/common_actions.rb index 60d6641bf..2043c470f 100644 --- a/spec/support/common_actions.rb +++ b/spec/support/common_actions.rb @@ -192,6 +192,11 @@ module CommonActions create(:debate, :with_confidence_score, cached_votes_up: 80)] end + def create_archived_proposals + [create(:proposal, title: "This is an expired proposal", created_at: Time.now - 12.month), + create(:proposal, title: "This is an oldest expired proposal", created_at: Time.now - 14.month)] + end + def tag_names(tag_cloud) tag_cloud.tags.map(&:name) end