@@ -325,6 +325,7 @@ def test_send_email_to_new_registration_user_access(
325325 RegistrationUserAccessFactory (registration = registration , email = "delete1@email.com" )
326326 RegistrationUserAccessFactory (registration = registration , email = "delete2@email.com" )
327327 assert len (registration .registration_user_accesses .all ()) == 2
328+ mail .outbox .clear ()
328329
329330 registration_data = {
330331 "event" : {"@id" : get_event_url (registration .event .id )},
@@ -366,6 +367,7 @@ def test_email_is_not_sent_if_registration_user_access_email_is_not_updated(
366367 email = user_email ,
367368 is_substitute_user = is_substitute_user ,
368369 )
370+ mail .outbox .clear ()
369371
370372 registration_data = {
371373 "event" : {"@id" : get_event_url (registration .event .id )},
@@ -397,29 +399,68 @@ def test_email_is_sent_if_registration_user_access_email_is_updated(
397399 email = user_email ,
398400 is_substitute_user = is_substitute_user ,
399401 )
402+ mail .outbox .clear ()
400403
401- registration_data = {
402- "event" : {"@id" : get_event_url (registration .event .id )},
403- "registration_user_accesses" : [
404- {
405- "id" : registration_user_access .id ,
406- "email" : edited_user_email ,
407- "is_substitute_user" : is_substitute_user ,
408- }
409- ],
410- }
404+ with translation .override ("fi" ):
405+ registration .event .type_id = Event .TypeId .GENERAL
406+ registration .event .name = event_name
407+ registration .event .save ()
408+
409+ registration_data = {
410+ "event" : {"@id" : get_event_url (registration .event .id )},
411+ "registration_user_accesses" : [
412+ {
413+ "id" : registration_user_access .id ,
414+ "email" : edited_user_email ,
415+ "is_substitute_user" : is_substitute_user ,
416+ }
417+ ],
418+ }
419+
420+ assert_update_registration (user_api_client , registration .id , registration_data )
421+ # assert that the email after update was sent
422+ registration_user_access .refresh_from_db ()
423+ assert_invitation_email_is_sent (
424+ edited_user_email , event_name , registration_user_access
425+ )
426+
427+
428+ @pytest .mark .parametrize ("is_substitute_user" , [False , True ])
429+ @pytest .mark .django_db
430+ def test_email_is_sent_if_is_substitute_value_of_registration_user_access_is_updated (
431+ registration , user_api_client , is_substitute_user
432+ ):
433+ user_email = hel_email
434+
435+ registration_user_access = RegistrationUserAccessFactory (
436+ registration = registration ,
437+ email = user_email ,
438+ is_substitute_user = is_substitute_user ,
439+ )
440+ mail .outbox .clear ()
411441
412442 with translation .override ("fi" ):
413443 registration .event .type_id = Event .TypeId .GENERAL
414444 registration .event .name = event_name
415445 registration .event .save ()
416446
447+ registration_data = {
448+ "event" : {"@id" : get_event_url (registration .event .id )},
449+ "registration_user_accesses" : [
450+ {
451+ "id" : registration_user_access .id ,
452+ "email" : hel_email ,
453+ "is_substitute_user" : False if is_substitute_user else True ,
454+ }
455+ ],
456+ }
457+
417458 assert_update_registration (user_api_client , registration .id , registration_data )
418459
419- # assert that the email was sent
460+ # assert that the email after update was sent
420461 registration_user_access .refresh_from_db ()
421462 assert_invitation_email_is_sent (
422- edited_user_email , event_name , registration_user_access
463+ user_email , event_name , registration_user_access
423464 )
424465
425466
0 commit comments