diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 810c39ee7..971dd68d9 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -9,7 +9,7 @@ module ApplicationHelper end end - def govuk_header_classes + def govuk_header_classes(current_user) if current_user && current_user.support? "app-header app-header--orange" else @@ -17,7 +17,7 @@ module ApplicationHelper end end - def govuk_phase_banner_tag + def govuk_phase_banner_tag(current_user) if current_user && current_user.support? { colour: "orange", text: "Support beta" } else diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 0aa23c883..e71f828be 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -43,7 +43,7 @@ <%= govuk_skip_link %> <%= govuk_header( - classes: govuk_header_classes, + classes: govuk_header_classes(current_user), service_url: current_user.nil? ? "/" : "/logs", navigation_classes: "govuk-header__navigation--end", ) do |component| @@ -60,7 +60,7 @@ <%= govuk_phase_banner( classes: "govuk-width-container", - tag: govuk_phase_banner_tag, + tag: govuk_phase_banner_tag(current_user), text: "This is a new service – help us improve it by #{feedback_link}".html_safe, ) %> diff --git a/spec/helpers/application_helper_spec.rb b/spec/helpers/application_helper_spec.rb index 8975fbfb0..c0bb02fd2 100644 --- a/spec/helpers/application_helper_spec.rb +++ b/spec/helpers/application_helper_spec.rb @@ -6,31 +6,40 @@ RSpec.describe ApplicationHelper do let(:subsection) { form.get_subsection("household_characteristics") } let(:case_log) { FactoryBot.build(:case_log, :in_progress) } let(:pagy) { nil } + let(:current_user) { FactoryBot.create(:user) } describe "govuk_header_classes" do context "with external user" do - expect(govuk_header_classes) .to eq("app-header") + it "shows the standard app header" do + expect(govuk_header_classes(current_user)).to eq("app-header") + end end context "with internal support user" do let(:current_user) { FactoryBot.create(:user, :support) } - expect(govuk_header_classes) .to eq("app-header app-header--orange") + + it "shows an orange header" do + expect(govuk_header_classes(current_user)).to eq("app-header app-header--orange") + end end end describe "govuk_phase_banner_tag" do context "with external user" do - expect(govuk_phase_banner_tag) .to eq({ - text: "Beta", - }) + it "shows the standard phase tag" do + expect(govuk_phase_banner_tag(current_user)).to eq({ text: "Beta" }) + end end context "with support user" do let(:current_user) { FactoryBot.create(:user, :support) } - expect(govuk_phase_banner_tag) .to eq({ - colour: "orange", - text: "Support beta", - }) + + it "shows an orange phase tag" do + expect(govuk_phase_banner_tag(current_user)).to eq({ + colour: "orange", + text: "Support beta", + }) + end end end