summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorJule Anger <ja@sernet.de>2019-08-28 11:06:13 +0200
committerStefan Metzmacher <metze@samba.org>2020-01-21 14:38:45 +0000
commit918d91bb8432ffc0788409ef94fa8b1365be8500 (patch)
tree4290eb3d707bd0b251314d8a2a60537c18a3c9f3 /python
parentd4de2e3192ed9a1e93bc67f3e110dedde339ed98 (diff)
downloadsamba-918d91bb8432ffc0788409ef94fa8b1365be8500.tar.gz
samba-tool tests: add test-case for 'user list --base-dn'
Check if the user list --base-dn / -b command uses a specific base dn. Signed-off-by: Jule Anger <ja@sernet.de> Reviewed-by: Björn Baumbach <bb@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org>
Diffstat (limited to 'python')
-rw-r--r--python/samba/tests/samba_tool/user.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/python/samba/tests/samba_tool/user.py b/python/samba/tests/samba_tool/user.py
index 69876450cd1..65930ed89de 100644
--- a/python/samba/tests/samba_tool/user.py
+++ b/python/samba/tests/samba_tool/user.py
@@ -380,6 +380,30 @@ class UserCmdTestCase(SambaToolCmdTest):
found = self.assertMatch(out, name,
"user '%s' not found" % name)
+
+ def test_list_base_dn(self):
+ base_dn = "CN=Users"
+ (result, out, err) = self.runsubcmd("user", "list", "-b", 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=user)(userAccountControl:%s:=%u))" %
+ (ldb.OID_COMPARATOR_AND, dsdb.UF_NORMAL_ACCOUNT))
+
+ userlist = self.samdb.search(base=self.samdb.normalize_dn_in_domain(base_dn),
+ scope=ldb.SCOPE_SUBTREE,
+ expression=search_filter,
+ attrs=["samaccountname"])
+
+ self.assertTrue(len(userlist) > 0, "no users found in samdb")
+
+ for userobj in userlist:
+ name = str(userobj.get("samaccountname", idx=0))
+ found = self.assertMatch(out, name,
+ "user '%s' not found" % name)
+
def test_list_full_dn(self):
(result, out, err) = self.runsubcmd("user", "list", "--full-dn",
"-H", "ldap://%s" % os.environ["DC_SERVER"],