Browse Source

refactor: make specs more readable

pull/3349/head
Nat Dean-Lewis 3 weeks ago
parent
commit
be2bebcbd7
  1. 10
      spec/helpers/application_helper_spec.rb
  2. 17
      spec/requests/users_controller_spec.rb

10
spec/helpers/application_helper_spec.rb

@ -9,14 +9,16 @@ RSpec.describe ApplicationHelper do
let(:current_user) { FactoryBot.create(:user) } let(:current_user) { FactoryBot.create(:user) }
describe "govuk_service_navigation_classes" do describe "govuk_service_navigation_classes" do
context "with non-support user" do
context "when no notifications are displayed" do
before do before do
allow(helper).to receive(:notifications_to_display?).and_return(false) allow(helper).to receive(:notifications_to_display?).and_return(false)
end end
context "with non-support user" do
it "returns empty string for blue border (default)" do it "returns empty string for blue border (default)" do
expect(helper.govuk_service_navigation_classes(current_user)).to eq("") expect(helper.govuk_service_navigation_classes(current_user)).to eq("")
end end
end
context "when notifications are displayed" do context "when notifications are displayed" do
before do before do
@ -32,9 +34,15 @@ RSpec.describe ApplicationHelper do
context "with support user" do context "with support user" do
let(:current_user) { FactoryBot.create(:user, :support) } let(:current_user) { FactoryBot.create(:user, :support) }
context "when no notifications are displayed" do
before do
allow(helper).to receive(:notifications_to_display?).and_return(false)
end
it "always returns orange class for orange border" do it "always returns orange class for orange border" do
expect(helper.govuk_service_navigation_classes(current_user)).to eq("app-service-navigation--orange") expect(helper.govuk_service_navigation_classes(current_user)).to eq("app-service-navigation--orange")
end end
end
context "when notifications are displayed" do context "when notifications are displayed" do
before do before do

17
spec/requests/users_controller_spec.rb

@ -76,8 +76,12 @@ RSpec.describe UsersController, type: :request do
end end
describe "title link" do describe "title link" do
it "has GOV.UK header and service navigation both linking to home page for non-support user" do context "for a non-support user" do
before do
sign_in user sign_in user
end
it "has GOV.UK header and service navigation both linking to home page" do
get "/", headers:, params: {} get "/", headers:, params: {}
expect(path).to eq("/") expect(path).to eq("/")
expect(page).to have_content("Welcome back") expect(page).to have_content("Welcome back")
@ -87,10 +91,16 @@ RSpec.describe UsersController, type: :request do
expect(page).to have_css(".govuk-service-navigation__link[href='/']", text: "Submit social housing lettings and sales data (CORE)") expect(page).to have_css(".govuk-service-navigation__link[href='/']", text: "Submit social housing lettings and sales data (CORE)")
end end
end
context "for a support user" do
let(:support_user) { create(:user, :support) }
it "has GOV.UK header and service navigation both linking to home page for support user" do before do
support_user = create(:user, :support)
sign_in support_user sign_in support_user
end
it "has GOV.UK header and service navigation both linking to home page" do
get "/", headers:, params: {} get "/", headers:, params: {}
follow_redirect! follow_redirect!
@ -100,6 +110,7 @@ RSpec.describe UsersController, type: :request do
expect(page).to have_css(".govuk-service-navigation__link[href='/']", text: "Submit social housing lettings and sales data (CORE)") expect(page).to have_css(".govuk-service-navigation__link[href='/']", text: "Submit social housing lettings and sales data (CORE)")
end end
end end
end
describe "#deactivate" do describe "#deactivate" do
it "does not let you see deactivate page" do it "does not let you see deactivate page" do

Loading…
Cancel
Save