mirror of
https://github.com/home-assistant/core.git
synced 2025-09-06 05:11:35 +02:00
Fix Sonos CI issue part 2 (#150529)
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
This commit is contained in:
@@ -167,6 +167,17 @@ async def async_autosetup_sonos(async_setup_sonos):
|
||||
await async_setup_sonos()
|
||||
|
||||
|
||||
def reset_sonos_alarms(alarm_event: SonosMockEvent) -> None:
|
||||
"""Reset the Sonos alarms to a known state."""
|
||||
sonos_alarms = Alarms()
|
||||
sonos_alarms.alarms = {}
|
||||
sonos_alarms._last_zone_used = None
|
||||
sonos_alarms._last_alarm_list_version = None
|
||||
sonos_alarms.last_uid = None
|
||||
sonos_alarms.last_id = 0
|
||||
alarm_event.variables["alarm_list_version"] = "RINCON_test:0"
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def async_setup_sonos(
|
||||
hass: HomeAssistant, config_entry: MockConfigEntry, fire_zgs_event, alarm_event
|
||||
@@ -175,9 +186,7 @@ def async_setup_sonos(
|
||||
|
||||
async def _wrapper():
|
||||
config_entry.add_to_hass(hass)
|
||||
sonos_alarms = Alarms()
|
||||
sonos_alarms.last_alarm_list_version = "RINCON_test:0"
|
||||
alarm_event.variables["alarm_list_version"] = "RINCON_test:0"
|
||||
reset_sonos_alarms(alarm_event)
|
||||
assert await hass.config_entries.async_setup(config_entry.entry_id)
|
||||
await hass.async_block_till_done(wait_background_tasks=True)
|
||||
await fire_zgs_event()
|
||||
@@ -851,11 +860,15 @@ def zgs_event_fixture(
|
||||
|
||||
@pytest.fixture(name="sonos_setup_two_speakers")
|
||||
async def sonos_setup_two_speakers(
|
||||
hass: HomeAssistant, soco_factory: SoCoMockFactory
|
||||
hass: HomeAssistant,
|
||||
soco_factory: SoCoMockFactory,
|
||||
alarm_event: SonosMockEvent,
|
||||
) -> list[MockSoCo]:
|
||||
"""Set up home assistant with two Sonos Speakers."""
|
||||
soco_lr = soco_factory.cache_mock(MockSoCo(), "10.10.10.1", "Living Room")
|
||||
soco_br = soco_factory.cache_mock(MockSoCo(), "10.10.10.2", "Bedroom")
|
||||
reset_sonos_alarms(alarm_event)
|
||||
|
||||
await async_setup_component(
|
||||
hass,
|
||||
DOMAIN,
|
||||
|
@@ -271,8 +271,6 @@ async def test_alarm_create_delete(
|
||||
|
||||
async def test_alarm_change_device(
|
||||
hass: HomeAssistant,
|
||||
async_setup_sonos,
|
||||
soco: MockSoCo,
|
||||
alarm_clock: SonosMockService,
|
||||
alarm_clock_extended: SonosMockService,
|
||||
alarm_event: SonosMockEvent,
|
||||
@@ -294,7 +292,7 @@ async def test_alarm_change_device(
|
||||
alarm_dict["CurrentAlarmList"] = alarm_dict["CurrentAlarmList"].replace(
|
||||
"RINCON_test", f"{soco_lr.uid}"
|
||||
)
|
||||
alarm_dict["CurrentAlarmListVersion"] = f"{soco_lr.uid}:900"
|
||||
alarm_dict["CurrentAlarmListVersion"] = "RINCON_test:900"
|
||||
soco_lr.alarmClock.ListAlarms.return_value = alarm_dict
|
||||
soco_br = soco_factory.cache_mock(MockSoCo(), "10.10.10.2", "Bedroom")
|
||||
await async_setup_component(
|
||||
@@ -327,7 +325,7 @@ async def test_alarm_change_device(
|
||||
alarm_clock.ListAlarms.return_value = alarm_update
|
||||
|
||||
# Update the alarm_list_version so it gets processed.
|
||||
alarm_event.variables["alarm_list_version"] = f"{soco_br.uid}:1000"
|
||||
alarm_event.variables["alarm_list_version"] = "RINCON_test:1000"
|
||||
alarm_update["CurrentAlarmListVersion"] = alarm_event.increment_variable(
|
||||
"alarm_list_version"
|
||||
)
|
||||
|
Reference in New Issue
Block a user