refactor: flatten account command to a single balances view
Remove overview/balances/positions subcommands in favor of one `account` command that returns all balances with an `is_dust` flag. Add descriptions to every parser and expose -a/--agent and --doc on all leaf commands for better help discoverability. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -91,6 +91,25 @@ class CLITestCase(unittest.TestCase):
|
||||
self.assertIn("lastPrice", output)
|
||||
self.assertIn("BTCUSDT", output)
|
||||
|
||||
def test_account_dispatches(self):
|
||||
captured = {}
|
||||
with (
|
||||
patch.object(
|
||||
cli, "load_config", return_value={"binance": {"spot_base_url": "https://test", "recv_window": 5000}, "market": {"default_quote": "USDT"}, "trading": {"dust_usdt_threshold": 10.0}}
|
||||
),
|
||||
patch.object(cli, "get_binance_credentials", return_value={"api_key": "k", "api_secret": "s"}),
|
||||
patch.object(cli, "SpotBinanceClient"),
|
||||
patch.object(
|
||||
cli.account_service, "get_balances", return_value={"balances": [{"asset": "BTC", "is_dust": False}]}
|
||||
),
|
||||
patch.object(
|
||||
cli, "print_output", side_effect=lambda payload, **kwargs: captured.setdefault("payload", payload)
|
||||
),
|
||||
):
|
||||
result = cli.main(["account"])
|
||||
self.assertEqual(result, 0)
|
||||
self.assertEqual(captured["payload"]["balances"][0]["asset"], "BTC")
|
||||
|
||||
def test_upgrade_dispatches(self):
|
||||
captured = {}
|
||||
with (
|
||||
|
||||
Reference in New Issue
Block a user