diff options
author | Filip Skola <fskola@redhat.com> | 2015-11-24 14:34:03 +0100 |
---|---|---|
committer | Martin Basti <mbasti@redhat.com> | 2016-01-26 19:03:15 +0100 |
commit | 9ba5bf03a89816ef33f7d0b8dab14aa2e01deaaa (patch) | |
tree | 8381e1faf7e87853775089ce790bb82d3e6b6f81 /ipatests/test_xmlrpc/test_replace.py | |
parent | 3d1adb325512cf14de8b88ca8178dd4a754256ec (diff) | |
download | freeipa-9ba5bf03a89816ef33f7d0b8dab14aa2e01deaaa.tar.gz freeipa-9ba5bf03a89816ef33f7d0b8dab14aa2e01deaaa.tar.xz freeipa-9ba5bf03a89816ef33f7d0b8dab14aa2e01deaaa.zip |
Refactor test_replace
Reviewed-By: Milan Kubik <mkubik@redhat.com>
Diffstat (limited to 'ipatests/test_xmlrpc/test_replace.py')
-rw-r--r-- | ipatests/test_xmlrpc/test_replace.py | 174 |
1 files changed, 48 insertions, 126 deletions
diff --git a/ipatests/test_xmlrpc/test_replace.py b/ipatests/test_xmlrpc/test_replace.py index 1420e7d87..76f7d1c2c 100644 --- a/ipatests/test_xmlrpc/test_replace.py +++ b/ipatests/test_xmlrpc/test_replace.py @@ -1,5 +1,6 @@ # Authors: # Rob Crittenden <rcritten@redhat.com> +# Filip Skola <fskola@redhat.com> # # Copyright (C) 2011 Red Hat # see file 'COPYING' for use and warranty information @@ -25,134 +26,55 @@ Note that member management in other tests also exercises the gen_modlist code. """ -from ipatests.test_xmlrpc.xmlrpc_test import Declarative -from ipatests.test_xmlrpc.test_user_plugin import get_user_result -import pytest - -user1=u'tuser1' - - -@pytest.mark.tier1 -class test_replace(Declarative): - - cleanup_commands = [ - ('user_del', [user1], {}), - ] - - tests = [ - - dict( - desc='Create %r with 2 e-mail accounts' % user1, - command=( - 'user_add', [user1], dict(givenname=u'Test', sn=u'User1', - mail=[u'test1@example.com', u'test2@example.com']) - ), - expected=dict( - value=user1, - summary=u'Added user "tuser1"', - result=get_user_result( - user1, u'Test', u'User1', 'add', - mail=[u'test1@example.com', u'test2@example.com'], - ), - ), - ), - - - dict( - desc='Drop one e-mail account, add another to %r' % user1, - command=( - 'user_mod', [user1], dict(mail=[u'test1@example.com', u'test3@example.com']) - ), - expected=dict( - result=get_user_result( - user1, u'Test', u'User1', 'mod', - mail=[u'test1@example.com', u'test3@example.com'], - ), - summary=u'Modified user "tuser1"', - value=user1, - ), - ), - - - dict( - desc='Set mail to a new single value %r' % user1, - command=( - 'user_mod', [user1], dict(mail=u'test4@example.com') - ), - expected=dict( - result=get_user_result( - user1, u'Test', u'User1', 'mod', - mail=[u'test4@example.com'], - ), - summary=u'Modified user "tuser1"', - value=user1, - ), - ), - - - dict( - desc='Set mail to three new values %r' % user1, - command=( - 'user_mod', [user1], dict(mail=[u'test5@example.com', u'test6@example.com', u'test7@example.com']) - ), - expected=dict( - result=get_user_result( - user1, u'Test', u'User1', 'mod', - mail=[u'test5@example.com', u'test6@example.com', - u'test7@example.com'], - ), - summary=u'Modified user "tuser1"', - value=user1, - ), - ), - - - dict( - desc='Remove all mail values %r' % user1, - command=( - 'user_mod', [user1], dict(mail=u'') - ), - expected=dict( - result=get_user_result( - user1, u'Test', u'User1', 'mod', - omit=['mail'], - ), - summary=u'Modified user "tuser1"', - value=user1, - ), - ), +from ipatests.test_xmlrpc.xmlrpc_test import XMLRPC_test +from ipatests.test_xmlrpc.tracker.user_plugin import UserTracker +import pytest - dict( - desc='Ensure single-value mods work too, replace initials %r' % user1, - command=( - 'user_mod', [user1], dict(initials=u'ABC') - ), - expected=dict( - result=get_user_result( - user1, u'Test', u'User1', 'mod', - initials=[u'ABC'], - omit=['mail'], - ), - summary=u'Modified user "tuser1"', - value=user1, - ), - ), +@pytest.fixture(scope='class') +def user(request): + tracker = UserTracker( + name=u'user1', givenname=u'Test', sn=u'User1', + mail=[u'test1@example.com', u'test2@example.com'] + ) + return tracker.make_fixture(request) - dict( - desc='Drop a single-value attribute %r' % user1, - command=( - 'user_mod', [user1], dict(initials=u'') - ), - expected=dict( - result=get_user_result( - user1, u'Test', u'User1', 'mod', - omit=['mail'], - ), - summary=u'Modified user "tuser1"', - value=user1, - ), - ), - ] +@pytest.mark.tier1 +class TestReplace(XMLRPC_test): + def test_create(self, user): + """ Create a user account with two mail addresses """ + user.create() + + def test_drop_one_add_another_mail(self, user): + """ Drop one mail address and add another to the user """ + updates = {'mail': [u'test1@example.com', u'test3@example.com']} + user.update(updates, updates) + + def test_set_new_single_mail(self, user): + """ Reset mail attribute to one single value """ + updates = {'mail': u'test4@example.com'} + user.update(updates) + + def test_set_three_new_mails(self, user): + """ Assign three new mail addresses to the user """ + updates = {'mail': [ + u'test5@example.com', u'test6@example.com', u'test7@example.com' + ]} + user.update(updates, updates) + + def test_remove_all_mails(self, user): + """ Remove all email addresses from the user """ + updates = {'mail': u''} + user.update(updates) + + def test_replace_initials(self, user): + """ Test single value attribute by replacing initials """ + updates = {'initials': u'ABC'} + user.update(updates) + + def test_drop_initials(self, user): + """ Test drop of single value attribute by dropping initials """ + updates = {'initials': u''} + user.update(updates) |