summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorPetr Viktorin <pviktori@redhat.com>2012-04-10 07:44:21 -0400
committerRob Crittenden <rcritten@redhat.com>2012-04-09 21:54:07 -0400
commit1431c80b3c2a256bb6c10cf042f7671004695a9f (patch)
treedef20d8af18b202cac8bd3007044972617cdd268 /tests
parent6e5c8b25bffa2b62a2233c0347c2ed3dd081d4a9 (diff)
downloadfreeipa-1431c80b3c2a256bb6c10cf042f7671004695a9f.tar.gz
freeipa-1431c80b3c2a256bb6c10cf042f7671004695a9f.tar.xz
freeipa-1431c80b3c2a256bb6c10cf042f7671004695a9f.zip
Convert --setattr values for attributes marked no_update
Attribute Patrams marked no_update never get cloned to Update commands, and thus never receive the `attribute` flag. This makes their `encode` method a no-op, which meant they don't get properly encoded when used with --setattr, making the --setattr fail. Introduce a `force` argument to encode, which overrides checking for the attribute flag. Use this in set/add/delattr normalization, where we know we are dealing with attributes. https://fedorahosted.org/freeipa/ticket/2616
Diffstat (limited to 'tests')
-rw-r--r--tests/test_xmlrpc/test_attr.py2
-rw-r--r--tests/test_xmlrpc/test_hbac_plugin.py21
2 files changed, 22 insertions, 1 deletions
diff --git a/tests/test_xmlrpc/test_attr.py b/tests/test_xmlrpc/test_attr.py
index e6872a67a..c19a6948c 100644
--- a/tests/test_xmlrpc/test_attr.py
+++ b/tests/test_xmlrpc/test_attr.py
@@ -433,7 +433,7 @@ class test_attr(Declarative):
command=(
'user_mod', [user1], dict(
addattr=u'nsaccountlock=FaLsE',
- delattr=u'nsaccountlock=True')
+ delattr=u'nsaccountlock=TRUE')
),
expected=dict(
result=dict(
diff --git a/tests/test_xmlrpc/test_hbac_plugin.py b/tests/test_xmlrpc/test_hbac_plugin.py
index 78c4973c9..c7cb55bad 100644
--- a/tests/test_xmlrpc/test_hbac_plugin.py
+++ b/tests/test_xmlrpc/test_hbac_plugin.py
@@ -430,6 +430,27 @@ class test_hbac(XMLRPC_test):
# FIXME: Should this be 'enabled' or 'TRUE'?
assert_attr_equal(entry, 'ipaenabledflag', 'TRUE')
+ def test_ea_hbacrule_disable_setattr(self):
+ """
+ Test disabling HBAC rule using setattr
+ """
+ command_result = api.Command['hbacrule_mod'](
+ self.rule_name, setattr=u'ipaenabledflag=false')
+ assert command_result['result']['ipaenabledflag'] == (u'FALSE',)
+ entry = api.Command['hbacrule_show'](self.rule_name)['result']
+ assert_attr_equal(entry, 'ipaenabledflag', 'FALSE')
+
+ def test_eb_hbacrule_enable_setattr(self):
+ """
+ Test enabling HBAC rule using setattr
+ """
+ command_result = api.Command['hbacrule_mod'](
+ self.rule_name, setattr=u'ipaenabledflag=1')
+ assert command_result['result']['ipaenabledflag'] == (u'TRUE',)
+ # check it's really enabled
+ entry = api.Command['hbacrule_show'](self.rule_name)['result']
+ assert_attr_equal(entry, 'ipaenabledflag', 'TRUE')
+
@raises(errors.MutuallyExclusiveError)
def test_f_hbacrule_exclusiveuser(self):
"""