Przeglądaj źródła

HUE-2816 [core] Fixed tests broken by HUE-2796

Chris Conner 10 lat temu
rodzic
commit
eae8ce1

+ 6 - 0
apps/useradmin/src/useradmin/test_ldap.py

@@ -54,6 +54,9 @@ def test_useradmin_ldap_user_group_membership_sync():
 
   # Set up LDAP tests to use a LdapTestConnection instead of an actual LDAP connection
   ldap_access.CACHED_LDAP_CONN = LdapTestConnection()
+  # Make sure LDAP groups exist or they won't sync
+  import_ldap_groups(ldap_access.CACHED_LDAP_CONN, 'TestUsers', import_members=False, import_members_recursive=False, sync_users=False, import_by_dn=False)
+  import_ldap_groups(ldap_access.CACHED_LDAP_CONN, 'Test Administrators', import_members=False, import_members_recursive=False, sync_users=False, import_by_dn=False)
 
   reset = []
 
@@ -444,6 +447,9 @@ def test_useradmin_ldap_user_integration():
     assert_equal(get_profile(hue_user).creation_method, str(UserProfile.CreationMethod.HUE))
     assert_equal(hue_user.first_name, 'Different')
 
+    # Make sure LDAP groups exist or they won't sync
+    import_ldap_groups(ldap_access.CACHED_LDAP_CONN, 'TestUsers', import_members=False, import_members_recursive=False, sync_users=False, import_by_dn=False)
+    import_ldap_groups(ldap_access.CACHED_LDAP_CONN, 'Test Administrators', import_members=False, import_members_recursive=False, sync_users=False, import_by_dn=False)
     # Try importing a user and sync groups
     import_ldap_users(ldap_access.CACHED_LDAP_CONN, 'curly', sync_groups=True, import_by_dn=False)
     curly = User.objects.get(username='curly')

+ 6 - 0
apps/useradmin/src/useradmin/test_ldap_deprecated.py

@@ -46,6 +46,9 @@ def test_useradmin_ldap_user_group_membership_sync():
 
   # Set up LDAP tests to use a LdapTestConnection instead of an actual LDAP connection
   ldap_access.CACHED_LDAP_CONN = LdapTestConnection()
+  # Make sure LDAP groups exist or they won't sync
+  import_ldap_groups(ldap_access.CACHED_LDAP_CONN, 'TestUsers', import_members=False, import_members_recursive=False, sync_users=False, import_by_dn=False)
+  import_ldap_groups(ldap_access.CACHED_LDAP_CONN, 'Test Administrators', import_members=False, import_members_recursive=False, sync_users=False, import_by_dn=False)
 
   try:
     # Import curly who is part of TestUsers and Test Administrators
@@ -406,6 +409,9 @@ def test_useradmin_ldap_user_integration():
     assert_equal(get_profile(hue_user).creation_method, str(UserProfile.CreationMethod.HUE))
     assert_equal(hue_user.first_name, 'Different')
 
+    # Make sure LDAP groups exist or they won't sync
+    import_ldap_groups(ldap_access.CACHED_LDAP_CONN, 'TestUsers', import_members=False, import_members_recursive=False, sync_users=False, import_by_dn=False)
+    import_ldap_groups(ldap_access.CACHED_LDAP_CONN, 'Test Administrators', import_members=False, import_members_recursive=False, sync_users=False, import_by_dn=False)
     # Try importing a user and sync groups
     import_ldap_users(ldap_access.CACHED_LDAP_CONN, 'curly', sync_groups=True, import_by_dn=False)
     curly = User.objects.get(username='curly')

+ 1 - 1
apps/useradmin/src/useradmin/tests.py

@@ -89,7 +89,7 @@ class LdapTestConnection(object):
       data = [self._instance.users.get(username) for username in usernames]
     return data
 
-  def find_groups(self, groupname_pattern, search_attr=None, group_name_attr=None, find_by_dn=False, scope=ldap.SCOPE_SUBTREE):
+  def find_groups(self, groupname_pattern, search_attr=None, group_name_attr=None, group_member_attr=None, group_filter=None, find_by_dn=False, scope=ldap.SCOPE_SUBTREE):
     """ Return all groups in the system with parents and children """
     if find_by_dn:
       data = filter(lambda attrs: attrs['dn'] == groupname_pattern, self._instance.groups.values())

+ 4 - 0
desktop/core/src/desktop/auth/views_test.py

@@ -30,6 +30,7 @@ from hadoop import pseudo_hdfs4
 
 from useradmin import ldap_access
 from useradmin.tests import LdapTestConnection
+from useradmin.views import import_ldap_groups
 
 
 class TestLoginWithHadoop(PseudoHdfsTestBase):
@@ -208,6 +209,9 @@ class TestLdapLogin(PseudoHdfsTestBase):
   def test_import_groups_on_login(self):
     self.reset.append(conf.LDAP.SYNC_GROUPS_ON_LOGIN.set_for_testing(True))
     ldap_access.CACHED_LDAP_CONN = LdapTestConnection()
+    # Make sure LDAP groups exist or they won't sync
+    import_ldap_groups(ldap_access.CACHED_LDAP_CONN, 'TestUsers', import_members=False, import_members_recursive=False, sync_users=False, import_by_dn=False)
+    import_ldap_groups(ldap_access.CACHED_LDAP_CONN, 'Test Administrators', import_members=False, import_members_recursive=False, sync_users=False, import_by_dn=False)
 
     response = self.c.post('/accounts/login/', {
       'username': "curly",