From c02fcf5d34ad880e082cbc0c7f59fc3812d11c9e Mon Sep 17 00:00:00 2001 From: Petr Viktorin Date: Wed, 2 May 2012 12:36:15 -0400 Subject: 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 --- tests/test_xmlrpc/test_config_plugin.py | 55 +++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 tests/test_xmlrpc/test_config_plugin.py (limited to 'tests') diff --git a/tests/test_xmlrpc/test_config_plugin.py b/tests/test_xmlrpc/test_config_plugin.py new file mode 100644 index 000000000..fbe389106 --- /dev/null +++ b/tests/test_xmlrpc/test_config_plugin.py @@ -0,0 +1,55 @@ +# Authors: +# Petr Viktorin +# +# 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 . + +""" +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, + ), + ), + + ] -- cgit