Add interval refresh mode
This commit is contained in:
@@ -1,14 +1,19 @@
|
||||
import io
|
||||
from pathlib import Path
|
||||
from tempfile import TemporaryDirectory
|
||||
import unittest
|
||||
|
||||
from rich.console import Console
|
||||
|
||||
from mm.cli import (
|
||||
GPUStat,
|
||||
MachineConfig,
|
||||
MachineResult,
|
||||
build_parser,
|
||||
gpu_summary,
|
||||
load_machines,
|
||||
parse_nvidia_smi_csv,
|
||||
render_dashboard,
|
||||
)
|
||||
|
||||
|
||||
@@ -67,6 +72,18 @@ class NvidiaSmiParsingTests(unittest.TestCase):
|
||||
|
||||
|
||||
class RenderingTests(unittest.TestCase):
|
||||
def test_render_dashboard_includes_last_refresh_time(self) -> None:
|
||||
console = Console(
|
||||
file=io.StringIO(),
|
||||
record=True,
|
||||
color_system=None,
|
||||
width=120,
|
||||
)
|
||||
|
||||
render_dashboard([], Path("list.yaml"), console, refreshed_at="12:34:56")
|
||||
|
||||
self.assertIn("last refresh: 12:34:56", console.export_text())
|
||||
|
||||
def test_gpu_summary_uses_fixed_width_decimal_metrics(self) -> None:
|
||||
result = MachineResult(
|
||||
machine=MachineConfig(alias="dash0", label="dash0"),
|
||||
@@ -82,5 +99,12 @@ class RenderingTests(unittest.TestCase):
|
||||
)
|
||||
|
||||
|
||||
class CLITests(unittest.TestCase):
|
||||
def test_interval_flag_sets_refresh_interval(self) -> None:
|
||||
args = build_parser().parse_args(["--interval", "15"])
|
||||
|
||||
self.assertEqual(args.interval, 15)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
||||
Reference in New Issue
Block a user