diff options
| author | Danilo M. <danix@danix.xyz> | 2026-07-03 17:39:38 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-07-03 17:39:38 +0200 |
| commit | b125853ab2e5fe3d8d0ad045609a5863e46a607a (patch) | |
| tree | 4f115d73c8b889b714a01d2902582545bf8c1313 /tests/unit/test_commands_budget.py | |
| parent | 9c1c96b70dad9701498e4da7a3a8fa68e180a118 (diff) | |
| download | firefly-cli-b125853ab2e5fe3d8d0ad045609a5863e46a607a.tar.gz firefly-cli-b125853ab2e5fe3d8d0ad045609a5863e46a607a.zip | |
feat(budget): budget list with current-month default
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Diffstat (limited to 'tests/unit/test_commands_budget.py')
| -rw-r--r-- | tests/unit/test_commands_budget.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/unit/test_commands_budget.py b/tests/unit/test_commands_budget.py new file mode 100644 index 0000000..7741840 --- /dev/null +++ b/tests/unit/test_commands_budget.py @@ -0,0 +1,36 @@ +# Copyright (C) 2026 Danilo M. <danix@danix.xyz> GPL-2.0-only +import unittest +from unittest.mock import MagicMock +from types import SimpleNamespace +import firefly_cli.commands.budget as budget + + +def _ctx(client=None, resolver=None): + return SimpleNamespace(client=client or MagicMock(), + resolver=resolver or MagicMock(), human=False) + + +class TestBudgetList(unittest.TestCase): + def test_list_defaults_to_current_month(self): + client = MagicMock() + client.request.return_value = {"data": []} + args = SimpleNamespace(start=None, end=None) + rc = budget.cmd_list(args, _ctx(client=client)) + self.assertEqual(rc, 0) + _, kwargs = client.request.call_args + params = kwargs["params"] + self.assertTrue(params["start"].endswith("-01")) + self.assertEqual(params["start"][:7], params["end"][:7]) + + def test_list_explicit_range(self): + client = MagicMock() + client.request.return_value = {"data": []} + args = SimpleNamespace(start="2026-01-01", end="2026-01-31") + budget.cmd_list(args, _ctx(client=client)) + _, kwargs = client.request.call_args + self.assertEqual(kwargs["params"], + {"start": "2026-01-01", "end": "2026-01-31"}) + + +if __name__ == "__main__": + unittest.main() |
