diff options
Diffstat (limited to 'tests/test_llm.py')
| -rw-r--r-- | tests/test_llm.py | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/tests/test_llm.py b/tests/test_llm.py index 354b5fe..ea28b08 100644 --- a/tests/test_llm.py +++ b/tests/test_llm.py @@ -19,7 +19,7 @@ class Down(unittest.TestCase): class Up(unittest.TestCase): def test_aggregates_opencode_and_ignores_other_programs(self): data = {"/api/claude_limits": [{"context_pct": 12}], - "/api/claude_session": {"context_used": 1200}, + "/api/claude_session": {"session": {"models": [{"model": "claude-opus-4"}]}}, "/api/summary": [ {"program": "opencode", "provider": "deepseek", "model": "v4", "total_cost_usd": 1.5, "tokens": 1000, "calls": 3}, @@ -27,24 +27,34 @@ class Up(unittest.TestCase): "total_cost_usd": 0.5, "tokens": 500, "calls": 1}, {"program": "assistant", "provider": "x", "model": "y", "total_cost_usd": 9.0, "tokens": 9999, "calls": 9}, - ]} + ], + "/api/last_session": {"sessions": [ + {"program": "opencode", "rows": [ + {"provider": "together", "model": "qwen", "calls": 1}, + {"provider": "deepseek", "model": "v4", "calls": 3}, + ]}, + ]}} st = llm.make({"llm": {"url": "http://x"}, "fetch": lambda u, timeout=2: data[u]}).state() self.assertFalse(st["offline"]) self.assertEqual(st["claude"]["context_pct"], 12) + self.assertEqual(st["claude"]["model"], "claude-opus-4") self.assertEqual(st["opencode"]["cost"], 2.0) self.assertEqual(st["opencode"]["tokens"], 1500) self.assertEqual(st["opencode"]["calls"], 4) - self.assertEqual(st["opencode"]["models"][0]["model"], "v4") + self.assertEqual(st["opencode"]["model"], "v4") def test_handles_the_real_latest_shape(self): data = {"/api/claude_limits": {"latest": {"context_pct": 42, "five_hour_pct": 10}}, - "/api/claude_session": {}, - "/api/summary": []} + "/api/claude_session": {"session": None}, + "/api/summary": [], + "/api/last_session": {"sessions": []}} st = llm.make({"llm": {"url": "http://x"}, "fetch": lambda u, timeout=2: data[u]}).state() self.assertEqual(st["claude"]["context_pct"], 42) self.assertEqual(st["claude"]["five_hour_pct"], 10) + self.assertIsNone(st["claude"]["model"]) + self.assertIsNone(st["opencode"]["model"]) if __name__ == "__main__": |
