[Checkins] SVN: z3c.testsetup/trunk/src/z3c/testsetup/doctesting.py * Register unit test layers correctly.
Uli Fouquet
uli at gnufix.de
Tue Aug 25 08:28:25 EDT 2009
Log message for revision 103201:
* Register unit test layers correctly.
* Support fuctional setups if given layer is ZCMLLayer.
Changed:
U z3c.testsetup/trunk/src/z3c/testsetup/doctesting.py
-=-
Modified: z3c.testsetup/trunk/src/z3c/testsetup/doctesting.py
===================================================================
--- z3c.testsetup/trunk/src/z3c/testsetup/doctesting.py 2009-08-25 12:26:35 UTC (rev 103200)
+++ z3c.testsetup/trunk/src/z3c/testsetup/doctesting.py 2009-08-25 12:28:25 UTC (rev 103201)
@@ -55,6 +55,8 @@
suite = unittest.TestSuite()
for name in docfiles:
layerdef = get_marker_from_file('layer', name)
+ if layerdef is not None:
+ layerdef = get_attribute(layerdef)
zcml_layer = self.getZCMLLayer(name, 'zcml-layer')
if zcml_layer is not None:
@@ -92,7 +94,20 @@
""" % (os.path.join(common_prefix, name),))
continue
suite_creator = FunctionalDocFileSuite
-
+
+ # If the defined layer is a ZCMLLayer, we also enable the
+ # functional test setup.
+ if layerdef is not None:
+ try:
+ from zope.app.testing.functional import (
+ ZCMLLayer, FunctionalDocFileSuite)
+ if isinstance(layerdef, ZCMLLayer):
+ suite_creator = FunctionalDocFileSuite
+ except ImportError:
+ # If zope.app.testing is not available, the layer
+ # cannot be a ZCML layer.
+ pass
+
test = suite_creator(
name,
package=self.package,
More information about the Checkins
mailing list