diff options
author | Lenka Doudova <ldoudova@redhat.com> | 2016-05-02 14:04:24 +0200 |
---|---|---|
committer | Martin Basti <mbasti@redhat.com> | 2016-05-03 17:12:45 +0200 |
commit | 847c950408b3c00ce3a4625709cadcddf39af6a5 (patch) | |
tree | 328f8482d1c88ae58c375dec1a9d5b25a07b722d /ipatests/test_xmlrpc | |
parent | 8a2afcafee977675fc289acab50cc808b469a2b3 (diff) | |
download | freeipa-847c950408b3c00ce3a4625709cadcddf39af6a5.tar.gz freeipa-847c950408b3c00ce3a4625709cadcddf39af6a5.tar.xz freeipa-847c950408b3c00ce3a4625709cadcddf39af6a5.zip |
Test fix: Cleanup for host certificate
This fix provides means to remove certificates from host that were added during tests, but not removed.
Ticket: https://fedorahosted.org/freeipa/ticket/5839
Reviewed-By: Martin Basti <mbasti@redhat.com>
Diffstat (limited to 'ipatests/test_xmlrpc')
-rw-r--r-- | ipatests/test_xmlrpc/test_host_plugin.py | 4 | ||||
-rw-r--r-- | ipatests/test_xmlrpc/tracker/host_plugin.py | 14 |
2 files changed, 17 insertions, 1 deletions
diff --git a/ipatests/test_xmlrpc/test_host_plugin.py b/ipatests/test_xmlrpc/test_host_plugin.py index ea8f49656..4d54dac4f 100644 --- a/ipatests/test_xmlrpc/test_host_plugin.py +++ b/ipatests/test_xmlrpc/test_host_plugin.py @@ -130,8 +130,10 @@ def this_host(request): """Fixture for the current master""" tracker = HostTracker(name=api.env.host.partition('.')[0], fqdn=api.env.host) - # This host is not created/deleted, so don't call make_fixture tracker.exists = True + # Finalizer ensures that any certificates added to this_host are removed + tracker.add_finalizer_certcleanup(request) + # This host is not created/deleted, so don't call make_fixture return tracker diff --git a/ipatests/test_xmlrpc/tracker/host_plugin.py b/ipatests/test_xmlrpc/tracker/host_plugin.py index 67faa1acf..d8b59b989 100644 --- a/ipatests/test_xmlrpc/tracker/host_plugin.py +++ b/ipatests/test_xmlrpc/tracker/host_plugin.py @@ -10,6 +10,7 @@ from ipatests.test_xmlrpc.tracker.base import Tracker from ipatests.test_xmlrpc.xmlrpc_test import fuzzy_uuid from ipatests.test_xmlrpc import objectclasses from ipatests.util import assert_deepequal +from ipalib import errors class HostTracker(Tracker): @@ -155,3 +156,16 @@ class HostTracker(Tracker): summary=u'Modified host "%s"' % self.fqdn, result=self.filter_attrs(self.update_keys | set(extra_keys)) ), result) + + def add_finalizer_certcleanup(self, request): + """ Fixture to cleanup certificate from local host """ + cleanup_command = self.make_update_command( + updates={'usercertificate':''}) + + def cleanup(): + try: + cleanup_command() + except errors.EmptyModlist: + pass + + request.addfinalizer(cleanup) |