summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorJr Aquino <jr.aquino@citrix.com>2011-01-07 15:29:00 -0800
committerRob Crittenden <rcritten@redhat.com>2011-01-12 11:40:47 -0500
commit1ea31a0cff783a4d0c76089c8bbe98137ae3288e (patch)
tree82766ecb544e403dba631fbb1042890931bca873 /tests
parent974287895ec5dbb377a65a83c050f088df79ffb7 (diff)
downloadfreeipa-1ea31a0cff783a4d0c76089c8bbe98137ae3288e.tar.gz
freeipa-1ea31a0cff783a4d0c76089c8bbe98137ae3288e.tar.xz
freeipa-1ea31a0cff783a4d0c76089c8bbe98137ae3288e.zip
fix sudorule runas user/groups https://fedorahosted.org/freeipa/ticket/570
Diffstat (limited to 'tests')
-rw-r--r--tests/test_xmlrpc/test_sudorule_plugin.py55
1 files changed, 55 insertions, 0 deletions
diff --git a/tests/test_xmlrpc/test_sudorule_plugin.py b/tests/test_xmlrpc/test_sudorule_plugin.py
index 89f0af3a..4c3ba5a2 100644
--- a/tests/test_xmlrpc/test_sudorule_plugin.py
+++ b/tests/test_xmlrpc/test_sudorule_plugin.py
@@ -38,6 +38,7 @@ class test_sudorule(XMLRPC_test):
test_user = u'sudorule_test_user'
test_external_user = u'external_test_user'
test_group = u'sudorule_test_group'
+ test_external_group = u'external_test_group'
test_host = u'sudorule._test_host'
test_external_host = u'external._test_host'
test_hostgroup = u'sudorule_test_hostgroup'
@@ -264,6 +265,60 @@ class test_sudorule(XMLRPC_test):
entry = ret['result']
assert 'externaluser' not in entry
+ def test_a_sudorule_add_runasexternaluser(self):
+ """
+ Test adding an external runasuser to Sudo rule using
+ `xmlrpc.sudorule_add_runasuser`.
+ """
+ ret = api.Command['sudorule_add_runasuser'](
+ self.rule_name, user=self.test_external_user
+ )
+ assert ret['completed'] == 1
+ failed = ret['failed']
+ entry = ret['result']
+ assert_attr_equal(entry, 'ipasudorunasextuser', self.test_external_user)
+
+ def test_b_sudorule_remove_runasexternaluser(self):
+ """
+ Test removing an external runasuser from Sudo rule using
+ `xmlrpc.sudorule_remove_runasuser'.
+ """
+ ret = api.Command['sudorule_remove_runasuser'](
+ self.rule_name, user=self.test_external_user
+ )
+ assert ret['completed'] == 1
+ failed = ret['failed']
+ entry = ret['result']
+ assert 'ipasudorunasextuser' not in entry
+
+ def test_a_sudorule_add_runasexternalgroup(self):
+ """
+ Test adding an external runasgroup to Sudo rule using
+ `xmlrpc.sudorule_add_runasgroup`.
+ """
+ ret = api.Command['sudorule_add_runasgroup'](
+ self.rule_name, group=self.test_external_group
+ )
+ print ret
+ assert ret['completed'] == 1
+ failed = ret['failed']
+ entry = ret['result']
+ assert_attr_equal(entry, 'ipasudorunasextgroup', self.test_external_group)
+
+ def test_b_sudorule_remove_runasexternalgroup(self):
+ """
+ Test removing an external runasgroup from Sudo rule using
+ `xmlrpc.sudorule_remove_runasgroup'.
+ """
+ ret = api.Command['sudorule_remove_runasgroup'](
+ self.rule_name, group=self.test_external_group
+ )
+ print ret
+ assert ret['completed'] == 1
+ failed = ret['failed']
+ entry = ret['result']
+ assert 'ipasudorunasextgroup' not in entry
+
def test_a_sudorule_add_option(self):
"""
Test adding an option to Sudo rule using