Пример #1
0
    def test_change_email_form(self):
        user = User.objects.get(pk=1)
        invalid_data_dicts = [
            # No change in e-mail address
            {
                'data': {
                    'email': '*****@*****.**'
                },
                'error':
                ('email', [u'You\'re already known under this email.'])
            },
            # An e-mail address used by another
            {
                'data': {
                    'email': '*****@*****.**'
                },
                'error': ('email', [
                    u'This email is already in use. Please supply a different email.'
                ])
            },
        ]
        for invalid_dict in invalid_data_dicts:
            form = forms.ChangeEmailForm(user, data=invalid_dict['data'])
            self.failIf(form.is_valid())
            self.assertEqual(form.errors[invalid_dict['error'][0]],
                             invalid_dict['error'][1])

        # Test a valid post
        form = forms.ChangeEmailForm(user,
                                     data={'email': '*****@*****.**'})
        self.failUnless(form.is_valid())
Пример #2
0
    def test_change_email_form(self):
        user = get_user_model().objects.get(pk=1)
        invalid_data_dicts = [
            # No change in e-mail address
            {'data': {'email': '*****@*****.**'},
             'error': ('email', ['You\'re already known under this email.'])},
            # An e-mail address used by another
            {'data': {'email': '*****@*****.**'},
             'error': ('email', ['This email is already in use. Please supply a different email.'])},
        ]

        # Override locale settings since we are checking for existence of error
        # messaged written in english. Note: it should not be necessasy but
        # we have experienced such locale issues during tests on Travis builds.
        # See: https://github.com/bread-and-pepper/django-userena/issues/446
        with override('en'):
            for invalid_dict in invalid_data_dicts:
                form = forms.ChangeEmailForm(user, data=invalid_dict['data'])
                self.assertFalse(form.is_valid())
                self.assertEqual(form.errors[invalid_dict['error'][0]],
                                 invalid_dict['error'][1])

        # Test a valid post
        form = forms.ChangeEmailForm(user,
                                     data={'email': '*****@*****.**'})
        self.assertTrue(form.is_valid())