mirror of
https://github.com/openswarm-ai/openswarm.git
synced 2026-09-11 20:27:44 +02:00
* [haik]: ckpt, added in the test runner skelton i made in another repo -> still gotta make tweaks to fold it onto the current repo * [haik]: restructure backend test layout: move 37 test files from backend/tests/ into backend/tests/test_cases/, add backend/tests/run.sh one-command launcher that auto-provisions both runner and test venvs with stamp-based caching, update runner config.json to point test_paths at test_cases/ and fix venv_python path, revise runner README with run.sh usage and clearer setup instructions, and gitignore the .runner-venv directory * [haik]: refactor: reorganize backend/tests/test_cases from flat structure into domain subdirectories — moved 36 test files into auth/, browser/, labeling/, service/, settings/, and web_search/ for better discoverability and grouping * [haik]: overhaul test picker UI and add post-run rerun loop: replace checkbox glyphs with fzf-style row recolouring (coral=full, lighter coral=partial) and a right-pinned selection dot, add config-driven icon tiers (nerd/emoji/unicode/ascii) with per-glyph graceful degradation, replace the modal -k keyword screen with an inline live-filtering search bar that prunes the tree on every keystroke, add warm Anthropic-dark coral theme, toolbar flag chips replacing the old status line, and a floating help badge overlay; add rerun_prompt.py with inline Textual pill prompt (rerun all/failed/passed/exit) shown after each TTY run, wire it into main.py as a post-run loop; change run_tests to return (exit_code, RunSummary) tracking collected/passed/failed node IDs via new Dashboard methods; add icons field to config.py and config.json (set to nerd), document icon tiers and Nerd Font setup in README, set Hack Nerd Font in .vscode/settings.json, add .runner-venv to linter excludes
28 lines
983 B
TOML
28 lines
983 B
TOML
# Dependency manifest for the test runner's OWN venv.
|
|
#
|
|
# These are the UI libraries the runner process needs. They are intentionally
|
|
# separate from the test venv: the runner imports typer/rich/textual but never
|
|
# pytest, and the worker subprocess imports pytest but never rich/textual.
|
|
#
|
|
# Install into a dedicated runner venv, e.g.:
|
|
# python -m venv .runner-venv
|
|
# .runner-venv/bin/pip install -e tests/runner
|
|
#
|
|
# The *test* venv (pointed at by config.json -> "venv_python") is a separate
|
|
# environment that must provide: pytest, pytest-asyncio, coverage, plus the
|
|
# project's own runtime/test dependencies.
|
|
|
|
[project]
|
|
name = "test-runner"
|
|
version = "0.1.0"
|
|
description = "Interactive subprocess test runner with a live Rich dashboard."
|
|
requires-python = ">=3.9"
|
|
dependencies = [
|
|
"typer", # CLI entrypoint (__main__.py)
|
|
"rich", # live dashboard (run.py)
|
|
"textual", # interactive tree picker (picker.py)
|
|
]
|
|
|
|
[tool.setuptools]
|
|
packages = ["tests.runner"]
|