Exemple #1
0
    def test_clean_normalize_email_address_as_username(self):  # type: ignore
        # Unicode characters that look the same but are different ones.
        email_address_original_ohm = 'iamtheΩ@example.com'  # U+2126 OHM SIGN
        email_address_normalized_omega = 'iamtheΩ@example.com'  # U+03A9 GREEK CAPITAL LETTER OMEGA

        user = User(email_address=email_address_original_ohm)

        # Apply normalization.
        user.clean()
        email_address = user.get_username()
        self.assertNotEqual(email_address, email_address_original_ohm)
        self.assertEqual(email_address, email_address_normalized_omega)
Exemple #2
0
 def test_builtin_user_isactive(self):  # type: ignore
     user_creator = User.objects.create_user(
         email_address='*****@*****.**')
     user = User(email_address='*****@*****.**', created_by=user_creator)
     # is_active is true by default
     self.assertIs(user.is_active, True)
     user.is_active = False
     # note: need to set a password or 'full_clean()' raises a ValidationError.
     user.set_unusable_password()
     user.save()
     user_fetched = User.objects.get(pk=user.pk)
     # the is_active flag is saved
     self.assertFalse(user_fetched.is_active)
Exemple #3
0
    def test_created_by(self):  # type: ignore
        user_creator = User.objects.create_user(
            email_address='*****@*****.**')
        user = User(email_address='*****@*****.**', created_by=user_creator)
        user.set_password('foo')
        user.save()
        self.assertEqual(user.created_by, user_creator)

        # Test field attribute 'related_name'.
        self.assertListEqual(list(user_creator.users_created.all()), [user])
Exemple #4
0
 def test_eq(self):  # type: ignore
     self.assertEqual(self.user, AnonymousUser())
     self.assertNotEqual(self.user,
                         User('super', '*****@*****.**', 'super'))
Exemple #5
0
    def test_deactivate(self):  # type: ignore
        user_creator = User.objects.create_user(
            email_address='*****@*****.**')
        user = User(email_address='*****@*****.**', created_by=user_creator)
        # note: need to set a password or 'full_clean()' raises a ValidationError.
        user.set_password('foo')
        user.save()

        self.assertTrue(user.is_active)
        self.assertIsNone(user.deactivated_at)

        user.deactivate()

        user.refresh_from_db()
        self.assertFalse(user.is_active)
        deactivated_at_1 = user.deactivated_at
        self.assertIsNotNone(user.deactivated_at)

        user.deactivate()

        user.refresh_from_db()
        self.assertFalse(user.is_active)
        deactivated_at_2 = user.deactivated_at
        self.assertEqual(deactivated_at_1, deactivated_at_2)
Exemple #6
0
 def test_default_email(self):  # type: ignore
     user = User()
     self.assertEqual(user.get_email_field_name(), 'email_address')
Exemple #7
0
 def test_user_clean_normalize_email(self):  # type: ignore
     user = User(email_address='*****@*****.**')
     user.clean()
     self.assertEqual(user.email_address, '*****@*****.**')