From ae7179c16026c46739e4e423b175c04bdf02c7a9 Mon Sep 17 00:00:00 2001 From: Jeppe Fihl-Pearson Date: Tue, 26 May 2026 22:52:17 +0100 Subject: [PATCH] Output response from `alga adhoc` in JSON format This makes it more friendly for people who want to process the output programmatically, instead of a Python dict. --- src/alga/cli_adhoc.py | 8 +++----- tests/test_cli_adhoc.py | 6 +++--- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/alga/cli_adhoc.py b/src/alga/cli_adhoc.py index e32ca91..847ab0a 100644 --- a/src/alga/cli_adhoc.py +++ b/src/alga/cli_adhoc.py @@ -1,7 +1,7 @@ import json from typing import Annotated -from rich import print +from rich import print_json from typer import Argument, Typer from alga import client @@ -14,7 +14,5 @@ def adhoc(path: str, data: Annotated[str | None, Argument()] = None) -> None: """Send raw request to the TV""" - if data: - print(client.request(path, json.loads(data))) - else: - print(client.request(path)) + data_str = json.loads(data) if data else None + print_json(data=client.request(path, data_str)) diff --git a/tests/test_cli_adhoc.py b/tests/test_cli_adhoc.py index 1418b7d..71b716d 100644 --- a/tests/test_cli_adhoc.py +++ b/tests/test_cli_adhoc.py @@ -17,9 +17,9 @@ def test_without_data(faker: Faker, mock_request: MagicMock) -> None: result = runner.invoke(app, ["adhoc", path]) - mock_request.assert_called_once_with(path) + mock_request.assert_called_once_with(path, None) assert result.exit_code == 0 - assert result.stdout == f"{return_value}\n" + assert result.stdout == f'"{return_value}"\n' def test_with_data(faker: Faker, mock_request: MagicMock) -> None: @@ -32,4 +32,4 @@ def test_with_data(faker: Faker, mock_request: MagicMock) -> None: mock_request.assert_called_once_with(path, data) assert result.exit_code == 0 - assert result.stdout == f"{return_value}\n" + assert result.stdout == f'"{return_value}"\n'