harbor/tests/apitests/python/test_ldap_admin_role.py
danfengliu 4bc7444602 Add UI test for LDAP admin group dn setting
1. Verify LDAP group admin in UI;
2. Update LDAP group admin need to verify the AdminRoleInAuth, get current user will return this field as true.

Signed-off-by: danfengliu <danfengl@vmware.com>
2020-10-14 11:05:09 +08:00

51 lines
1.7 KiB
Python

from __future__ import absolute_import
import unittest
from testutils import harbor_server
from testutils import TEARDOWN
from testutils import ADMIN_CLIENT
from library.user import User
from library.project import Project
from library.configurations import Configurations
class TestLdapAdminRole(unittest.TestCase):
@classmethod
def setUp(self):
url = ADMIN_CLIENT["endpoint"]
self.conf= Configurations()
self.user = User()
self.project = Project()
self.USER_MIKE=dict(endpoint = url, username = "mike", password = "zhu88jie")
@classmethod
def tearDown(self):
self.project.delete_project(TestLdapAdminRole.project_id, **self.USER_MIKE)
print("Case completed")
def testLdapAdminRole(self):
"""
Test case:
LDAP Admin Role
Test step and expected result:
1. Set LDAP Auth configurations;
2. Create a new public project(PA) by LDAP user mike;
3. Check project is created successfully;
4. Check mike's SysAdminFlag is false, but AdminRoleInAuth should be true
5. Delete project(PA);
"""
self.conf.set_configurations_of_ldap(ldap_group_admin_dn="cn=harbor_users,ou=groups,dc=example,dc=com", **ADMIN_CLIENT)
TestLdapAdminRole.project_id, project_name = self.project.create_project(metadata = {"public": "false"}, **self.USER_MIKE)
self.project.check_project_name_exist(name=project_name, **self.USER_MIKE)
_user = self.user.get_user_current(**self.USER_MIKE)
print( _user)
self.assertFalse(_user.sysadmin_flag)
self.assertTrue(_user.admin_role_in_auth)
if __name__ == '__main__':
unittest.main()