diff options
author | Lukasz Zalewski <lukas@eecs.qmul.ac.uk> | 2012-05-01 21:17:33 +0100 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2012-05-03 08:09:09 +1000 |
commit | 9cd664b2e9a01570d4beaf3dfc9e3f93b9370e63 (patch) | |
tree | ab6f2d3d181cf2e68aee20171c753a7883c53785 /source4/scripting/python/samba/tests/samba_tool/group.py | |
parent | d2c8ebe2c744d8ecd976328cd094267e82d18673 (diff) | |
download | samba-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.py | 19 |
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""" |