diff --git a/pagure/lib/login.py b/pagure/lib/login.py
index 95a8fa3..516ae12 100644
--- a/pagure/lib/login.py
+++ b/pagure/lib/login.py
@@ -61,8 +61,8 @@ def generate_hashed_value(password):
if not isinstance(password, six.text_type):
raise ValueError("Password supplied is not unicode text")
- return b'$2$' + bcrypt.hashpw(password.encode('utf-8'),
- bcrypt.gensalt())
+ return (b'$2$' + bcrypt.hashpw(password.encode('utf-8'),
+ bcrypt.gensalt())).decode('utf-8')
def check_password(entered_password, user_password, seed=None):
diff --git a/tests/test_pagure_flask_ui_login.py b/tests/test_pagure_flask_ui_login.py
index f000729..6a95f07 100644
--- a/tests/test_pagure_flask_ui_login.py
+++ b/tests/test_pagure_flask_ui_login.py
@@ -242,13 +242,13 @@ class PagureFlaskLogintests(tests.SimplePagureTest):
else:
self.assertIn(
'', output_text)
+ 'href="/logout/?next=http://localhost/dashboard/projects">', output_text)
# Make the password invalid
self.session.commit()
item = pagure.lib.search_user(self.session, username='foouser')
self.assertEqual(item.user, 'foouser')
- self.assertTrue(item.password.startswith(b'$2$'))
+ self.assertTrue(item.password.startswith('$2$'))
# Remove the $2$
item.password = item.password[3:]
@@ -259,7 +259,7 @@ class PagureFlaskLogintests(tests.SimplePagureTest):
self.session.commit()
item = pagure.lib.search_user(self.session, username='foouser')
self.assertEqual(item.user, 'foouser')
- self.assertFalse(item.password.startswith(b'$2$'))
+ self.assertFalse(item.password.startswith('$2$'))
# Try login again
output = self.app.post(
@@ -275,8 +275,8 @@ class PagureFlaskLogintests(tests.SimplePagureTest):
self.session.commit()
item = pagure.lib.search_user(self.session, username='foouser')
self.assertEqual(item.user, 'foouser')
- self.assertFalse(item.password.startswith(b'$1$'))
- self.assertFalse(item.password.startswith(b'$2$'))
+ self.assertFalse(item.password.startswith('$1$'))
+ self.assertFalse(item.password.startswith('$2$'))
# V1 password
password = '%s%s' % ('barpass', None)
@@ -307,7 +307,7 @@ class PagureFlaskLogintests(tests.SimplePagureTest):
self.session.commit()
item = pagure.lib.search_user(self.session, username='foouser')
self.assertEqual(item.user, 'foouser')
- self.assertTrue(item.password.startswith(b'$2$'))
+ self.assertTrue(item.password.startswith('$2$'))
# We have set the REMOTE_ADDR in the request, so this works with all
# versions of Flask.
@@ -584,7 +584,7 @@ class PagureFlaskLogintests(tests.SimplePagureTest):
else:
self.assertIn(
'', output_text)
+ 'href="/logout/?next=http://localhost/dashboard/projects">', output_text)
# Check the user
item = pagure.lib.search_user(self.session, username='foobar')
@@ -607,7 +607,7 @@ class PagureFlaskLogintests(tests.SimplePagureTest):
self.assertEqual(3, len(items))
item = pagure.lib.search_user(self.session, username='foouser')
self.assertEqual(item.user, 'foouser')
- self.assertTrue(item.password.startswith(b'$2$'))
+ self.assertTrue(item.password.startswith('$2$'))
self.assertNotEqual(item.token, None)
output = self.app.get(
@@ -689,7 +689,7 @@ class PagureFlaskLogintests(tests.SimplePagureTest):
item = pagure.lib.search_user(self.session, username='foouser')
self.assertEqual(item.user, 'foouser')
self.assertNotEqual(item.token, None)
- self.assertTrue(item.password.startswith(b'$2$'))
+ self.assertTrue(item.password.startswith('$2$'))
old_password = item.password
token = item.token
@@ -784,7 +784,7 @@ class PagureFlaskLogintests(tests.SimplePagureTest):
item = pagure.lib.search_user(self.session, username='foouser')
self.assertEqual(item.user, 'foouser')
self.assertNotEqual(item.token, None)
- self.assertTrue(item.password.startswith(b'$2$'))
+ self.assertTrue(item.password.startswith('$2$'))
item.token = None
self.session.add(item)
self.session.commit()
diff --git a/tests/test_pagure_lib_login.py b/tests/test_pagure_lib_login.py
index 8bc8c27..c9f0002 100644
--- a/tests/test_pagure_lib_login.py
+++ b/tests/test_pagure_lib_login.py
@@ -51,7 +51,7 @@ class PagureLibLogintests(tests.Modeltests):
def test_generate_hashed_value(self):
''' Test pagure.lib.login.generate_hashed_value. '''
password = pagure.lib.login.generate_hashed_value('foo')
- self.assertTrue(password.startswith(b'$2$'))
+ self.assertTrue(password.startswith('$2$'))
self.assertEqual(len(password), 63)
def test_check_password(self):