diff options
author | Eli Collins <elic@assurancetechnologies.com> | 2019-11-11 20:30:03 -0500 |
---|---|---|
committer | Eli Collins <elic@assurancetechnologies.com> | 2019-11-11 20:30:03 -0500 |
commit | 1d9f7f3b058fbaf78c3c7895ad51cb8fb99dbc0c (patch) | |
tree | c498320d0234ca824b4c8b79f2cd20338103ddb3 | |
parent | 5cadf38764107e5b7c436421288ad770354626b4 (diff) | |
download | passlib-1d9f7f3b058fbaf78c3c7895ad51cb8fb99dbc0c.tar.gz |
argon2, parsehash tests -- fix some PY2 edge cases detected by CI
-rw-r--r-- | passlib/handlers/argon2.py | 4 | ||||
-rw-r--r-- | passlib/tests/utils.py | 6 |
2 files changed, 8 insertions, 2 deletions
diff --git a/passlib/handlers/argon2.py b/passlib/handlers/argon2.py index 7e3dfac..2ac4b1b 100644 --- a/passlib/handlers/argon2.py +++ b/passlib/handlers/argon2.py @@ -30,7 +30,7 @@ from passlib import exc from passlib.crypto.digest import MAX_UINT32 from passlib.utils import classproperty, to_bytes from passlib.utils.binary import b64s_encode, b64s_decode -from passlib.utils.compat import u, unicode, bascii_to_str, PY2 +from passlib.utils.compat import u, unicode, bascii_to_str, uascii_to_str, PY2 import passlib.utils.handlers as uh # local __all__ = [ @@ -434,7 +434,7 @@ class _Argon2Common(uh.SubclassBackendMixin, uh.ParallelismMixin, # NOTE: 'keyid' param currently not supported return "$argon2%s$%sm=%d,t=%d,p=%d%s$%s$%s" % ( - self.type, + uascii_to_str(self.type), vstr, self.memory_cost, self.rounds, diff --git a/passlib/tests/utils.py b/passlib/tests/utils.py index 16d3825..a62006f 100644 --- a/passlib/tests/utils.py +++ b/passlib/tests/utils.py @@ -2521,9 +2521,15 @@ class HandlerCase(TestCase): # but all else should be the same result3 = handler.parsehash(hash, sanitize=True) correct3 = result.copy() + if PY2: + # silence warning about bytes & unicode not comparing + # (sanitize may convert bytes into base64 text) + warnings.filterwarnings("ignore", ".*unequal comparison failed to convert.*", + category=UnicodeWarning) for key in ("salt", "checksum"): if key in result3: self.assertNotEqual(result3[key], correct3[key]) + self.assertTrue(result3[key].endswith("**"), "%r is masked" % result3[key]) correct3[key] = result3[key] self.assertEqual(result3, correct3) |