diff options
| author | Barry Warsaw | 2009-05-27 17:44:10 +0200 |
|---|---|---|
| committer | Barry Warsaw | 2009-05-27 17:44:10 +0200 |
| commit | 4cf56226a52d2f5e607b5d4d83e20ae24619a383 (patch) | |
| tree | 6ad22c2fa9b74f40bb5403a5e1357715afc861c4 /src/mailman/tests/test_documentation.py | |
| parent | cdd4885e9fe6eb074022421433d9be9abf3415b4 (diff) | |
| download | mailman-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.py | 20 |
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 |
