def test_external_nopassword(self): userid = 'custom-user' password = '******' roles = [ Role.of(name='data_reader', bucket='default'), Role.of(name='data_writer', bucket='default') ] # password with external generates argument error self.assertRaises(ArgumentError, self.um.upsert_user, User(username=userid, password=password, roles=roles), domain=AuthDomain.External) self.assertRaises(ArgumentError, self.um.upsert_user, User(username=userid, password=password, roles=None), domain=AuthDomain.External) self.assertRaises(ArgumentError, self.um.upsert_user, User(username=userid, password=password, roles=[]), domain=AuthDomain.External) try: self.um.upsert_user(User(username=userid, password=None, roles=roles), domain=AuthDomain.External) except ArgumentError: raise except: pass
def test_create_list_get_remove_internal_user(self): userid = 'custom-user' password = '******' roles = [ Role.of(name='data_reader', bucket='default'), Role.of(name='data_writer', bucket='default') ] # add user self.um.upsert_user(User(username=userid, roles=roles, password=password), domain=AuthDomain.Local) # get all users users = self.um.get_all_users(AuthDomain.Local) self.assertIsNotNone(users) # get single user user = self.um.get_user(userid, AuthDomain.Local) self.assertIsNotNone(user) # remove user self.um.drop_user(userid, AuthDomain.Local)
def test_groups(self): fresh_group = Group(name='qweqwe', roles={Role.of(name='admin')}) if UG_WORKING: self.um.upsert_group(fresh_group) result = self.um.get_group('qweqwe') admin_role = Role.of(name='admin') expected_roles = {admin_role} actual_roles = result.roles self.assertSetEqual(expected_roles, actual_roles)
def test_invalid_domain_raises_argument_error(self): userid = 'custom-user' password = '******' roles = [Role.of(name='data_reader', bucket='default'), Role.of(name='data_writer', bucket='default')] # invalid domain generates argument error self.assertRaises(InvalidArgumentException, self.um.get_all_users, None) self.assertRaises(InvalidArgumentException, self.um.get_user, userid, None) self.assertRaises(InvalidArgumentException, self.um.upsert_user, User(username=userid, password=password, roles=roles), domain=None) self.assertRaises(InvalidArgumentException, self.um.drop_user, userid, None)
def setUp(self, *args, **kwargs): if self.config.mock_enabled: raise SkipTest('Real server must be used for admin tests') super(UserManagementTests, self).setUp(*args, **kwargs) self.um = self.cluster.users() if self.supports_groups(): self.um.upsert_group(Group('qweqwe', roles={Role.of(name='admin')}))