def test_when_duplicated_email_then_send_link_via_login_successful( settings_with_reset_password_verification, api_view_provider, api_factory, user, user2_with_user_email): request = api_factory.create_post_request({ 'login': user.username, }) with capture_sent_emails() as sent_emails, capture_time() as timer: response = api_view_provider.view_func(request) assert_response_is_ok(response) assert_one_email_sent(sent_emails) sent_email = sent_emails[0] assert_valid_send_link_email(sent_email, user, timer)
def test_ok_when_faulty_verification_template_selector( settings_with_register_verification, api_view_provider, api_factory): data = _get_register_user_data(password='******') request = api_factory.create_post_request(data) with capture_sent_emails() as sent_emails, capture_time() as timer: response = api_view_provider.view_func(request) assert_response_status_is_created(response) user = _get_register_response_user(response) assert_user_state_matches_data(user, data) assert_one_email_sent(sent_emails) sent_email = sent_emails[0] assert_valid_register_verification_email(sent_email, user, timer)
def test_ok_when_custom_verification_templates_selector( settings_with_reset_password_verification, api_view_provider, api_factory, user): request = api_factory.create_post_request({ 'login': user.username, }) with capture_sent_emails() as sent_emails, capture_time() as timer: response = api_view_provider.view_func(request) assert_response_is_ok(response) assert_one_email_sent(sent_emails) sent_email = sent_emails[0] assert sent_email.subject == "Generic verification link was sent" assert sent_email.body.startswith("Click URL to verify:") assert_valid_send_link_email(sent_email, user, timer)
def test_when_user_with_foreign_key_then_register_succeeds( settings_with_register_verification, settings_with_user_with_user_type, api_view_provider, api_factory): data = _get_register_user_data(password='******') user_type = UserType.objects.create(name='custorme') data['user_type'] = user_type.id request = api_factory.create_post_request(data) with capture_sent_emails() as sent_emails, capture_time() as timer: response = api_view_provider.view_func(request) assert_response_status_is_created(response) user = _get_register_response_user(response) assert_user_state_matches_data(user, data) assert_one_email_sent(sent_emails) sent_email = sent_emails[0] assert_valid_register_verification_email(sent_email, user, timer)
def test_ok_when_custom_verification_template_selector( settings_with_register_verification, api_view_provider, api_factory): data = _get_register_user_data(password='******') request = api_factory.create_post_request(data) with capture_sent_emails() as sent_emails, capture_time() as timer: response = api_view_provider.view_func(request) assert_response_status_is_created(response) user = _get_register_response_user(response) assert_user_state_matches_data(user, data) assert_one_email_sent(sent_emails) sent_email = sent_emails[0] assert sent_email.subject == "Generic verification link was sent" assert sent_email.body.startswith("Click URL to verify:") assert_valid_register_verification_email(sent_email, user, timer)
def test_ok_when_custom_verification_templates_selector( settings_with_register_email_verification, user, email_change, api_view_provider, api_factory): new_email = email_change.new_value request = api_factory.create_post_request({ 'email': new_email, }) force_authenticate(request, user=user) with capture_sent_emails() as sent_emails, capture_time() as timer: response = api_view_provider.view_func(request) assert_response_is_ok(response) assert_one_email_sent(sent_emails) sent_email = sent_emails[0] assert sent_email.subject == "Generic verification link was sent" assert sent_email.body.startswith("Click URL to verify:") assert_valid_register_email_verification_email(sent_email, user, new_email, timer) user.refresh_from_db() assert user.email == email_change.old_value