Merge pull request #1094 from consul/admin-summary-second-table
displays correct admin info for proposals with supports
This commit is contained in:
@@ -14,11 +14,11 @@ module SpendingProposalsHelper
|
||||
end
|
||||
end
|
||||
|
||||
def spending_proposal_count_for_geozone(scope, geozone)
|
||||
def spending_proposal_count_for_geozone(scope, geozone, second_scope)
|
||||
if geozone.present?
|
||||
geozone.spending_proposals.send(scope).count
|
||||
geozone.spending_proposals.send(scope).send(second_scope).count
|
||||
else
|
||||
SpendingProposal.where(geozone: nil).send(scope).count
|
||||
SpendingProposal.where(geozone: nil).send(scope).send(second_scope).count
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -13,19 +13,19 @@
|
||||
<%= geozone.present? ? geozone.name : t("geozones.none") %>
|
||||
</td>
|
||||
<td class="finished-and-feasible-count">
|
||||
<%= spending_proposal_count_for_geozone("finished_and_feasible", geozone) %>
|
||||
<%= spending_proposal_count_for_geozone("finished_and_feasible", geozone, second_scope) %>
|
||||
</td>
|
||||
<td class="finished-and-unfeasible-count">
|
||||
<%= spending_proposal_count_for_geozone("finished_and_unfeasible", geozone) %>
|
||||
<%= spending_proposal_count_for_geozone("finished_and_unfeasible", geozone, second_scope) %>
|
||||
</td>
|
||||
<td class="finished-count">
|
||||
<%= spending_proposal_count_for_geozone("valuation_finished", geozone) %>
|
||||
<%= spending_proposal_count_for_geozone("valuation_finished", geozone, second_scope) %>
|
||||
</td>
|
||||
<td class="in-evaluation-count">
|
||||
<%= spending_proposal_count_for_geozone("valuating", geozone) %>
|
||||
<%= spending_proposal_count_for_geozone("valuating", geozone, second_scope) %>
|
||||
</td>
|
||||
<td class="total-count">
|
||||
<%= spending_proposal_count_for_geozone("all", geozone) %>
|
||||
<%= spending_proposal_count_for_geozone("all", geozone, second_scope) %>
|
||||
</td>
|
||||
<td class="total-price text-center">
|
||||
<%= number_to_currency(price) %>
|
||||
|
||||
@@ -4,7 +4,15 @@
|
||||
<% end %>
|
||||
|
||||
<h2><%= t("admin.spending_proposals.summary.title") %></h2>
|
||||
<%= render 'summary_table', spending_proposals: @spending_proposals %>
|
||||
<div id="all-proposals">
|
||||
<%= render 'summary_table',
|
||||
spending_proposals: @spending_proposals,
|
||||
second_scope: 'all' %>
|
||||
</div>
|
||||
|
||||
<div id="proposals-with-votes">
|
||||
<h2><%= t("admin.spending_proposals.summary.title_proposals_with_supports") %></h2>
|
||||
<%= render 'summary_table', spending_proposals: @spending_proposals_with_supports %>
|
||||
<%= render 'summary_table',
|
||||
spending_proposals: @spending_proposals_with_supports,
|
||||
second_scope: 'with_supports' %>
|
||||
</div>
|
||||
@@ -516,11 +516,11 @@ feature 'Admin spending proposals' do
|
||||
new_york = create(:geozone)
|
||||
|
||||
proposal1 = create(:spending_proposal, geozone: nil, feasible: false, valuation_finished: true)
|
||||
proposal1 = create(:spending_proposal, geozone: nil, feasible: false, valuation_finished: true)
|
||||
proposal2 = create(:spending_proposal, geozone: nil, feasible: false, valuation_finished: true)
|
||||
proposal3 = create(:spending_proposal, geozone: california, feasible: false, valuation_finished: true)
|
||||
proposal4 = create(:spending_proposal, geozone: california, feasible: false, valuation_finished: true)
|
||||
proposal5 = create(:spending_proposal, geozone: new_york, feasible: false, valuation_finished: true)
|
||||
proposal5 = create(:spending_proposal, geozone: new_york, feasible: true, valuation_finished: true)
|
||||
proposal6 = create(:spending_proposal, geozone: new_york, feasible: true, valuation_finished: true)
|
||||
|
||||
visit admin_spending_proposals_path
|
||||
|
||||
@@ -546,11 +546,11 @@ feature 'Admin spending proposals' do
|
||||
new_york = create(:geozone)
|
||||
|
||||
proposal1 = create(:spending_proposal, geozone: nil, valuation_finished: true)
|
||||
proposal1 = create(:spending_proposal, geozone: nil, valuation_finished: true)
|
||||
proposal2 = create(:spending_proposal, geozone: nil, valuation_finished: true)
|
||||
proposal3 = create(:spending_proposal, geozone: california, valuation_finished: true)
|
||||
proposal4 = create(:spending_proposal, geozone: california, valuation_finished: true)
|
||||
proposal5 = create(:spending_proposal, geozone: new_york, valuation_finished: true)
|
||||
proposal5 = create(:spending_proposal, geozone: new_york, valuation_finished: false)
|
||||
proposal6 = create(:spending_proposal, geozone: new_york, valuation_finished: false)
|
||||
|
||||
visit admin_spending_proposals_path
|
||||
|
||||
@@ -576,7 +576,7 @@ feature 'Admin spending proposals' do
|
||||
new_york = create(:geozone)
|
||||
|
||||
proposal1 = create(:spending_proposal, geozone: nil, valuation_finished: false)
|
||||
proposal1 = create(:spending_proposal, geozone: nil, valuation_finished: false)
|
||||
proposal2 = create(:spending_proposal, geozone: nil, valuation_finished: false)
|
||||
proposal3 = create(:spending_proposal, geozone: california, valuation_finished: false)
|
||||
proposal4 = create(:spending_proposal, geozone: california, valuation_finished: false)
|
||||
proposal5 = create(:spending_proposal, geozone: new_york, valuation_finished: false)
|
||||
@@ -607,6 +607,59 @@ feature 'Admin spending proposals' do
|
||||
end
|
||||
end
|
||||
|
||||
context "Second table" do
|
||||
|
||||
scenario "should not display proposals without votes" do
|
||||
california = create(:geozone)
|
||||
new_york = create(:geozone)
|
||||
|
||||
proposal1 = create(:spending_proposal, geozone: nil, valuation_finished: true)
|
||||
proposal2 = create(:spending_proposal, geozone: nil, valuation_finished: true)
|
||||
proposal3 = create(:spending_proposal, geozone: california, valuation_finished: true)
|
||||
proposal4 = create(:spending_proposal, geozone: california, valuation_finished: true)
|
||||
proposal5 = create(:spending_proposal, geozone: new_york, valuation_finished: true)
|
||||
proposal6 = create(:spending_proposal, geozone: new_york, valuation_finished: false)
|
||||
|
||||
|
||||
create(:vote, votable: proposal1)
|
||||
create(:vote, votable: proposal2)
|
||||
create(:vote, votable: proposal3)
|
||||
|
||||
visit admin_spending_proposals_path
|
||||
|
||||
click_link "Summary"
|
||||
|
||||
expect(page).to have_content "Summary for investment projects"
|
||||
|
||||
within("#all-proposals") do
|
||||
within("#geozone_all_city") do
|
||||
expect(page).to have_css(".finished-count", text: 2)
|
||||
end
|
||||
|
||||
within("#geozone_#{california.id}") do
|
||||
expect(page).to have_css(".finished-count", text: 2)
|
||||
end
|
||||
|
||||
within("#geozone_#{new_york.id}") do
|
||||
expect(page).to have_css(".finished-count", text: 1)
|
||||
end
|
||||
end
|
||||
|
||||
within("#proposals-with-votes") do
|
||||
within("#geozone_all_city") do
|
||||
expect(page).to have_css(".finished-count", text: 2)
|
||||
end
|
||||
|
||||
within("#geozone_#{california.id}") do
|
||||
expect(page).to have_css(".finished-count", text: 1)
|
||||
end
|
||||
|
||||
expect(page).to_not have_css("#geozone_#{new_york.id}")
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user