From af8d2653a033004f810725fda169f28d2e564f89 Mon Sep 17 00:00:00 2001 From: JG Date: Fri, 1 Jul 2022 07:04:17 +0100 Subject: [PATCH] returned tests back --- spec/features/schemes_spec.rb | 163 ++++++++++++++++++++++++++++++++++ 1 file changed, 163 insertions(+) diff --git a/spec/features/schemes_spec.rb b/spec/features/schemes_spec.rb index 36060461c..064c9a9e6 100644 --- a/spec/features/schemes_spec.rb +++ b/spec/features/schemes_spec.rb @@ -428,6 +428,169 @@ RSpec.describe "Schemes scheme Features" do end context "when changing answers" do + it "displays change links" do + assert_selector "a", text: "Change", count: 12 + end + + context "when changing details" do + before do + click_link("Change", href: "/schemes/#{scheme.id}/details?check_answers=true", match: :first) + end + + it "allows changing details questions" do + expect(page).to have_current_path("/schemes/#{scheme.id}/details?check_answers=true") + + fill_in "Scheme name", with: "Example" + choose "Direct access hostel" + choose "Yes – registered care home providing nursing care" + click_button "Save and continue" + + expect(page).to have_current_path("/schemes/#{scheme.id}/check-answers") + expect(page).to have_content "Example" + expect(page).to have_content "Yes – registered care home providing nursing care" + end + + context "when I press the back button" do + before do + click_link "Back" + end + + it "lets me select the support answers" do + expect(page).to have_current_path("/schemes/#{scheme.id}/check-answers") + expect(page).to have_content "Check your changes before creating this scheme" + end + end + end + + context "when changing primary client group" do + before do + click_link("Change", href: "/schemes/#{scheme.id}/primary-client-group?check_answers=true") + end + + it "allows changing primary-client-group question" do + expect(page).to have_current_path("/schemes/#{scheme.id}/primary-client-group?check_answers=true") + + choose "Older people with support needs" + click_button "Save and continue" + + expect(page).to have_current_path("/schemes/#{scheme.id}/check-answers") + expect(page).to have_content "Older people with support needs" + end + + context "when I press the back button" do + before do + click_link "Back" + end + + it "lets me select the support answers" do + expect(page).to have_current_path("/schemes/#{scheme.id}/check-answers") + expect(page).to have_content "Check your changes before creating this scheme" + end + end + end + + context "when changing confirm secondary group answer" do + before do + click_link("Change", href: "/schemes/#{scheme.id}/confirm-secondary-client-group?check_answers=true") + end + + it "allows changing confirm-secondary-client-group question to yes" do + expect(page).to have_current_path("/schemes/#{scheme.id}/confirm-secondary-client-group?check_answers=true") + + choose "Yes" + click_button "Save and continue" + + expect(page).to have_current_path("/schemes/#{scheme.id}/secondary-client-group?check_answers=true") + + choose "People at risk of domestic violence" + click_button "Save and continue" + + expect(page).to have_current_path("/schemes/#{scheme.id}/check-answers") + expect(page).to have_content "People at risk of domestic violence" + end + + context "when I press the back button" do + before do + click_link "Back" + end + + it "lets me select the support answers" do + expect(page).to have_current_path("/schemes/#{scheme.id}/check-answers") + expect(page).to have_content "Check your changes before creating this scheme" + end + end + end + + context "when allows changing confirm-secondary-client-group question to no" do + before do + click_link("Change", href: "/schemes/#{scheme.id}/confirm-secondary-client-group?check_answers=true") + end + + it "allows changing confirm-secondary-client-group question to no" do + expect(page).to have_current_path("/schemes/#{scheme.id}/confirm-secondary-client-group?check_answers=true") + + choose "No" + click_button "Save and continue" + + expect(page).to have_current_path("/schemes/#{scheme.id}/check-answers") + expect(page).not_to have_content "Secondary client group" + end + end + + context "when changing secondary-client-group question" do + before do + click_link("Change", href: "/schemes/#{scheme.id}/secondary-client-group?check_answers=true") + end + + it "allows changing secondary-client-group question" do + expect(page).to have_current_path("/schemes/#{scheme.id}/secondary-client-group?check_answers=true") + + choose "People at risk of domestic violence" + click_button "Save and continue" + + expect(page).to have_current_path("/schemes/#{scheme.id}/check-answers") + expect(page).to have_content "People at risk of domestic violence" + end + + context "when I press the back button" do + before do + click_link "Back" + end + + it "lets me select the support answers" do + expect(page).to have_current_path("/schemes/#{scheme.id}/check-answers") + expect(page).to have_content "Check your changes before creating this scheme" + end + end + end + + context "when changing support questions" do + before do + click_link("Change", href: "/schemes/#{scheme.id}/support?check_answers=true", match: :first) + end + + it "allows changing support questions" do + expect(page).to have_current_path("/schemes/#{scheme.id}/support?check_answers=true") + + choose "Resettlement support" + choose "Medium stay" + click_button "Save and continue" + + expect(page).to have_current_path("/schemes/#{scheme.id}/location/new") + expect(page).to have_content "Add a location to this scheme" + end + + context "when I press the back button" do + before do + click_link "Back" + end + + it "lets me select the support answers" do + expect(page).to have_current_path("/schemes/#{scheme.id}/check-answers") + expect(page).to have_content "Check your changes before creating this scheme" + end + end + end end end end