Check texts from the user's point of view

This way we also simplify the code by avoiding instance variables.
This commit is contained in:
Javi Martín
2019-09-29 15:58:54 +02:00
parent 2a95676935
commit 1ebfa04578
3 changed files with 49 additions and 45 deletions

View File

@@ -1,27 +1,29 @@
require "rails_helper"
describe "Admin settings" do
before do
@setting1 = create(:setting)
@setting2 = create(:setting)
@setting3 = create(:setting)
login_as(create(:administrator).user)
end
scenario "Index" do
create(:setting, key: "super.users.first")
create(:setting, key: "super.users.second")
create(:setting, key: "super.users.third")
visit admin_settings_path
expect(page).to have_content @setting1.key
expect(page).to have_content @setting2.key
expect(page).to have_content @setting3.key
expect(page).to have_content "First"
expect(page).to have_content "Second"
expect(page).to have_content "Third"
end
scenario "Update" do
setting = create(:setting, key: "super.users.first")
visit admin_settings_path
within("#edit_setting_#{@setting2.id}") do
fill_in "setting_#{@setting2.id}", with: "Super Users of level 2"
within("#edit_setting_#{setting.id}") do
fill_in "setting_#{setting.id}", with: "Super Users of level 1"
click_button "Update"
end

View File

@@ -1017,16 +1017,14 @@ describe "Debates" do
end
context "Filter" do
context "By geozone" do
let(:california) { Geozone.create(name: "California") }
let(:new_york) { Geozone.create(name: "New York") }
before do
@california = Geozone.create(name: "California")
@new_york = Geozone.create(name: "New York")
@debate1 = create(:debate, geozone: @california)
@debate2 = create(:debate, geozone: @california)
@debate3 = create(:debate, geozone: @new_york)
create(:debate, geozone: california, title: "Bigger sequoias")
create(:debate, geozone: california, title: "Green beach")
create(:debate, geozone: new_york, title: "Sully monument")
end
pending "From map" do
@@ -1040,9 +1038,9 @@ describe "Debates" do
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).not_to have_content(@debate3.title)
expect(page).to have_content("Bigger sequoias")
expect(page).to have_content("Green beach")
expect(page).not_to have_content("Sully monument")
end
end
@@ -1055,24 +1053,27 @@ describe "Debates" do
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).not_to have_content(@debate3.title)
expect(page).to have_content("Bigger sequoias")
expect(page).to have_content("Green beach")
expect(page).not_to have_content("Sully monument")
end
end
pending "From debate" do
visit debate_path(@debate1)
debate = create(:debate, geozone: california, title: "Surf college")
visit debate_path(debate)
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).not_to have_content(@debate3.title)
expect(page).to have_css(".debate", count: 3)
expect(page).to have_content("Surf college")
expect(page).to have_content("Bigger sequoias")
expect(page).to have_content("Green beach")
expect(page).not_to have_content("Sully monument")
end
end

View File

@@ -1654,16 +1654,14 @@ describe "Proposals" do
end
context "Filter" do
context "By geozone" do
let(:california) { Geozone.create(name: "California") }
let(:new_york) { Geozone.create(name: "New York") }
before do
@california = Geozone.create(name: "California")
@new_york = Geozone.create(name: "New York")
@proposal1 = create(:proposal, geozone: @california)
@proposal2 = create(:proposal, geozone: @california)
@proposal3 = create(:proposal, geozone: @new_york)
create(:proposal, geozone: california, title: "Bigger sequoias")
create(:proposal, geozone: california, title: "Green beach")
create(:proposal, geozone: new_york, title: "Sully monument")
end
scenario "From map" do
@@ -1677,9 +1675,9 @@ describe "Proposals" do
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).not_to have_content(@proposal3.title)
expect(page).to have_content("Bigger sequoias")
expect(page).to have_content("Green beach")
expect(page).not_to have_content("Sully monument")
end
end
@@ -1692,24 +1690,27 @@ describe "Proposals" do
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).not_to have_content(@proposal3.title)
expect(page).to have_content("Bigger sequoias")
expect(page).to have_content("Green beach")
expect(page).not_to have_content("Sully monument")
end
end
scenario "From proposal" do
visit proposal_path(@proposal1)
proposal = create(:proposal, geozone: california, title: "Surf college")
visit proposal_path(proposal)
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).not_to have_content(@proposal3.title)
expect(page).to have_css(".proposal", count: 3)
expect(page).to have_content("Surf college")
expect(page).to have_content("Bigger sequoias")
expect(page).to have_content("Green beach")
expect(page).not_to have_content("Sully monument")
end
end