summaryrefslogtreecommitdiffstats
path: root/tests/test_xmlrpc
diff options
context:
space:
mode:
authorPetr Viktorin <pviktori@redhat.com>2013-01-08 04:10:35 -0500
committerMartin Kosek <mkosek@redhat.com>2013-03-11 17:07:07 +0100
commit91606e6679f3a18b1c1789efd240eed982a563d4 (patch)
treea002e8fbc837058f6c1d9178cbefadcd03b7d6f2 /tests/test_xmlrpc
parent8d432353cc1e66b235e928650764f879c24d19f7 (diff)
downloadfreeipa-91606e6679f3a18b1c1789efd240eed982a563d4.tar.gz
freeipa-91606e6679f3a18b1c1789efd240eed982a563d4.tar.xz
freeipa-91606e6679f3a18b1c1789efd240eed982a563d4.zip
Change DNA magic value to -1 to make UID 999 usable
Change user-add's uid & gid parameters from autofill to optional. Change the DNA magic value to -1. For old clients, which will still send 999 when they want DNA assignment, translate the 999 to -1. This is done via a new capability, optional_uid_params. Tests included https://fedorahosted.org/freeipa/ticket/2886
Diffstat (limited to 'tests/test_xmlrpc')
-rw-r--r--tests/test_xmlrpc/test_user_plugin.py86
1 files changed, 86 insertions, 0 deletions
diff --git a/tests/test_xmlrpc/test_user_plugin.py b/tests/test_xmlrpc/test_user_plugin.py
index a61db23d5..7e992224c 100644
--- a/tests/test_xmlrpc/test_user_plugin.py
+++ b/tests/test_xmlrpc/test_user_plugin.py
@@ -1748,4 +1748,90 @@ class test_user(Declarative):
),
),
),
+
+ dict(
+ desc='Create "%s" with UID 999' % user1,
+ command=(
+ 'user_add', [user1], dict(
+ givenname=u'Test', sn=u'User1', uidnumber=999)
+ ),
+ expected=dict(
+ value=user1,
+ summary=u'Added user "%s"' % user1,
+ result=dict(
+ gecos=[u'Test User1'],
+ givenname=[u'Test'],
+ homedirectory=[u'/home/tuser1'],
+ krbprincipalname=[u'tuser1@' + api.env.realm],
+ loginshell=[u'/bin/sh'],
+ objectclass=objectclasses.user,
+ sn=[u'User1'],
+ uid=[user1],
+ uidnumber=[u'999'],
+ gidnumber=[u'999'],
+ displayname=[u'Test User1'],
+ cn=[u'Test User1'],
+ mail=[u'%s@%s' % (user1, api.env.domain)],
+ initials=[u'TU'],
+ ipauniqueid=[fuzzy_uuid],
+ krbpwdpolicyreference=[DN(('cn','global_policy'),('cn',api.env.realm),
+ ('cn','kerberos'),api.env.basedn)],
+ mepmanagedentry=[get_group_dn(user1)],
+ memberof_group=[u'ipausers'],
+ has_keytab=False,
+ has_password=False,
+ dn=get_user_dn(user1),
+ ),
+ ),
+ extra_check = upg_check,
+ ),
+
+ dict(
+ desc='Delete "%s"' % user1,
+ command=('user_del', [user1], {}),
+ expected=dict(
+ result=dict(failed=u''),
+ summary=u'Deleted user "%s"' % user1,
+ value=user1,
+ ),
+ ),
+
+ dict(
+ desc='Create "%s" with old DNA_MAGIC uid 999' % user1,
+ command=(
+ 'user_add', [user1], dict(
+ givenname=u'Test', sn=u'User1', uidnumber=999,
+ version=u'2.49')
+ ),
+ expected=dict(
+ value=user1,
+ summary=u'Added user "%s"' % user1,
+ result=dict(
+ gecos=[u'Test User1'],
+ givenname=[u'Test'],
+ homedirectory=[u'/home/tuser1'],
+ krbprincipalname=[u'tuser1@' + api.env.realm],
+ loginshell=[u'/bin/sh'],
+ objectclass=objectclasses.user,
+ sn=[u'User1'],
+ uid=[user1],
+ uidnumber=[lambda v: int(v) != 999],
+ gidnumber=[lambda v: int(v) != 999],
+ displayname=[u'Test User1'],
+ cn=[u'Test User1'],
+ mail=[u'%s@%s' % (user1, api.env.domain)],
+ initials=[u'TU'],
+ ipauniqueid=[fuzzy_uuid],
+ krbpwdpolicyreference=[DN(('cn','global_policy'),('cn',api.env.realm),
+ ('cn','kerberos'),api.env.basedn)],
+ mepmanagedentry=[get_group_dn(user1)],
+ memberof_group=[u'ipausers'],
+ has_keytab=False,
+ has_password=False,
+ dn=get_user_dn(user1),
+ ),
+ ),
+ extra_check = upg_check,
+ ),
+
]