diff options
author | Petr Viktorin <pviktori@redhat.com> | 2012-05-02 12:36:15 -0400 |
---|---|---|
committer | Martin Kosek <mkosek@redhat.com> | 2012-05-09 09:53:51 +0200 |
commit | c02fcf5d34ad880e082cbc0c7f59fc3812d11c9e (patch) | |
tree | f923c0ec6015028ca174687e3d197182ca12d8bc /tests | |
parent | d9d196798945bef7a955acb8b71820800455be17 (diff) | |
download | freeipa-c02fcf5d34ad880e082cbc0c7f59fc3812d11c9e.tar.gz freeipa-c02fcf5d34ad880e082cbc0c7f59fc3812d11c9e.tar.xz freeipa-c02fcf5d34ad880e082cbc0c7f59fc3812d11c9e.zip |
Don't fail when adding default objectclasses using config-mod
The config plugin was adding together a list and a tuple, then
converting to a set.
Replace the operation with a set union.
Regression test included.
https://fedorahosted.org/freeipa/ticket/2706
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_xmlrpc/test_config_plugin.py | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/tests/test_xmlrpc/test_config_plugin.py b/tests/test_xmlrpc/test_config_plugin.py new file mode 100644 index 00000000..fbe38910 --- /dev/null +++ b/tests/test_xmlrpc/test_config_plugin.py @@ -0,0 +1,55 @@ +# Authors: +# Petr Viktorin <pviktori@redhat.com> +# +# Copyright (C) 2010 Red Hat +# see file 'COPYING' for use and warranty information +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +""" +Test the `ipalib/plugins/config.py` module. +""" + +from xmlrpc_test import Declarative, fuzzy_digits, fuzzy_uuid + +class test_config(Declarative): + + cleanup_commands = [ + ] + + tests = [ + + dict( + desc='Try to add an unrelated objectclass to ipauserobjectclasses', + command=('config_mod', [], + dict(addattr=u'ipauserobjectclasses=ipahost')), + expected=dict( + result=lambda d: 'ipahost' in d['ipauserobjectclasses'], + value=u'', + summary=None, + ), + ), + + dict( + desc='Remove the unrelated objectclass from ipauserobjectclasses', + command=('config_mod', [], + dict(delattr=u'ipauserobjectclasses=ipahost')), + expected=dict( + result=lambda d: 'ipahost' not in d['ipauserobjectclasses'], + value=u'', + summary=None, + ), + ), + + ] |