File tree Expand file tree Collapse file tree 2 files changed +37
-0
lines changed
Expand file tree Collapse file tree 2 files changed +37
-0
lines changed Original file line number Diff line number Diff line change @@ -508,6 +508,16 @@ async def cury_set_away_mode(
508508 }
509509 await self .call_rpc ("Cury.SetAwayMode" , params = params )
510510
511+ async def cury_set_mode (
512+ self ,
513+ id_ : int ,
514+ value : str ,
515+ ) -> None :
516+ """Set mode for Cury."""
517+ params : dict [str , Any ] = {"id" : id_ }
518+ params ["mode" ] = None if value == "none" else value
519+ await self .call_rpc ("Cury.SetMode" , params = params )
520+
511521 async def enum_set (self , id_ : int , value : str ) -> None :
512522 """Set the value for the enum component."""
513523 params = {
Original file line number Diff line number Diff line change @@ -1457,6 +1457,33 @@ async def test_cury_set_away_mode(
14571457 }
14581458
14591459
1460+ @pytest .mark .asyncio
1461+ async def test_cury_set_mode (
1462+ rpc_device : RpcDevice ,
1463+ ) -> None :
1464+ """Test RpcDevice cury_set_mode() method."""
1465+ await rpc_device .cury_set_mode (9 , "living_room" )
1466+
1467+ assert rpc_device .call_rpc_multiple .call_count == 1
1468+ call_args_list = rpc_device .call_rpc_multiple .call_args_list
1469+
1470+ assert call_args_list [0 ][0 ][0 ][0 ][0 ] == "Cury.SetMode"
1471+ assert call_args_list [0 ][0 ][0 ][0 ][1 ] == {
1472+ "id" : 9 ,
1473+ "mode" : "living_room" ,
1474+ }
1475+
1476+ await rpc_device .cury_set_mode (9 , "none" )
1477+
1478+ assert rpc_device .call_rpc_multiple .call_count == 2
1479+ call_args_list = rpc_device .call_rpc_multiple .call_args_list
1480+
1481+ assert call_args_list [1 ][0 ][0 ][0 ][1 ] == {
1482+ "id" : 9 ,
1483+ "mode" : None ,
1484+ }
1485+
1486+
14601487@pytest .mark .asyncio
14611488async def test_rpc_device_init_with_ble (ws_context : WsServer ) -> None :
14621489 """Test RpcDevice initialization with BLE device."""
You can’t perform that action at this time.
0 commit comments