Projet

Général

Profil

0001-manager-unset-verified-flag-on-a-modified-email-addr.patch

Paul Marillonnet, 07 mars 2019 13:41

Télécharger (2,08 ko)

Voir les différences:

Subject: [PATCH 1/2] manager: unset verified flag on a modified email address
 (#30740)

 src/authentic2/manager/user_views.py |  3 +++
 tests/test_manager.py                | 20 ++++++++++++++++++++
 2 files changed, 23 insertions(+)
src/authentic2/manager/user_views.py
337 337
        return self._get_next_url()
338 338

  
339 339
    def form_valid(self, form):
340
        if 'email' in form.changed_data:
341
            self.object.email_verified = False
342
            self.object.save()
340 343
        response = super(UserEditView, self).form_valid(form)
341 344
        hooks.call_hooks('event', name='manager-edit-user', user=self.request.user,
342 345
                         instance=form.instance, form=form)
tests/test_manager.py
851 851
            assert user_add.form.get(option).value == {False:None, True:'on'}. \
852 852
                    get(get_ou_model().USER_ADD_PASSWD_POLICY_VALUES[policy][i])
853 853
        app.get('/logout/').form.submit()
854

  
855

  
856
def test_manager_edit_user_email_verified(app, simple_user, superuser_or_admin):
857
    simple_user.email_verified = True
858
    simple_user.save()
859

  
860
    url = u'/manage/users/%s/edit/' % simple_user.pk
861
    login(app, superuser_or_admin, '/manage/')
862
    User = get_user_model()
863

  
864
    user = User.objects.get(id=simple_user.id)
865
    assert user.email_verified
866

  
867
    response = app.get(url)
868
    form = response.form
869
    form.set('email', 'new.email@gmail.net')
870
    response = form.submit().follow()
871

  
872
    user = User.objects.get(id=simple_user.id)
873
    assert not user.email_verified
854
-