fix unit tests
This commit is contained in:
parent
9200c67ade
commit
eb18210744
2 changed files with 20 additions and 24 deletions
|
|
@ -46,8 +46,7 @@ testuser
|
|||
"""
|
||||
self.assertMultiLineEqual(actual, expected)
|
||||
self.assertEqual(rv, None)
|
||||
self.session.listUsers.assert_called_once_with(
|
||||
inherited_perm=False, perm=None, userType=koji.USERTYPES['NORMAL'], prefix=None)
|
||||
self.session.listUsers.assert_called_once_with(userType=koji.USERTYPES['NORMAL'])
|
||||
self.session.getAllPerms.assert_not_called()
|
||||
|
||||
@mock.patch('sys.stdout', new_callable=StringIO)
|
||||
|
|
@ -65,8 +64,8 @@ testuser
|
|||
"""
|
||||
self.assertMultiLineEqual(actual, expected)
|
||||
self.assertEqual(rv, None)
|
||||
self.session.listUsers.assert_called_once_with(
|
||||
inherited_perm=False, perm=None, userType=koji.USERTYPES['NORMAL'], prefix='koji')
|
||||
self.session.listUsers.assert_called_once_with(userType=koji.USERTYPES['NORMAL'],
|
||||
prefix='koji')
|
||||
self.session.getAllPerms.assert_not_called()
|
||||
|
||||
@mock.patch('sys.stdout', new_callable=StringIO)
|
||||
|
|
@ -89,8 +88,7 @@ testhost
|
|||
"""
|
||||
self.assertMultiLineEqual(actual, expected)
|
||||
self.assertEqual(rv, None)
|
||||
self.session.listUsers.assert_called_once_with(
|
||||
inherited_perm=False, perm=None, userType=koji.USERTYPES['HOST'], prefix=None)
|
||||
self.session.listUsers.assert_called_once_with(userType=koji.USERTYPES['HOST'])
|
||||
self.session.getAllPerms.assert_not_called()
|
||||
|
||||
def test_list_users_with_usertype_non_existing(self):
|
||||
|
|
@ -99,7 +97,7 @@ testhost
|
|||
anon_handle_list_users,
|
||||
self.options, self.session, arguments,
|
||||
stdout='',
|
||||
stderr="Usertype test doesn't exist\n",
|
||||
stderr="Invalid usertype: test\n",
|
||||
activate_session=None,
|
||||
exit_code=1)
|
||||
self.session.listUsers.assert_not_called()
|
||||
|
|
@ -120,8 +118,8 @@ testhost
|
|||
"""
|
||||
self.assertMultiLineEqual(actual, expected)
|
||||
self.assertEqual(rv, None)
|
||||
self.session.listUsers.assert_called_once_with(
|
||||
inherited_perm=False, perm=None, userType=koji.USERTYPES['HOST'], prefix='test')
|
||||
self.session.listUsers.assert_called_once_with(userType=koji.USERTYPES['HOST'],
|
||||
prefix='test')
|
||||
self.session.getAllPerms.assert_not_called()
|
||||
|
||||
def test_list_users_with_arg(self):
|
||||
|
|
@ -143,7 +141,7 @@ testhost
|
|||
self.assert_system_exit(
|
||||
anon_handle_list_users,
|
||||
self.options, self.session, arguments,
|
||||
stderr="Permission test-non-exist-perm does not exists\n",
|
||||
stderr="Invalid permission: test-non-exist-perm\n",
|
||||
stdout='',
|
||||
activate_session=None,
|
||||
exit_code=1)
|
||||
|
|
@ -157,14 +155,15 @@ testhost
|
|||
arguments = ['--perm', perm]
|
||||
self.session.getAllPerms.return_value = [{'name': 'test-perm'}, {'name': 'test-perm-2'}]
|
||||
self.session.listUsers.return_value = []
|
||||
self.session.hub_version = (1, 34, 1)
|
||||
rv = anon_handle_list_users(self.options, self.session, arguments)
|
||||
actual = stdout.getvalue()
|
||||
expected = """"""
|
||||
self.assertMultiLineEqual(actual, expected)
|
||||
self.assertEqual(rv, None)
|
||||
self.activate_session.assert_called_once_with(self.session, self.options)
|
||||
self.session.listUsers.assert_called_once_with(
|
||||
inherited_perm=False, perm=perm, prefix=None, userType=None)
|
||||
self.session.listUsers.assert_called_once_with(perm=perm,
|
||||
userType=koji.USERTYPES['NORMAL'])
|
||||
self.session.getAllPerms.assert_called_once_with()
|
||||
|
||||
@mock.patch('sys.stdout', new_callable=StringIO)
|
||||
|
|
@ -193,7 +192,7 @@ testuser1234
|
|||
self.assertMultiLineEqual(actual, expected)
|
||||
self.assertEqual(rv, None)
|
||||
self.session.listUsers.assert_called_once_with(
|
||||
inherited_perm=True, perm=perm, prefix=None, userType=None)
|
||||
inherited_perm=True, perm=perm, userType=koji.USERTYPES['NORMAL'])
|
||||
self.session.getAllPerms.assert_called_once_with()
|
||||
self.activate_session.assert_called_once_with(self.session, self.options)
|
||||
|
||||
|
|
@ -220,8 +219,8 @@ testuser1234
|
|||
Options:
|
||||
-h, --help show this help message and exit
|
||||
--usertype=USERTYPE List users that have a given usertype (e.g. NORMAL,
|
||||
HOST, GROUP)
|
||||
HOST, GROUP). Use "any" to get all types
|
||||
--prefix=PREFIX List users that have a given prefix
|
||||
--perm=PERM List users that have a given permission
|
||||
--inherited-perm List of users that inherited specific perm
|
||||
--inherited-perm Consider inherited permissions
|
||||
""" % self.progname)
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ class TestListUsers(unittest.TestCase):
|
|||
self.QueryProcessor = mock.patch('kojihub.kojihub.QueryProcessor',
|
||||
side_effect=self.getQuery).start()
|
||||
self.queries = []
|
||||
self.get_perm_id = mock.patch('kojihub.kojihub.get_perm_id').start()
|
||||
|
||||
def tearDown(self):
|
||||
mock.patch.stopall()
|
||||
|
|
@ -44,13 +45,11 @@ class TestListUsers(unittest.TestCase):
|
|||
query = self.queries[0]
|
||||
self.assertEqual(query.tables, ['users'])
|
||||
self.assertEqual(query.joins, [
|
||||
'LEFT JOIN user_perms ON users.id = user_perms.user_id AND user_perms.active IS TRUE',
|
||||
'LEFT JOIN permissions ON perm_id = permissions.id',
|
||||
'LEFT JOIN user_perms ON users.id = user_perms.user_id',
|
||||
'LEFT JOIN user_krb_principals ON users.id = user_krb_principals.user_id'])
|
||||
self.assertEqual(query.clauses, [
|
||||
'user_perms.active AND permissions.name = %(perm)s',
|
||||
'user_perms.active AND user_perms.perm_id = %(perm_id)s',
|
||||
"users.name ilike %(prefix)s || '%%'",
|
||||
'usertype IN %(userType)s',
|
||||
])
|
||||
|
||||
def test_valid_userType_none_with_perm_inherited_perm_and_prefix(self):
|
||||
|
|
@ -61,14 +60,12 @@ class TestListUsers(unittest.TestCase):
|
|||
self.assertEqual(query.tables, ['users'])
|
||||
self.assertEqual(query.joins, [
|
||||
'LEFT JOIN user_groups ON user_id = users.id AND user_groups.active IS TRUE',
|
||||
'LEFT JOIN user_perms ON users.id = user_perms.user_id AND '
|
||||
'user_perms.active IS TRUE OR group_id =user_perms.user_id',
|
||||
'LEFT JOIN permissions ON perm_id = permissions.id',
|
||||
'LEFT JOIN user_perms ON users.id = user_perms.user_id '
|
||||
'OR group_id = user_perms.user_id',
|
||||
'LEFT JOIN user_krb_principals ON users.id = user_krb_principals.user_id'])
|
||||
self.assertEqual(query.clauses, [
|
||||
'user_perms.active AND permissions.name = %(perm)s',
|
||||
'user_perms.active AND user_perms.perm_id = %(perm_id)s',
|
||||
"users.name ilike %(prefix)s || '%%'",
|
||||
'usertype IN %(userType)s',
|
||||
])
|
||||
|
||||
def test_inherited_perm_without_perm(self):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue