diff --git a/tests/test_scene.py b/tests/test_scene.py index 61d4ad4..ec359bc 100644 --- a/tests/test_scene.py +++ b/tests/test_scene.py @@ -1,5 +1,6 @@ """Test cases for scene commands in slobs_cli.""" +import anyio import pytest from asyncclick.testing import CliRunner @@ -15,6 +16,7 @@ async def test_scene_list(): assert 'slobs-test-scene-1' in result.output assert 'slobs-test-scene-2' in result.output assert 'slobs-test-scene-3' in result.output + await anyio.sleep(0.2) # Avoid rate limiting issues @pytest.mark.anyio @@ -23,7 +25,19 @@ async def test_scene_current(): runner = CliRunner() result = await runner.invoke(cli, ['scene', 'switch', 'slobs-test-scene-2']) assert result.exit_code == 0 + await anyio.sleep(0.2) # Avoid rate limiting issues result = await runner.invoke(cli, ['scene', 'current']) assert result.exit_code == 0 assert 'Current active scene: slobs-test-scene-2' in result.output + await anyio.sleep(0.2) # Avoid rate limiting issues + + +@pytest.mark.anyio +async def test_scene_invalid_switch(): + """Test switching to an invalid scene.""" + runner = CliRunner() + result = await runner.invoke(cli, ['scene', 'switch', 'invalid-scene']) + assert result.exit_code != 0 + assert 'Scene "invalid-scene" not found' in result.output + await anyio.sleep(0.2) # Avoid rate limiting issues