diff options
author | Ben Sima <ben@bsima.me> | 2025-01-21 04:25:32 -0500 |
---|---|---|
committer | Ben Sima <ben@bsima.me> | 2025-01-21 05:05:18 -0500 |
commit | fd1942057642098d0ec2878586d33e9c79483848 (patch) | |
tree | ae8ed68c547c01f012459676525355a48e4bee03 | |
parent | 7408e658a811a5431c1916d07836fbe29adeea96 (diff) |
Move test runner to Omni/Test.py
Like the previous commit, this matches Omni/Test.hs.
-rwxr-xr-x | Biz/Storybook.py | 9 | ||||
-rw-r--r-- | Omni/Test.py | 17 |
2 files changed, 19 insertions, 7 deletions
diff --git a/Biz/Storybook.py b/Biz/Storybook.py index 253cf3b..7d8f326 100755 --- a/Biz/Storybook.py +++ b/Biz/Storybook.py @@ -32,6 +32,7 @@ import ludic.catalog.typography as typography import ludic.web import Omni.App as App import Omni.Log as Log +import Omni.Test as Test import openai import os import pathlib @@ -78,13 +79,7 @@ def move(area: App.Area) -> None: def test(area: App.Area = App.Area.Test) -> None: """Run the unittest suite manually.""" - Log.setup(logging.DEBUG if area == App.Area.Test else logging.ERROR) - suite = unittest.TestSuite() - tests = [IndexTest, StoryTest] - suite.addTests([ - unittest.defaultTestLoader.loadTestsFromTestCase(tc) for tc in tests - ]) - unittest.TextTestRunner(verbosity=2).run(suite) + Test.run(area, [IndexTest, StoryTest]) def const(s: str) -> str: diff --git a/Omni/Test.py b/Omni/Test.py new file mode 100644 index 0000000..495334a --- /dev/null +++ b/Omni/Test.py @@ -0,0 +1,17 @@ +"""Test runner and related functions.""" + +import logging +import Omni.App as App +import Omni.Log as Log +import typing +import unittest + + +def run(area: App.Area, tests: list[typing.Any]) -> None: + """Run the given tests with loglevel determined by area.""" + Log.setup(logging.DEBUG if area == App.Area.Test else logging.ERROR) + suite = unittest.TestSuite() + suite.addTests([ + unittest.defaultTestLoader.loadTestsFromTestCase(tc) for tc in tests + ]) + unittest.TextTestRunner(verbosity=2).run(suite) |