summaryrefslogtreecommitdiff
path: root/source4/scripting/python/samba/tests/samba_tool/group.py
diff options
context:
space:
mode:
authorLukasz Zalewski <lukas@eecs.qmul.ac.uk>2012-05-01 21:17:33 +0100
committerAndrew Bartlett <abartlet@samba.org>2012-05-03 08:09:09 +1000
commit9cd664b2e9a01570d4beaf3dfc9e3f93b9370e63 (patch)
treeab6f2d3d181cf2e68aee20171c753a7883c53785 /source4/scripting/python/samba/tests/samba_tool/group.py
parentd2c8ebe2c744d8ecd976328cd094267e82d18673 (diff)
downloadsamba-9cd664b2e9a01570d4beaf3dfc9e3f93b9370e63.tar.gz
samba-9cd664b2e9a01570d4beaf3dfc9e3f93b9370e63.tar.bz2
samba-9cd664b2e9a01570d4beaf3dfc9e3f93b9370e63.zip
Extension to the samba-tool group subcommand functionality to allow listing of the members of an AD group
Diffstat (limited to 'source4/scripting/python/samba/tests/samba_tool/group.py')
-rw-r--r--source4/scripting/python/samba/tests/samba_tool/group.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/source4/scripting/python/samba/tests/samba_tool/group.py b/source4/scripting/python/samba/tests/samba_tool/group.py
index be10716f46..b7f751747d 100644
--- a/source4/scripting/python/samba/tests/samba_tool/group.py
+++ b/source4/scripting/python/samba/tests/samba_tool/group.py
@@ -118,6 +118,25 @@ class GroupCmdTestCase(SambaToolCmdTest):
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"],
+ "-U%s%%%s" % (os.environ["DC_USERNAME"],
+ os.environ["DC_PASSWORD"]))
+ self.assertCmdSuccess(result, "Error running listmembers")
+
+ search_filter = "(|(primaryGroupID=513)(memberOf=CN=Domain Users,CN=Users,%s))" % self.samdb.domain_dn()
+
+ grouplist = self.samdb.search(base=self.samdb.domain_dn(),
+ scope=ldb.SCOPE_SUBTREE,
+ expression=search_filter,
+ attrs=["cn"])
+
+ self.assertTrue(len(grouplist) > 0, "no groups found in samdb")
+
+ for groupobj in grouplist:
+ name = groupobj.get("cn", idx=0)
+ found = self.assertMatch(out, name, "group '%s' not found" % name)
def _randomGroup(self, base={}):
"""create a group with random attribute values, you can specify base attributes"""