diff --git a/app/controllers/ht_institutions_controller.rb b/app/controllers/ht_institutions_controller.rb index f5d5e6cf..6ba77b85 100644 --- a/app/controllers/ht_institutions_controller.rb +++ b/app/controllers/ht_institutions_controller.rb @@ -12,6 +12,7 @@ class HTInstitutionsController < ApplicationController allowed_affiliations shib_authncontext_class emergency_status + emergency_contact mapto_inst_id mapto_name us diff --git a/test/controllers/ht_institutions_controller_test.rb b/test/controllers/ht_institutions_controller_test.rb index 775419ee..2f4660b1 100644 --- a/test/controllers/ht_institutions_controller_test.rb +++ b/test/controllers/ht_institutions_controller_test.rb @@ -268,6 +268,22 @@ class HTInstitutionsControllerEditTest < ActionDispatch::IntegrationTest assert_equal new_status, HTInstitution.find(inst.inst_id).emergency_status end + test 'Can update emergency contact' do + new_contact = 'another@default.invalid' + inst = create(:ht_institution, emergency_contact: 'somebody@default.invalid') + + patch ht_institution_url inst, params: {'ht_institution' => {'emergency_contact' => new_contact}} + + assert_response :redirect + assert_equal 'update', @controller.action_name + assert_not_empty flash[:notice] + assert_redirected_to ht_institution_path(inst) + follow_redirect! + + assert_match new_contact, @response.body + assert_equal new_contact, HTInstitution.find(inst.inst_id).emergency_contact + end + test 'Blank emergency status sets null' do inst = create(:ht_institution, emergency_status: '^(member)@university.invalid') patch ht_institution_url inst, params: {'ht_institution' => {'emergency_status' => ''}}