- <%= t("proposal_ballots.successfull",
- voting: link_to(t("proposal_ballots.voting"), proposal_ballots_path)).html_safe %>
-
- <% else %>
-
-
+
+ <% if @proposal.successfull? %>
+
+ <%= t("proposal_ballots.successfull",
+ voting: link_to(t("proposal_ballots.voting"), proposal_ballots_path)).html_safe %>
+
+ <% else %>
+
<%= render 'votes',
{ proposal: @proposal, vote_url: vote_proposal_path(@proposal, value: 'yes') } %>
-
- <% end %>
+ <% end %>
+
<%= t("proposals.show.share") %>
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 8373771cf..56aa19bbe 100755
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -302,7 +302,6 @@ en:
hot_score: most active
most_commented: most commented
relevance: relevance
- archived: Archived
retired_proposals: Retired proposals
retired_proposals_link: "Proposals retired by the author"
retired_links:
diff --git a/config/locales/es.yml b/config/locales/es.yml
index d7736c4e5..657c4c0d0 100755
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -302,7 +302,6 @@ es:
hot_score: Más activas hoy
most_commented: Más comentadas
relevance: Más relevantes
- archived: Archivadas
retired_proposals: Propuestas retiradas
retired_proposals_link: "Propuestas retiradas por sus autores"
retired_links:
diff --git a/db/dev_seeds.rb b/db/dev_seeds.rb
index 61b5f5060..d9d6d2483 100644
--- a/db/dev_seeds.rb
+++ b/db/dev_seeds.rb
@@ -149,7 +149,7 @@ tags = Faker::Lorem.words(25)
description = "
#{Faker::Lorem.paragraphs.join('
')}
"
proposal = Proposal.create!(author: author,
title: Faker::Lorem.sentence(3).truncate(60),
- question: Faker::Lorem.sentence(3),
+ question: Faker::Lorem.sentence(3) + "?",
summary: Faker::Lorem.sentence(3),
responsible_name: Faker::Name.name,
external_url: Faker::Internet.url,
@@ -168,7 +168,7 @@ tags = ActsAsTaggableOn::Tag.where(kind: 'category')
description = "
#{Faker::Lorem.paragraphs.join('
')}
"
proposal = Proposal.create!(author: author,
title: Faker::Lorem.sentence(3).truncate(60),
- question: Faker::Lorem.sentence(3),
+ question: Faker::Lorem.sentence(3) + "?",
summary: Faker::Lorem.sentence(3),
responsible_name: Faker::Name.name,
external_url: Faker::Internet.url,
diff --git a/spec/features/proposal_ballots_spec.rb b/spec/features/proposal_ballots_spec.rb
new file mode 100644
index 000000000..e7bf310b1
--- /dev/null
+++ b/spec/features/proposal_ballots_spec.rb
@@ -0,0 +1,58 @@
+# coding: utf-8
+require 'rails_helper'
+
+feature 'Proposal ballots' do
+
+ scenario 'Banner shows in proposal index' do
+ create_featured_proposals
+
+ visit proposals_path
+ expect(page).to_not have_css("#next-voting")
+ expect(page).to have_css("#featured-proposals")
+
+ create_successfull_proposals
+
+ visit proposals_path
+
+ expect(page).to have_css("#next-voting")
+ expect(page).to_not have_css("#featured-proposals")
+ end
+
+ scenario 'Successfull proposals do not show support buttons in index' do
+ successfull_proposals = create_successfull_proposals
+
+ visit proposals_path
+
+ successfull_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 reached the required supports"
+ end
+ end
+ end
+
+ scenario 'Successfull proposals do not show support buttons in show' do
+ successfull_proposals = create_successfull_proposals
+
+ successfull_proposals.each do |proposal|
+ visit proposal_path(proposal)
+ within("#proposal_#{proposal.id}_votes") do
+ expect(page).to_not have_css(".supports")
+ expect(page).to have_content "This proposal has reached the required supports"
+ end
+ end
+ end
+
+ scenario 'Successfull proposals are listed in the proposal ballots index' do
+ successfull_proposals = create_successfull_proposals
+
+ visit proposal_ballots_path
+
+ successfull_proposals.each do |proposal|
+ expect(page).to have_content(proposal.title)
+ expect(page).to have_content(proposal.question)
+ end
+ end
+
+end
+
diff --git a/spec/support/common_actions.rb b/spec/support/common_actions.rb
index 60d6641bf..8eaa49d4b 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_successfull_proposals
+ [create(:proposal, title: "Winter is coming", question: "Do you speak it?", cached_votes_up: Proposal.votes_needed_for_success + 100),
+ create(:proposal, title: "Fire and blood", question: "You talking to me?", cached_votes_up: Proposal.votes_needed_for_success + 1)]
+ end
+
def tag_names(tag_cloud)
tag_cloud.tags.map(&:name)
end