diff --git a/keychain/__manifest__.py b/keychain/__manifest__.py index 0e99a5c..d8ec190 100644 --- a/keychain/__manifest__.py +++ b/keychain/__manifest__.py @@ -1,10 +1,9 @@ -# -*- coding: utf-8 -*- # Copyright <2016> Akretion # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { "name": "Keychain", "summary": "Store accounts and credentials", - "version": "10.0.1.0.0", + "version": "11.0.1.0.0", "category": "Uncategorized", "website": "https://akretion.com/", "author": "Akretion, Odoo Community Association (OCA)", @@ -17,6 +16,7 @@ }, "depends": [ "base_setup", + "base_sparse_field", ], "data": [ "security/ir.model.access.csv", diff --git a/keychain/models/keychain.py b/keychain/models/keychain.py index a94ffb2..0f1647a 100644 --- a/keychain/models/keychain.py +++ b/keychain/models/keychain.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # © 2016 Akretion Mourad EL HADJ MIMOUNE, David BEAL, Raphaël REVERDY # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). from functools import wraps @@ -153,13 +152,13 @@ class KeychainAccount(models.Model): @classmethod def _encode_password(cls, data, env): cipher = cls._get_cipher(env) - return cipher.encrypt(str((data or '').encode('UTF-8'))) + return cipher.encrypt((data or '').encode()) @classmethod def _decode_password(cls, data): cipher = cls._get_cipher() try: - return unicode(cipher.decrypt(str(data)), 'UTF-8') + return str(cipher.decrypt(data.encode()), 'UTF-8') except InvalidToken: raise Warning(_( "Password has been encrypted with a different " diff --git a/keychain/models/keychain_backend.py b/keychain/models/keychain_backend.py index d494693..f79cd1f 100644 --- a/keychain/models/keychain_backend.py +++ b/keychain/models/keychain_backend.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # © 2016 Akretion Sebastien Beau # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). diff --git a/keychain/tests/test_keychain.py b/keychain/tests/test_keychain.py index d5fd522..ed12fd4 100644 --- a/keychain/tests/test_keychain.py +++ b/keychain/tests/test_keychain.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # © 2016 Akretion Raphaël REVERDY # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). @@ -62,7 +61,7 @@ class TestKeychain(TransactionCase): def test_password(self): """It should encrypt passwords.""" account = self._create_account() - passwords = ('', '12345', 'djkqfljfqm', u"""&é"'(§è!ç""") + passwords = ('', '12345', 'djkqfljfqm', """&é"'(§è!ç""") for password in passwords: account.clear_password = password diff --git a/keychain/tests/test_keychain_backend.py b/keychain/tests/test_keychain_backend.py index 4b38b71..289f533 100644 --- a/keychain/tests/test_keychain_backend.py +++ b/keychain/tests/test_keychain_backend.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # © 2016 Akretion Mourad EL HADJ MIMOUNE # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). @@ -57,25 +56,25 @@ class TestKeychain(TransactionCase): backend = self.keychain_backend.new(vals) backend._inverse_keychain() account = backend._get_existing_keychain() - self.assertEqual( - account.data, '{"a": "o", "c": "b"}', + self.assertDictEqual( + account.get_data(), {"a": "o", "c": "b"}, 'Account data is not correct') backend._inverse_password() self.assertTrue(account, 'Account was not created') self.assertEqual( - account.clear_password, u'test', + account.clear_password, 'test', 'Account clear password is not correct') - self.assertEqual(backend.password, u'test') + self.assertEqual(backend.password, 'test') backend._compute_password() self.assertEqual( - backend.password, u'******', 'Backend password was not computed') + backend.password, '******', 'Backend password was not computed') self.assertEqual( - account.name, u'backend_test dev', 'Account name is not correct') + account.name, 'backend_test dev', 'Account name is not correct') self.assertEqual( - account.namespace, u'test_backend', + account.namespace, 'test_backend', 'Account namespace is not correct') self.assertEqual( - account.environment, u'dev', 'Account environment is not correct') + account.environment, 'dev', 'Account environment is not correct') self.assertEqual( account.technical_name, '%s,%s' % (backend._name, backend.id), 'Account technical_name is not correct')