Commit 398642fd authored by Jon Lønne's avatar Jon Lønne Committed by Tim Graham
Browse files

Fixed #21627 -- Added unicode_literals to changepassword command.

Fixed a crash when executing changepassword command when the user object
representation contained non-ASCII characters.
parent 318cdc07
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
from __future__ import unicode_literals

import getpass
from optparse import make_option

+12 −0
Original line number Diff line number Diff line
@@ -82,6 +82,18 @@ class ChangepasswordManagementCommandTestCase(TestCase):
        with self.assertRaises(CommandError):
            command.execute("joe", stdout=self.stdout, stderr=self.stderr)

    def test_that_changepassword_command_works_with_nonascii_output(self):
        """
        #21627 -- Executing the changepassword management command should allow
        non-ASCII characters from the User object representation.
        """
        # 'Julia' with accented 'u':
        models.User.objects.create_user(username='J\xfalia', password='qwerty')

        command = changepassword.Command()
        command._get_pass = lambda *args: 'not qwerty'

        command.execute("J\xfalia", stdout=self.stdout)

@skipIfCustomUser
class CreatesuperuserManagementCommandTestCase(TestCase):
+3 −0
Original line number Diff line number Diff line
@@ -11,3 +11,6 @@ Bug fixes

* Prevented the base geometry object of a prepared geometry to be garbage
  collected, which could lead to crash Django (#21662).

* Fixed a crash when executing the :djadmin:`changepassword` command when the
  user object representation contained non-ASCII characters (#21627).