Download tests/test_processes.py from smlflg/CodexDashBoard: direct link, hf CLI and curl.
- Browser
- Download file 1.6 kB
-
https://huggingface.co/smlflg/CodexDashBoard/resolve/main/tests/test_processes.py
- Command line
-
hf download hf://smlflg/CodexDashBoard/tests/test_processes.py
-
curl -L -o test_processes.py https://huggingface.co/smlflg/CodexDashBoard/resolve/main/tests/test_processes.py
1.6 kB
| from types import SimpleNamespace | |
| from codex_dashboard.processes import format_uptime, scan_processes | |
| def test_scan_processes_filters_codex_lines(): | |
| output = "\n".join( | |
| [ | |
| "smlflg 101 0.0 0.1 1000 2048 ? S 10:00 0:00 codex", | |
| "smlflg 102 0.0 0.1 1000 2048 ? S 10:00 0:00 bash", | |
| "smlflg 103 1.5 0.2 1000 4096 pts/1 S 10:00 0:00 node mcp-server", | |
| ] | |
| ) | |
| processes = scan_processes(ps_output=output) | |
| assert [process.pid for process in processes] == [103, 101] | |
| assert processes[0].name in {"MCP Server", "node/mcp-server"} | |
| def test_scan_processes_reads_proc_metadata_for_live_ps(monkeypatch): | |
| import codex_dashboard.processes as processes_module | |
| output = "smlflg 4242 0.0 0.1 1000 2048 ? S 10:00 0:00 codex" | |
| monkeypatch.setattr( | |
| processes_module.subprocess, | |
| "run", | |
| lambda *_, **__: SimpleNamespace(returncode=0, stdout=output), | |
| ) | |
| monkeypatch.setattr(processes_module.os, "getpid", lambda: 9999) | |
| monkeypatch.setattr(processes_module, "_read_cwd", lambda pid: f"/work/{pid}") | |
| monkeypatch.setattr(processes_module, "_read_uptime_seconds", lambda pid, now=None: 25 * 3600) | |
| result = scan_processes() | |
| assert len(result) == 1 | |
| assert result[0].pid == 4242 | |
| assert result[0].cwd == "/work/4242" | |
| assert result[0].uptime_seconds == 25 * 3600 | |
| assert result[0].stale is True | |
| def test_format_uptime(): | |
| assert format_uptime(30) == "<1m" | |
| assert format_uptime(600) == "10m" | |
| assert format_uptime(7200) == "2h" | |
| assert format_uptime(172800) == "2d" | |