From: Jule Anger Date: Tue, 27 Aug 2019 10:00:15 +0000 (+0200) Subject: samba-tool tests: add test-case for 'group list --base-dn' X-Git-Tag: samba-4.12.0rc1~27 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bced03b0d1af2055a7b32b5658a746d6a0505ede;p=thirdparty%2Fsamba.git samba-tool tests: add test-case for 'group list --base-dn' Check if the group list --base-dn / -b command uses a specific base dn. Signed-off-by: Jule Anger Reviewed-by: Björn Baumbach Reviewed-by: Ralph Boehme --- diff --git a/python/samba/tests/samba_tool/group.py b/python/samba/tests/samba_tool/group.py index f72295fdf18..c5c9cdb1d34 100644 --- a/python/samba/tests/samba_tool/group.py +++ b/python/samba/tests/samba_tool/group.py @@ -194,6 +194,28 @@ class GroupCmdTestCase(SambaToolCmdTest): found = self.assertMatch(out, name, "group '%s' not found" % name) + def test_list_base_dn(self): + base_dn = "CN=Users" + (result, out, err) = self.runsubcmd("group", "list", "--base-dn", base_dn, + "-H", "ldap://%s" % os.environ["DC_SERVER"], + "-U%s%%%s" % (os.environ["DC_USERNAME"], + os.environ["DC_PASSWORD"])) + self.assertCmdSuccess(result, out, err, "Error running list") + + search_filter = "(objectClass=group)" + + grouplist = self.samdb.search(base=self.samdb.normalize_dn_in_domain(base_dn), + scope=ldb.SCOPE_SUBTREE, + expression=search_filter, + attrs=["name"]) + + self.assertTrue(len(grouplist) > 0, "no groups found in samdb") + + for groupobj in grouplist: + name = str(groupobj.get("name", idx=0)) + found = self.assertMatch(out, name, + "group '%s' not found" % name) + def test_listmembers(self): (result, out, err) = self.runsubcmd("group", "listmembers", "Domain Users", "-H", "ldap://%s" % os.environ["DC_SERVER"],