From 02756b83fcb2afdd617d5819a9f7976f44032f39 Mon Sep 17 00:00:00 2001 From: Louis Christ Date: Thu, 4 Jun 2026 15:05:43 +0200 Subject: [PATCH] Fix: pause sending wrong value when toggle=False --- src/pyblu/player.py | 2 +- tests/test_player.py | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/pyblu/player.py b/src/pyblu/player.py index 11cfcd1..a79a439 100644 --- a/src/pyblu/player.py +++ b/src/pyblu/player.py @@ -210,7 +210,7 @@ async def pause(self, toggle: bool | None = None, timeout: float | None = None) """ params: dict[str, str | int] = {} if toggle is not None: - params["toggle"] = "1" + params["toggle"] = "1" if toggle else "0" data = await self._get("/Pause", params=params, timeout=timeout) return parse_state(data) diff --git a/tests/test_player.py b/tests/test_player.py index c8a1b7f..cd5c9b1 100644 --- a/tests/test_player.py +++ b/tests/test_player.py @@ -54,6 +54,28 @@ async def test_pause(): assert len(Mocket.request_list()) == 1 +@async_mocketize(strict_mode=True) +async def test_pause_toggle_true(): + Entry.single_register(Entry.GET, "http://node:11000/Pause?toggle=1", status=200, body="playing") + async with aiohttp.ClientSession(connector=MocketTCPConnector()) as session: + async with Player("node", session=session) as client: + state = await client.pause(toggle=True) + + assert state == "playing" + assert len(Mocket.request_list()) == 1 + + +@async_mocketize(strict_mode=True) +async def test_pause_toggle_false(): + Entry.single_register(Entry.GET, "http://node:11000/Pause?toggle=0", status=200, body="paused") + async with aiohttp.ClientSession(connector=MocketTCPConnector()) as session: + async with Player("node", session=session) as client: + state = await client.pause(toggle=False) + + assert state == "paused" + assert len(Mocket.request_list()) == 1 + + @async_mocketize(strict_mode=True) async def test_stop(): Entry.single_register(Entry.GET, "http://node:11000/Stop", status=200, body="stopped")