Skip to content

Commit 0885fb5

Browse files
Nick  VaccarelloNick  Vaccarello
authored andcommitted
chore(tools): run full tests directory in sanity CLI; add -k filter and maxfail to avoid snowballing
1 parent 7fa2ae9 commit 0885fb5

File tree

1 file changed

+14
-5
lines changed

1 file changed

+14
-5
lines changed

medical_diagnosis_model/tools/sanity.py

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,14 @@ def cmd_tests(args: argparse.Namespace) -> None:
5858
pyenv.pop("MDM_API_KEY", None)
5959
pyenv.pop("MDM_AUTH_MODE", None)
6060
py = sys.executable
61-
tests = [
62-
str(MODEL_ROOT / "tests" / "test_api_phase1.py"),
63-
str(MODEL_ROOT / "tests" / "test_selector.py"),
64-
]
65-
_run([py, "-m", "pytest", "-q", *tests], env=pyenv)
61+
tests_path = getattr(args, "tests_path", None) or str(MODEL_ROOT / "tests")
62+
maxfail = str(getattr(args, "maxfail", 1))
63+
kexpr = getattr(args, "tests_k", None)
64+
cmd = [py, "-m", "pytest", "-q", f"--maxfail={maxfail}"]
65+
if kexpr:
66+
cmd += ["-k", kexpr]
67+
cmd += [tests_path]
68+
_run(cmd, env=pyenv)
6669

6770

6871
def _wait_for(url: str, timeout_s: int = 30) -> None:
@@ -281,6 +284,9 @@ def add_api_opts(sp):
281284
sp_data.set_defaults(func=cmd_data)
282285

283286
sp_tests = sub.add_parser("tests", help="Run unit tests (pytest)")
287+
sp_tests.add_argument("--tests-path", default=None, help="Path to tests (default: medical.../tests)")
288+
sp_tests.add_argument("--tests-k", default=None, help="pytest -k expression to filter tests")
289+
sp_tests.add_argument("--maxfail", type=int, default=1, help="Fail fast after N failures (default: 1)")
284290
sp_tests.set_defaults(func=cmd_tests)
285291

286292
sp_api = sub.add_parser("api", help="Smoke test /diagnose endpoint")
@@ -308,6 +314,9 @@ def add_api_opts(sp):
308314
sp_suite.add_argument("--with-rate", action="store_true")
309315
sp_suite.add_argument("--with-adaptive", action="store_true")
310316
sp_suite.add_argument("--report-json", default=None, help="Write JSON summary to this path")
317+
sp_suite.add_argument("--tests-path", default=None)
318+
sp_suite.add_argument("--tests-k", default=None)
319+
sp_suite.add_argument("--maxfail", type=int, default=1)
311320
sp_suite.set_defaults(func=cmd_suite)
312321

313322
return p

0 commit comments

Comments
 (0)