summaryrefslogtreecommitdiff
path: root/src/mailman/tests/test_documentation.py
diff options
context:
space:
mode:
authorBarry Warsaw2009-05-27 17:44:10 +0200
committerBarry Warsaw2009-05-27 17:44:10 +0200
commit4cf56226a52d2f5e607b5d4d83e20ae24619a383 (patch)
tree6ad22c2fa9b74f40bb5403a5e1357715afc861c4 /src/mailman/tests/test_documentation.py
parentcdd4885e9fe6eb074022421433d9be9abf3415b4 (diff)
downloadmailman-4cf56226a52d2f5e607b5d4d83e20ae24619a383.tar.gz
mailman-4cf56226a52d2f5e607b5d4d83e20ae24619a383.tar.zst
mailman-4cf56226a52d2f5e607b5d4d83e20ae24619a383.zip
Diffstat (limited to 'src/mailman/tests/test_documentation.py')
-rw-r--r--src/mailman/tests/test_documentation.py20
1 files changed, 15 insertions, 5 deletions
diff --git a/src/mailman/tests/test_documentation.py b/src/mailman/tests/test_documentation.py
index d1ff75275..0c061e873 100644
--- a/src/mailman/tests/test_documentation.py
+++ b/src/mailman/tests/test_documentation.py
@@ -30,6 +30,7 @@ __all__ = [
import os
+import sys
import json
import random
import doctest
@@ -156,17 +157,26 @@ def test_suite():
doctest_files = {}
with chdir(topdir):
for docsdir in packages:
+ # Look to see if the package defines a test layer, otherwise use
+ # SMTPLayer.
+ package_path = 'mailman.' + DOT.join(docsdir.split(os.sep))
+ try:
+ __import__(package_path)
+ except ImportError:
+ layer = SMTPLayer
+ else:
+ layer = getattr(sys.modules[package_path], 'layer', SMTPLayer)
for filename in os.listdir(docsdir):
if os.path.splitext(filename)[1] == '.txt':
- doctest_files[filename] = os.path.join(docsdir, filename)
- files = sorted(doctest_files)
- for filename in files:
- path = doctest_files[filename]
+ doctest_files[filename] = (
+ os.path.join(docsdir, filename), layer)
+ for filename in sorted(doctest_files):
+ path, layer = doctest_files[filename]
test = doctest.DocFileSuite(
path,
package='mailman',
optionflags=flags,
setUp=setup)
- test.layer = SMTPLayer
+ test.layer = layer
suite.addTest(test)
return suite