summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Gerard DeRose <jderose@redhat.com>2009-01-28 21:21:56 -0700
committerRob Crittenden <rcritten@redhat.com>2009-02-03 15:29:04 -0500
commit48a278047db50f919a45ef82a57a6983804ed523 (patch)
treeef77a52e7e901c86d397343f21b3583ebcf9bd02
parent77e782e2cb5413cde9501568155cce9283ff7b7d (diff)
downloadfreeipa-48a278047db50f919a45ef82a57a6983804ed523.tar.gz
freeipa-48a278047db50f919a45ef82a57a6983804ed523.tar.xz
freeipa-48a278047db50f919a45ef82a57a6983804ed523.zip
Mostly got the test_xmlrpc/ tests working again
-rw-r--r--ipalib/__init__.py7
-rwxr-xr-x[-rw-r--r--]ipaserver/mod_python_xmlrpc.py1
-rwxr-xr-xmake-test1
-rw-r--r--tests/test_xmlrpc/test_automount_plugin.py4
-rw-r--r--tests/test_xmlrpc/test_group_plugin.py4
-rw-r--r--tests/test_xmlrpc/test_host_plugin.py4
-rw-r--r--tests/test_xmlrpc/test_hostgroup_plugin.py4
-rw-r--r--tests/test_xmlrpc/test_netgroup_plugin.py4
-rw-r--r--tests/test_xmlrpc/test_service_plugin.py4
-rw-r--r--tests/test_xmlrpc/test_user_plugin.py4
-rw-r--r--tests/test_xmlrpc/xmlrpc_test.py27
11 files changed, 22 insertions, 42 deletions
diff --git a/ipalib/__init__.py b/ipalib/__init__.py
index 5da7de82a..f82c4dc76 100644
--- a/ipalib/__init__.py
+++ b/ipalib/__init__.py
@@ -870,6 +870,7 @@ freeIPA.org:
'''
+import os
import plugable
from backend import Backend
from frontend import Command, LocalOrRemote, Application
@@ -908,7 +909,11 @@ def create_api(mode='dummy'):
)
if mode is not None:
api.env.mode = mode
+ assert mode != 'production'
return api
-
api = create_api(mode=None)
+
+if os.environ.get('IPA_UNIT_TEST_MODE', None) == 'cli_test':
+ api.bootstrap(context='cli', in_server=False)
+ api.finalize()
diff --git a/ipaserver/mod_python_xmlrpc.py b/ipaserver/mod_python_xmlrpc.py
index 9a2960f93..372376aca 100644..100755
--- a/ipaserver/mod_python_xmlrpc.py
+++ b/ipaserver/mod_python_xmlrpc.py
@@ -28,6 +28,7 @@ Production XML-RPC server using mod_python.
"""
import sys
+import os
import time
diff --git a/make-test b/make-test
index 1a401635c..ee8470df0 100755
--- a/make-test
+++ b/make-test
@@ -2,6 +2,7 @@
# Script to run nosetests under multiple versions of Python
+export IPA_UNIT_TEST_MODE="cli_test"
versions="python2.4 python2.5 python2.6"
for name in $versions
diff --git a/tests/test_xmlrpc/test_automount_plugin.py b/tests/test_xmlrpc/test_automount_plugin.py
index 529e7aead..9de53ea1e 100644
--- a/tests/test_xmlrpc/test_automount_plugin.py
+++ b/tests/test_xmlrpc/test_automount_plugin.py
@@ -26,10 +26,6 @@ from xmlrpc_test import XMLRPC_test
from ipalib import api
from ipalib import errors
-try:
- api.finalize()
-except StandardError:
- pass
class test_Service(XMLRPC_test):
"""
diff --git a/tests/test_xmlrpc/test_group_plugin.py b/tests/test_xmlrpc/test_group_plugin.py
index 4b9e6bbf1..48cb3c97f 100644
--- a/tests/test_xmlrpc/test_group_plugin.py
+++ b/tests/test_xmlrpc/test_group_plugin.py
@@ -26,10 +26,6 @@ from xmlrpc_test import XMLRPC_test
from ipalib import api
from ipalib import errors
-try:
- api.finalize()
-except StandardError:
- pass
class test_Group(XMLRPC_test):
"""
diff --git a/tests/test_xmlrpc/test_host_plugin.py b/tests/test_xmlrpc/test_host_plugin.py
index 9cd6cf839..f9e4108ee 100644
--- a/tests/test_xmlrpc/test_host_plugin.py
+++ b/tests/test_xmlrpc/test_host_plugin.py
@@ -26,10 +26,6 @@ from xmlrpc_test import XMLRPC_test
from ipalib import api
from ipalib import errors
-try:
- api.finalize()
-except StandardError:
- pass
class test_Host(XMLRPC_test):
"""
diff --git a/tests/test_xmlrpc/test_hostgroup_plugin.py b/tests/test_xmlrpc/test_hostgroup_plugin.py
index ecc61ef72..1f1a5f3d1 100644
--- a/tests/test_xmlrpc/test_hostgroup_plugin.py
+++ b/tests/test_xmlrpc/test_hostgroup_plugin.py
@@ -26,10 +26,6 @@ from xmlrpc_test import XMLRPC_test
from ipalib import api
from ipalib import errors
-try:
- api.finalize()
-except StandardError:
- pass
class test_Host(XMLRPC_test):
"""
diff --git a/tests/test_xmlrpc/test_netgroup_plugin.py b/tests/test_xmlrpc/test_netgroup_plugin.py
index 54b7eb97f..056ee0056 100644
--- a/tests/test_xmlrpc/test_netgroup_plugin.py
+++ b/tests/test_xmlrpc/test_netgroup_plugin.py
@@ -26,10 +26,6 @@ from xmlrpc_test import XMLRPC_test
from ipalib import api
from ipalib import errors
-try:
- api.finalize()
-except StandardError:
- pass
def is_member_of(members, candidate):
if not isinstance(members, list):
diff --git a/tests/test_xmlrpc/test_service_plugin.py b/tests/test_xmlrpc/test_service_plugin.py
index 33dc7b747..ca5d7e01e 100644
--- a/tests/test_xmlrpc/test_service_plugin.py
+++ b/tests/test_xmlrpc/test_service_plugin.py
@@ -26,10 +26,6 @@ from xmlrpc_test import XMLRPC_test
from ipalib import api
from ipalib import errors
-try:
- api.finalize()
-except StandardError:
- pass
class test_Service(XMLRPC_test):
"""
diff --git a/tests/test_xmlrpc/test_user_plugin.py b/tests/test_xmlrpc/test_user_plugin.py
index a89e4d669..72b5e808b 100644
--- a/tests/test_xmlrpc/test_user_plugin.py
+++ b/tests/test_xmlrpc/test_user_plugin.py
@@ -26,10 +26,6 @@ from xmlrpc_test import XMLRPC_test
from ipalib import api
from ipalib import errors
-try:
- api.finalize()
-except StandardError:
- pass
class test_User(XMLRPC_test):
"""
diff --git a/tests/test_xmlrpc/xmlrpc_test.py b/tests/test_xmlrpc/xmlrpc_test.py
index 74e6157fb..08f7eab89 100644
--- a/tests/test_xmlrpc/xmlrpc_test.py
+++ b/tests/test_xmlrpc/xmlrpc_test.py
@@ -24,26 +24,27 @@ Base class for all XML-RPC tests
import sys
import socket
import nose
-from ipalib import api
-from ipalib import errors
+from ipalib import api, request
+from ipalib import errors, errors2
-try:
- api.finalize()
-except StandardError:
- pass
-class XMLRPC_test:
+class XMLRPC_test(object):
"""
Base class for all XML-RPC plugin tests
"""
def setUp(self):
- # FIXME: changing Plugin.name from a property to an instance attribute
- # somehow broke this.
- raise nose.SkipTest
try:
- res = api.Command['user_show']('notfound')
- except socket.error:
- raise nose.SkipTest
+ if not api.Backend.xmlclient.isconnected():
+ api.Backend.xmlclient.connect()
+ res = api.Command['user_show'](u'notfound')
+ except errors2.NetworkError:
+ raise nose.SkipTest()
except errors.NotFound:
pass
+
+ def tearDown(self):
+ """
+ nose tear-down fixture.
+ """
+ request.destroy_context()