diff options
author | Ana Krivokapic <akrivoka@redhat.com> | 2013-08-20 15:34:39 +0200 |
---|---|---|
committer | Petr Viktorin <pviktori@redhat.com> | 2013-08-28 16:46:15 +0200 |
commit | c392146101422808b8781c85f0f2720db230da28 (patch) | |
tree | 095acec64a62aefff7dc498602d05e38af31f626 /ipatests/test_xmlrpc/test_group_plugin.py | |
parent | 023385510a1b9ce6b40e40b788044ba853463696 (diff) | |
download | freeipa.git-c392146101422808b8781c85f0f2720db230da28.tar.gz freeipa.git-c392146101422808b8781c85f0f2720db230da28.tar.xz freeipa.git-c392146101422808b8781c85f0f2720db230da28.zip |
Fix tests which fail after ipa-adtrust-install
Some unit tests were failing after ipa-adtrust-install has been run on the
IPA server, due to missing attributes ('ipantsecurityidentifier') and
objectclasses ('ipantuserattrs' and 'ipantgroupattrs'). This patch detects if
ipa-adtrust-install has been run, and adds missing attributes and objectclasses
where appropriate.
https://fedorahosted.org/freeipa/ticket/3852
Diffstat (limited to 'ipatests/test_xmlrpc/test_group_plugin.py')
-rw-r--r-- | ipatests/test_xmlrpc/test_group_plugin.py | 44 |
1 files changed, 26 insertions, 18 deletions
diff --git a/ipatests/test_xmlrpc/test_group_plugin.py b/ipatests/test_xmlrpc/test_group_plugin.py index 1d0cfeb1..be31af45 100644 --- a/ipatests/test_xmlrpc/test_group_plugin.py +++ b/ipatests/test_xmlrpc/test_group_plugin.py @@ -23,8 +23,8 @@ Test the `ipalib/plugins/group.py` module. from ipalib import api, errors from ipatests.test_xmlrpc import objectclasses -from ipatests.util import Fuzzy -from xmlrpc_test import Declarative, fuzzy_digits, fuzzy_uuid, fuzzy_set_ci +from xmlrpc_test import (Declarative, fuzzy_digits, fuzzy_uuid, fuzzy_set_ci, + add_sid, add_oc) from ipapython.dn import DN group1 = u'testgroup1' @@ -437,23 +437,27 @@ class test_group(Declarative): count=4, truncated=False, result=[ - { + add_sid({ 'dn': get_group_dn('admins'), 'member_user': [u'admin'], 'gidnumber': [fuzzy_digits], 'cn': [u'admins'], 'description': [u'Account administrators group'], - 'objectclass': fuzzy_set_ci(objectclasses.posixgroup), + 'objectclass': fuzzy_set_ci(add_oc( + objectclasses.posixgroup, u'ipantgroupattrs')), 'ipauniqueid': [fuzzy_uuid], - }, - { + }), + add_sid({ 'dn': get_group_dn('editors'), 'gidnumber': [fuzzy_digits], 'cn': [u'editors'], 'description': [u'Limited admins who can edit other users'], - 'objectclass': fuzzy_set_ci(objectclasses.posixgroup), + 'objectclass': fuzzy_set_ci(add_oc( + objectclasses.posixgroup, + u'ipantgroupattrs', + check_sidgen=True)), 'ipauniqueid': [fuzzy_uuid], - }, + }, check_sidgen=True), dict( dn=get_group_dn(group1), cn=[group1], @@ -462,14 +466,15 @@ class test_group(Declarative): objectclass=fuzzy_set_ci(objectclasses.posixgroup), ipauniqueid=[fuzzy_uuid], ), - dict( + add_sid(dict( dn=get_group_dn(group2), cn=[group2], description=[u'New desc 2'], gidnumber=[fuzzy_digits], - objectclass=fuzzy_set_ci(objectclasses.posixgroup), + objectclass=fuzzy_set_ci(add_oc( + objectclasses.posixgroup, u'ipantgroupattrs')), ipauniqueid=[fuzzy_uuid], - ), + )), ], ), ), @@ -538,7 +543,9 @@ class test_group(Declarative): command=( 'group_add_member', [group3], dict(ipaexternalmember=external_sid1) ), - expected=lambda x, output: type(x) == errors.ValidationError or type(x) == errors.NotFound, + expected=lambda x, output: (type(x) == errors.ValidationError + or type(x) == errors.NotFound + or 'failed' in output), ), @@ -789,13 +796,13 @@ class test_group(Declarative): expected=dict( value=user1, summary=u'Added user "%s"' % user1, - result=dict( + result=add_sid(dict( gecos=[u'Test User1'], givenname=[u'Test'], homedirectory=[u'/home/%s' % user1], krbprincipalname=[u'%s@%s' % (user1, api.env.realm)], loginshell=[u'/bin/sh'], - objectclass=objectclasses.user, + objectclass=add_oc(objectclasses.user, u'ipantuserattrs'), sn=[u'User1'], uid=[user1], uidnumber=[fuzzy_digits], @@ -813,7 +820,7 @@ class test_group(Declarative): api.env.basedn), has_keytab=False, has_password=False, - ), + )), ), ), @@ -905,14 +912,15 @@ class test_group(Declarative): expected=dict( value=user1, summary=u'Added user "tuser1"', - result=dict( + result=add_sid(dict( gecos=[u'Test User1'], givenname=[u'Test'], description=[], homedirectory=[u'/home/tuser1'], krbprincipalname=[u'tuser1@' + api.env.realm], loginshell=[u'/bin/sh'], - objectclass=objectclasses.user_base, + objectclass=add_oc(objectclasses.user_base, + u'ipantuserattrs'), sn=[u'User1'], uid=[user1], uidnumber=[fuzzy_digits], @@ -929,7 +937,7 @@ class test_group(Declarative): memberof_group=[u'ipausers'], has_keytab=False, has_password=False, - ), + )), ), ), |