diff --git a/app/views/shared/_geozone.html.erb b/app/views/shared/_geozone.html.erb index 491cec031..7bfdd07a3 100644 --- a/app/views/shared/_geozone.html.erb +++ b/app/views/shared/_geozone.html.erb @@ -1,3 +1,3 @@ - <%= geozone_name(geozonable) %> + <%= link_to geozone_name(geozonable), proposals_path(search: geozone_name(geozonable)) %> diff --git a/spec/features/debates_spec.rb b/spec/features/debates_spec.rb index 69d764c69..c6876fc67 100644 --- a/spec/features/debates_spec.rb +++ b/spec/features/debates_spec.rb @@ -889,11 +889,12 @@ feature 'Debates' do context "By geozone" do background do - geozone1 = Geozone.create(name: "California") - geozone2 = Geozone.create(name: "New York") + @california = Geozone.create(name: "California") + @new_york = Geozone.create(name: "New York") - @debate1 = create(:debate, geozone: geozone1) - @debate2 = create(:debate, geozone: geozone2) + @debate1 = create(:debate, geozone: @california) + @debate2 = create(:debate, geozone: @california) + @debate3 = create(:debate, geozone: @new_york) end pending "From map" do @@ -906,8 +907,10 @@ feature 'Debates' do end within("#debates") do - expect(page).to have_css('.debate', count: 1) + expect(page).to have_css('.debate', count: 2) expect(page).to have_content(@debate1.title) + expect(page).to have_content(@debate2.title) + expect(page).to_not have_content(@debate3.title) end end @@ -918,12 +921,29 @@ feature 'Debates' do within("#geozones") do click_link "California" end - within("#debates") do - expect(page).to have_css('.debate', count: 1) + expect(page).to have_css('.debate', count: 2) expect(page).to have_content(@debate1.title) + expect(page).to have_content(@debate2.title) + expect(page).to_not have_content(@debate3.title) end end + + pending "From debate" do + visit debate_path(@debate1) + + within("#geozone") do + click_link "California" + end + + within("#debates") do + expect(page).to have_css('.debate', count: 2) + expect(page).to have_content(@debate1.title) + expect(page).to have_content(@debate2.title) + expect(page).to_not have_content(@debate3.title) + end + end + end end diff --git a/spec/features/proposals_spec.rb b/spec/features/proposals_spec.rb index 0310e6311..08b99463c 100644 --- a/spec/features/proposals_spec.rb +++ b/spec/features/proposals_spec.rb @@ -1047,11 +1047,12 @@ feature 'Proposals' do context "By geozone" do background do - geozone1 = Geozone.create(name: "California") - geozone2 = Geozone.create(name: "New York") + @california = Geozone.create(name: "California") + @new_york = Geozone.create(name: "New York") - @proposal1 = create(:proposal, geozone: geozone1) - @proposal2 = create(:proposal, geozone: geozone2) + @proposal1 = create(:proposal, geozone: @california) + @proposal2 = create(:proposal, geozone: @california) + @proposal3 = create(:proposal, geozone: @new_york) end scenario "From map" do @@ -1064,8 +1065,10 @@ feature 'Proposals' do end within("#proposals") do - expect(page).to have_css('.proposal', count: 1) + expect(page).to have_css('.proposal', count: 2) expect(page).to have_content(@proposal1.title) + expect(page).to have_content(@proposal2.title) + expect(page).to_not have_content(@proposal3.title) end end @@ -1076,12 +1079,29 @@ feature 'Proposals' do within("#geozones") do click_link "California" end - within("#proposals") do - expect(page).to have_css('.proposal', count: 1) + expect(page).to have_css('.proposal', count: 2) expect(page).to have_content(@proposal1.title) + expect(page).to have_content(@proposal2.title) + expect(page).to_not have_content(@proposal3.title) end end + + scenario "From proposal" do + visit proposal_path(@proposal1) + + within("#geozone") do + click_link "California" + end + + within("#proposals") do + expect(page).to have_css('.proposal', count: 2) + expect(page).to have_content(@proposal1.title) + expect(page).to have_content(@proposal2.title) + expect(page).to_not have_content(@proposal3.title) + end + end + end end