summaryrefslogtreecommitdiffstats
path: root/ipatests/test_xmlrpc/test_automember_plugin.py
diff options
context:
space:
mode:
authorAdam Misnyovszki <amisnyov@redhat.com>2014-03-25 14:47:03 +0100
committerPetr Viktorin <pviktori@redhat.com>2014-04-09 13:45:32 +0200
commit8b91d9a6e87412c36d4f1191abf15fcda0815c60 (patch)
treee6af0204d22bd2c79ca8108434a14e5ea06a65b2 /ipatests/test_xmlrpc/test_automember_plugin.py
parentc58d6b2689acbfa36aec362b7de1ec7512d5f82a (diff)
downloadfreeipa-8b91d9a6e87412c36d4f1191abf15fcda0815c60.tar.gz
freeipa-8b91d9a6e87412c36d4f1191abf15fcda0815c60.tar.xz
freeipa-8b91d9a6e87412c36d4f1191abf15fcda0815c60.zip
automember rebuild nowait feature added
automember-rebuild uses asynchronous 389 task, and returned success even if the task didn't run. this patch fixes this issue adding a --nowait parameter to 'ipa automember-rebuild', defaulting to False, thus when the script runs without it, it waits for the 'nstaskexitcode' attribute, which means the task has finished. Old usage can be enabled using --nowait, and returns the DN of the task for further polling. New tests added also. https://fedorahosted.org/freeipa/ticket/4239 Reviewed-By: Petr Viktorin <pviktori@redhat.com>
Diffstat (limited to 'ipatests/test_xmlrpc/test_automember_plugin.py')
-rw-r--r--ipatests/test_xmlrpc/test_automember_plugin.py67
1 files changed, 58 insertions, 9 deletions
diff --git a/ipatests/test_xmlrpc/test_automember_plugin.py b/ipatests/test_xmlrpc/test_automember_plugin.py
index 9453ebb5a..600d54890 100644
--- a/ipatests/test_xmlrpc/test_automember_plugin.py
+++ b/ipatests/test_xmlrpc/test_automember_plugin.py
@@ -24,7 +24,8 @@ Test the `ipalib/plugins/automember.py` module.
from ipalib import api, errors
from ipapython.dn import DN
from ipatests.test_xmlrpc import objectclasses
-from xmlrpc_test import Declarative, fuzzy_digits, fuzzy_uuid
+from xmlrpc_test import Declarative, fuzzy_digits, fuzzy_uuid, \
+ fuzzy_automember_dn, fuzzy_automember_message
from ipatests.test_xmlrpc.test_user_plugin import get_user_result
@@ -242,8 +243,20 @@ class test_automember(Declarative):
command=('automember_rebuild', [], dict(type=u'hostgroup')),
expected=dict(
value=u'',
- summary=u'Automember rebuild membership task completed',
- result=True
+ summary=fuzzy_automember_message,
+ result=dict()
+ ),
+ ),
+
+ dict(
+ desc='Rebuild membership for hostgroups asynchronously',
+ command=('automember_rebuild', [], dict(type=u'hostgroup',no_wait=True)),
+ expected=dict(
+ value=u'',
+ summary=u'Automember rebuild membership task started',
+ result=dict(
+ dn=fuzzy_automember_dn
+ ),
),
),
@@ -349,8 +362,20 @@ class test_automember(Declarative):
command=('automember_rebuild', [], dict(hosts=fqdn1)),
expected=dict(
value=u'',
- summary=u'Automember rebuild membership task completed',
- result=True
+ summary=fuzzy_automember_message,
+ result=dict()
+ ),
+ ),
+
+ dict(
+ desc='Rebuild membership for host: %s asynchronously' % fqdn1,
+ command=('automember_rebuild', [], dict(hosts=fqdn1, no_wait=True)),
+ expected=dict(
+ value=u'',
+ summary=u'Automember rebuild membership task started',
+ result=dict(
+ dn=fuzzy_automember_dn
+ ),
),
),
@@ -519,8 +544,20 @@ class test_automember(Declarative):
command=('automember_rebuild', [], dict(type=u'group')),
expected=dict(
value=u'',
- summary=u'Automember rebuild membership task completed',
- result=True
+ summary=fuzzy_automember_message,
+ result=dict()
+ ),
+ ),
+
+ dict(
+ desc='Rebuild membership for groups asynchronously',
+ command=('automember_rebuild', [], dict(type=u'group', no_wait=True)),
+ expected=dict(
+ value=u'',
+ summary=u'Automember rebuild membership task started',
+ result=dict(
+ dn=fuzzy_automember_dn
+ ),
),
),
@@ -584,8 +621,20 @@ class test_automember(Declarative):
command=('automember_rebuild', [], dict(users=user1)),
expected=dict(
value=u'',
- summary=u'Automember rebuild membership task completed',
- result=True
+ summary=fuzzy_automember_message,
+ result=dict()
+ ),
+ ),
+
+ dict(
+ desc='Rebuild membership for user: %s asynchronously' % user1,
+ command=('automember_rebuild', [], dict(users=user1, no_wait=True)),
+ expected=dict(
+ value=u'',
+ summary=u'Automember rebuild membership task started',
+ result=dict(
+ dn=fuzzy_automember_dn
+ ),
),
),