From 312d00df90fc40c1c4c934945c3c73053b6ea18a Mon Sep 17 00:00:00 2001 From: Mohammad Rizwan Yusuf Date: Fri, 20 Mar 2020 12:51:13 +0530 Subject: [PATCH] Test if schema-compat-entry-attribute is set This is to ensure if said entry is set after installation. It also checks if compat tree is disable. related: https://pagure.io/freeipa/issue/8193 Signed-off-by: Mohammad Rizwan Yusuf Reviewed-By: Francois Cami Reviewed-By: Kaleemullah Siddiqui --- .../test_integration/test_installation.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/ipatests/test_integration/test_installation.py b/ipatests/test_integration/test_installation.py index c40603b3d..830203289 100644 --- a/ipatests/test_integration/test_installation.py +++ b/ipatests/test_integration/test_installation.py @@ -20,6 +20,7 @@ from cryptography.hazmat.primitives import hashes from ipalib import x509 from ipalib.constants import DOMAIN_LEVEL_0 +from ipapython.dn import DN from ipaplatform.constants import constants from ipaplatform.osinfo import osinfo from ipaplatform.paths import paths @@ -541,6 +542,24 @@ class TestInstallMaster(IntegrationTest): def test_install_master(self): tasks.install_master(self.master, setup_dns=False) + def test_schema_compat_attribute_and_tree_disable(self): + """Test if schema-compat-entry-attribute is set + + This is to ensure if said entry is set after installation. + It also checks if compat tree is disable. + + related: https://pagure.io/freeipa/issue/8193 + """ + conn = self.master.ldap_connect() + entry = conn.get_entry(DN( # pylint: disable=no-member + "cn=groups,cn=Schema Compatibility,cn=plugins,cn=config")) + + entry_list = list(entry['schema-compat-entry-attribute']) + value = (r'ipaexternalmember=%deref_r(' + '"member","ipaexternalmember")') + assert value in entry_list + assert 'schema-compat-lookup-nsswitch' not in entry_list + def test_install_kra(self): tasks.install_kra(self.master, first_instance=True)