Commit acb378db authored by Fred Drake's avatar Fred Drake

be more careful about not running tests for components that aren't

available
parent 81291b55
......@@ -21,7 +21,7 @@ import unittest
import ZODB.config
import ZODB.tests
from ZODB.POSException import ReadOnlyError
from ZEO.ClientStorage import ClientDisconnected
class ConfigTestBase(unittest.TestCase):
def _opendb(self, s):
......@@ -84,12 +84,27 @@ class ZODBConfigTest(ConfigTestBase):
""" % path
self.assertRaises(ReadOnlyError, self._test, cfg)
def test_demo_config(self):
cfg = """
<zodb unused-name>
<demostorage>
name foo
<mappingstorage/>
</demostorage>
</zodb>
"""
self._test(cfg)
class ZEOConfigTest(ConfigTestBase):
def test_zeo_config(self):
# We're looking for a port that doesn't exist so a connection attempt
# will fail. Instead of elaborate logic to loop over a port
# calculation, we'll just pick a simple "random", likely to not-exist
# port number and add an elaborate comment explaining this instead.
# Go ahead, grep for 9.
# We're looking for a port that doesn't exist so a
# connection attempt will fail. Instead of elaborate
# logic to loop over a port calculation, we'll just pick a
# simple "random", likely to not-exist port number and add
# an elaborate comment explaining this instead. Go ahead,
# grep for 9.
from ZEO.ClientStorage import ClientDisconnected
cfg = """
<zodb>
<zeoclient>
......@@ -100,16 +115,6 @@ class ZODBConfigTest(ConfigTestBase):
"""
self.assertRaises(ClientDisconnected, self._test, cfg)
def test_demo_config(self):
cfg = """
<zodb unused-name>
<demostorage>
name foo
<mappingstorage/>
</demostorage>
</zodb>
"""
self._test(cfg)
class BDBConfigTest(ConfigTestBase):
def setUp(self):
......@@ -144,8 +149,19 @@ class BDBConfigTest(ConfigTestBase):
def test_suite():
suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(ZODBConfigTest))
# Only run the Berkeley tests if they are available
# Only run the ZEO test if ZEO is available
try:
import ZEO
except ImportError:
pass
else:
suite.addTest(unittest.makeSuite(ZEOConfigTest))
# Only run the Berkeley tests if bsddb is available
try:
import BDBStorage
except ImportError:
pass
else:
if BDBStorage.is_available:
suite.addTest(unittest.makeSuite(BDBConfigTest))
return suite
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment