+ <% if (serviceMessage) { %> +
+

+ <%= serviceMessage.title %> +

+

<%= serviceMessage.message %>

+
+ <% } %>

Multiplication tables check for <%= schoolName %>

<%- partial('partials/_gds_session_expiry') %>
    diff --git a/admin/views/service-message/service-message-overview.ejs b/admin/views/service-message/service-message-overview.ejs index 13bd6e7b5f..1f3c73434e 100644 --- a/admin/views/service-message/service-message-overview.ejs +++ b/admin/views/service-message/service-message-overview.ejs @@ -39,9 +39,9 @@
-
+ - +
diff --git a/test/admin-hpa/features/service_manager_message.feature b/test/admin-hpa/features/service_manager_message.feature index f7d0502872..847fe6ad04 100644 --- a/test/admin-hpa/features/service_manager_message.feature +++ b/test/admin-hpa/features/service_manager_message.feature @@ -1,6 +1,7 @@ @service_manager_message Feature: Service manager message + @local Scenario: Service manager can manage service messages Given I am on the manage service message page Then it should match the design @@ -19,4 +20,7 @@ Feature: Service manager message Given I have created a service message Then I should not be able to create another - + Scenario: Service manager should only be able to create one message + Given I have created a service message + When I navigate to school home page as teacher1 + Then service message is displayed as per design diff --git a/test/admin-hpa/features/step_definitions/service_message.rb b/test/admin-hpa/features/step_definitions/service_message.rb index 683b8ada0c..7653c9abe7 100644 --- a/test/admin-hpa/features/step_definitions/service_message.rb +++ b/test/admin-hpa/features/step_definitions/service_message.rb @@ -42,7 +42,7 @@ end When(/^I decide to delete the message$/) do - manage_service_message_page.remove_message.click + manage_service_message_page.remove_service_message end @@ -59,3 +59,14 @@ Then(/^I should not be able to create another$/) do expect(manage_service_message_page.create_message).to be_disabled end + +When(/^I navigate to school home page as teacher1$/) do + visit ENV['ADMIN_BASE_URL'] + '/sign-out' + step 'I am logged in' +end + +Then(/^service message is displayed as per design$/) do + expect(school_landing_page).to have_service_message + expect(school_landing_page.service_message.service_message_heading.text).eql?(@message[:title]) + expect(school_landing_page.service_message.service_message_text.text).eql?(@message[:message]) +end diff --git a/test/admin-hpa/features/support/hooks.rb b/test/admin-hpa/features/support/hooks.rb index 2f3710d44d..48456551df 100644 --- a/test/admin-hpa/features/support/hooks.rb +++ b/test/admin-hpa/features/support/hooks.rb @@ -6,7 +6,7 @@ Before('@service_manager_message') do step 'I am on the manage service message page' - manage_service_message_page.remove_message.click if manage_service_message_page.has_remove_message? + manage_service_message_page.remove_service_message if manage_service_message_page.has_remove_message? visit ENV['ADMIN_BASE_URL'] + '/sign-out' visit ENV['ADMIN_BASE_URL'] end diff --git a/test/admin-hpa/features/support/page_objects/manage_service_message_page.rb b/test/admin-hpa/features/support/page_objects/manage_service_message_page.rb index 1b8cd4afb7..96ba968c6d 100644 --- a/test/admin-hpa/features/support/page_objects/manage_service_message_page.rb +++ b/test/admin-hpa/features/support/page_objects/manage_service_message_page.rb @@ -2,11 +2,24 @@ class ManageServiceMessagePage < SitePrism::Page set_url '/service-message' element :heading, '.govuk-heading-xl', text: 'Service message' - element :info_text, '.govuk-body', text: 'Add or delete a service message for schools.' + element :info_text, '.govuk-body', text: 'Add or delete a global service message for the school homepage' element :create_message, '.govuk-button', text: 'Create service message' element :no_message, '.govuk-body', text: 'No service message created' element :flash_message, '.govuk-info-message' element :message, '.name-text-wrap' element :remove_message, '.govuk-button-as-link', text: 'Remove' + section :modal, '.modal-box.show' do + element :heading, '#modal-title' + element :contents, '.modal-content p' + element :cancel, '#js-modal-cancel-button' + element :confirm, '#js-modal-confirmation-button' + + end + + def remove_service_message + remove_message.click + modal.confirm.click + end + end diff --git a/test/admin-hpa/features/support/page_objects/school_landing_page.rb b/test/admin-hpa/features/support/page_objects/school_landing_page.rb index 76b9a4c0c8..01aa79e68a 100644 --- a/test/admin-hpa/features/support/page_objects/school_landing_page.rb +++ b/test/admin-hpa/features/support/page_objects/school_landing_page.rb @@ -37,5 +37,10 @@ class SchoolLandingPage < SitePrism::Page element :related, '#subsection-title' element :guidance, 'aside.app-related-items nav li a', text: 'Guidance' + section :service_message, '.govuk-warning-message' do + element :service_message_heading, '.govuk-heading-l' + element :service_message_text, '.govuk-body' + end + end