]> gitweb.michael.orlitzky.com - dunshire.git/blobdiff - test/__init__.py
Build looping into the test suite and make doctests optional.
[dunshire.git] / test / __init__.py
index 6942bf2f2af83c8749bae65c586f685ec5b95e08..2e23a7c7dbec733dc994b611e137a33f419d036d 100644 (file)
@@ -8,32 +8,46 @@ can be used by setuptools.
 """
 
 from unittest import TestLoader, TestSuite, TextTestRunner
 """
 
 from unittest import TestLoader, TestSuite, TextTestRunner
-from doctest import DocTestSuite
+from doctest import DocTestSuite, ELLIPSIS
 
 from dunshire import cones
 from dunshire import errors
 from dunshire import matrices
 from dunshire import games
 
 from dunshire import cones
 from dunshire import errors
 from dunshire import matrices
 from dunshire import games
+from test import matrices_test
+from test import randomgen
 from test import symmetric_linear_game_test
 
 from test import symmetric_linear_game_test
 
-def build_suite():
+def build_suite(doctests=True):
     """
     Build our test suite, separately from running it.
     """
     Build our test suite, separately from running it.
+
+    Parameters
+    ----------
+
+    doctests : bool
+        Do you want to build the doctests, too? During random testing,
+        the answer may be "no."
+
     """
     suite = TestSuite()
     """
     suite = TestSuite()
-    suite.addTest(DocTestSuite(cones))
-    suite.addTest(DocTestSuite(errors))
-    suite.addTest(DocTestSuite(matrices))
-    suite.addTest(DocTestSuite(games))
-    suite.addTest(DocTestSuite(symmetric_linear_game_test))
+    if doctests:
+        suite.addTest(DocTestSuite(cones))
+        suite.addTest(DocTestSuite(errors, optionflags=ELLIPSIS))
+        suite.addTest(DocTestSuite(games, optionflags=ELLIPSIS))
+        suite.addTest(DocTestSuite(matrices, optionflags=ELLIPSIS))
+        suite.addTest(DocTestSuite(symmetric_linear_game_test))
+        suite.addTest(DocTestSuite(randomgen, optionflags=ELLIPSIS))
     slg_tests = TestLoader().loadTestsFromModule(symmetric_linear_game_test)
     suite.addTest(slg_tests)
     slg_tests = TestLoader().loadTestsFromModule(symmetric_linear_game_test)
     suite.addTest(slg_tests)
+    mat_tests = TestLoader().loadTestsFromModule(matrices_test)
+    suite.addTest(mat_tests)
     return suite
 
     return suite
 
-def run_suite(s):
+def run_suite(suite):
     """
     Run all of the unit and doctests for the ``dunshire`` and ``test``
     packages.
     """
     runner = TextTestRunner(verbosity=1)
     """
     Run all of the unit and doctests for the ``dunshire`` and ``test``
     packages.
     """
     runner = TextTestRunner(verbosity=1)
-    runner.run(s)
+    return runner.run(suite)