summaryrefslogtreecommitdiff
path: root/mailman/tests/test_documentation.py
diff options
context:
space:
mode:
Diffstat (limited to 'mailman/tests/test_documentation.py')
-rw-r--r--mailman/tests/test_documentation.py27
1 files changed, 19 insertions, 8 deletions
diff --git a/mailman/tests/test_documentation.py b/mailman/tests/test_documentation.py
index 69acd9d7b..e805b10fa 100644
--- a/mailman/tests/test_documentation.py
+++ b/mailman/tests/test_documentation.py
@@ -18,6 +18,7 @@
"""Harness for testing Mailman's documentation."""
import os
+import random
import doctest
import unittest
@@ -94,17 +95,27 @@ def test_suite():
flags = (doctest.ELLIPSIS |
doctest.NORMALIZE_WHITESPACE |
doctest.REPORT_NDIFF)
- if config.verbosity <= 2:
+ if config.tests.verbosity <= 2:
flags |= doctest.REPORT_ONLY_FIRST_FAILURE
# Add all the doctests in all subpackages.
+ doctest_files = {}
for docsdir in packages:
for filename in os.listdir(os.path.join('mailman', docsdir)):
if os.path.splitext(filename)[1] == '.txt':
- test = doctest.DocFileSuite(
- os.path.join(docsdir, filename),
- package='mailman',
- optionflags=flags,
- setUp=setup,
- tearDown=cleaning_teardown)
- suite.addTest(test)
+ doctest_files[filename] = os.path.join(docsdir, filename)
+ # Sort or randomize the tests.
+ if config.tests.randomize:
+ files = doctest_files.keys()
+ random.shuffle(files)
+ else:
+ files = sorted(doctest_files)
+ for filename in files:
+ path = doctest_files[filename]
+ test = doctest.DocFileSuite(
+ path,
+ package='mailman',
+ optionflags=flags,
+ setUp=setup,
+ tearDown=cleaning_teardown)
+ suite.addTest(test)
return suite