Remove legacy async_add_job from homekit tests (#33727)
* Remove legacy async_add_job from homekit tests * Empty commit to rerun CI
This commit is contained in:
parent
f7b822d000
commit
e4ee4cf302
12 changed files with 184 additions and 158 deletions
|
@ -60,15 +60,15 @@ async def test_debounce(hass):
|
|||
now = datetime(2018, 1, 1, 20, 0, 0, tzinfo=dt_util.UTC)
|
||||
|
||||
with patch("homeassistant.util.dt.utcnow", return_value=now):
|
||||
await hass.async_add_job(debounce_demo, mock, "value")
|
||||
await hass.async_add_executor_job(debounce_demo, mock, "value")
|
||||
hass.bus.async_fire(EVENT_TIME_CHANGED, {ATTR_NOW: now + timedelta(seconds=3)})
|
||||
await hass.async_block_till_done()
|
||||
assert counter == 1
|
||||
assert len(arguments) == 2
|
||||
|
||||
with patch("homeassistant.util.dt.utcnow", return_value=now):
|
||||
await hass.async_add_job(debounce_demo, mock, "value")
|
||||
await hass.async_add_job(debounce_demo, mock, "value")
|
||||
await hass.async_add_executor_job(debounce_demo, mock, "value")
|
||||
await hass.async_add_executor_job(debounce_demo, mock, "value")
|
||||
|
||||
hass.bus.async_fire(EVENT_TIME_CHANGED, {ATTR_NOW: now + timedelta(seconds=3)})
|
||||
await hass.async_block_till_done()
|
||||
|
@ -99,7 +99,7 @@ async def test_home_accessory(hass, hk_driver):
|
|||
with patch(
|
||||
"homeassistant.components.homekit.accessories.HomeAccessory.update_state"
|
||||
) as mock_update_state:
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
state = hass.states.get(entity_id)
|
||||
mock_update_state.assert_called_with(state)
|
||||
|
@ -132,7 +132,7 @@ async def test_battery_service(hass, hk_driver, caplog):
|
|||
assert acc._char_low_battery.value == 0
|
||||
assert acc._char_charging.value == 2
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc._char_battery.value == 50
|
||||
assert acc._char_low_battery.value == 0
|
||||
|
@ -163,7 +163,7 @@ async def test_battery_service(hass, hk_driver, caplog):
|
|||
assert acc._char_low_battery.value == 0
|
||||
assert acc._char_charging.value == 2
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc._char_battery.value == 10
|
||||
assert acc._char_low_battery.value == 1
|
||||
|
@ -197,7 +197,7 @@ async def test_linked_battery_sensor(hass, hk_driver, caplog):
|
|||
acc.update_state = lambda x: None
|
||||
assert acc.linked_battery_sensor == linked_battery
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc._char_battery.value == 50
|
||||
assert acc._char_low_battery.value == 0
|
||||
|
@ -232,7 +232,7 @@ async def test_linked_battery_sensor(hass, hk_driver, caplog):
|
|||
{CONF_LINKED_BATTERY_SENSOR: linked_battery, CONF_LOW_BATTERY_THRESHOLD: 50},
|
||||
)
|
||||
acc.update_state = lambda x: None
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc._char_battery.value == 20
|
||||
assert acc._char_low_battery.value == 1
|
||||
|
@ -263,7 +263,7 @@ async def test_missing_linked_battery_sensor(hass, hk_driver, caplog):
|
|||
acc.update_state = lambda x: None
|
||||
assert not acc.linked_battery_sensor
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert not acc.linked_battery_sensor
|
||||
|
|
|
@ -129,7 +129,7 @@ async def test_homekit_setup(hass, hk_driver):
|
|||
f"{PATH_HOMEKIT}.accessories.HomeDriver", return_value=hk_driver
|
||||
) as mock_driver, patch("homeassistant.util.get_local_ip") as mock_ip:
|
||||
mock_ip.return_value = IP_ADDRESS
|
||||
await hass.async_add_job(homekit.setup)
|
||||
await hass.async_add_executor_job(homekit.setup)
|
||||
|
||||
path = hass.config.path(HOMEKIT_FILE)
|
||||
assert isinstance(homekit.bridge, HomeBridge)
|
||||
|
@ -153,7 +153,7 @@ async def test_homekit_setup_ip_address(hass, hk_driver):
|
|||
with patch(
|
||||
f"{PATH_HOMEKIT}.accessories.HomeDriver", return_value=hk_driver
|
||||
) as mock_driver:
|
||||
await hass.async_add_job(homekit.setup)
|
||||
await hass.async_add_executor_job(homekit.setup)
|
||||
mock_driver.assert_called_with(
|
||||
hass,
|
||||
address="172.0.0.0",
|
||||
|
@ -172,7 +172,7 @@ async def test_homekit_setup_advertise_ip(hass, hk_driver):
|
|||
with patch(
|
||||
f"{PATH_HOMEKIT}.accessories.HomeDriver", return_value=hk_driver
|
||||
) as mock_driver:
|
||||
await hass.async_add_job(homekit.setup)
|
||||
await hass.async_add_executor_job(homekit.setup)
|
||||
mock_driver.assert_called_with(
|
||||
hass,
|
||||
address="0.0.0.0",
|
||||
|
@ -187,7 +187,7 @@ async def test_homekit_setup_safe_mode(hass, hk_driver):
|
|||
homekit = HomeKit(hass, BRIDGE_NAME, DEFAULT_PORT, None, {}, {}, True)
|
||||
|
||||
with patch(f"{PATH_HOMEKIT}.accessories.HomeDriver", return_value=hk_driver):
|
||||
await hass.async_add_job(homekit.setup)
|
||||
await hass.async_add_executor_job(homekit.setup)
|
||||
assert homekit.driver.safe_mode is True
|
||||
|
||||
|
||||
|
@ -263,7 +263,7 @@ async def test_homekit_start(hass, hk_driver, debounce_patcher):
|
|||
) as hk_driver_add_acc, patch(
|
||||
"pyhap.accessory_driver.AccessoryDriver.start"
|
||||
) as hk_driver_start:
|
||||
await hass.async_add_job(homekit.start)
|
||||
await hass.async_add_executor_job(homekit.start)
|
||||
|
||||
mock_add_acc.assert_called_with(state)
|
||||
mock_setup_msg.assert_called_with(hass, pin)
|
||||
|
@ -273,7 +273,7 @@ async def test_homekit_start(hass, hk_driver, debounce_patcher):
|
|||
|
||||
# Test start() if already started
|
||||
hk_driver_start.reset_mock()
|
||||
await hass.async_add_job(homekit.start)
|
||||
await hass.async_add_executor_job(homekit.start)
|
||||
assert not hk_driver_start.called
|
||||
|
||||
|
||||
|
@ -283,16 +283,16 @@ async def test_homekit_stop(hass):
|
|||
homekit.driver = Mock()
|
||||
|
||||
assert homekit.status == STATUS_READY
|
||||
await hass.async_add_job(homekit.stop)
|
||||
await hass.async_add_executor_job(homekit.stop)
|
||||
homekit.status = STATUS_WAIT
|
||||
await hass.async_add_job(homekit.stop)
|
||||
await hass.async_add_executor_job(homekit.stop)
|
||||
homekit.status = STATUS_STOPPED
|
||||
await hass.async_add_job(homekit.stop)
|
||||
await hass.async_add_executor_job(homekit.stop)
|
||||
assert homekit.driver.stop.called is False
|
||||
|
||||
# Test if driver is started
|
||||
homekit.status = STATUS_RUNNING
|
||||
await hass.async_add_job(homekit.stop)
|
||||
await hass.async_add_executor_job(homekit.stop)
|
||||
assert homekit.driver.stop.called is True
|
||||
|
||||
|
||||
|
@ -337,5 +337,5 @@ async def test_homekit_too_many_accessories(hass, hk_driver):
|
|||
with patch("pyhap.accessory_driver.AccessoryDriver.start"), patch(
|
||||
"pyhap.accessory_driver.AccessoryDriver.add_accessory"
|
||||
), patch("homeassistant.components.homekit._LOGGER.warning") as mock_warn:
|
||||
await hass.async_add_job(homekit.start)
|
||||
await hass.async_add_executor_job(homekit.start)
|
||||
assert mock_warn.called is True
|
||||
|
|
|
@ -57,7 +57,7 @@ async def test_garage_door_open_close(hass, hk_driver, cls, events):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = cls.garage(hass, hk_driver, "Garage Door", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 4 # GarageDoorOpener
|
||||
|
@ -89,7 +89,7 @@ async def test_garage_door_open_close(hass, hk_driver, cls, events):
|
|||
call_close_cover = async_mock_service(hass, DOMAIN, "close_cover")
|
||||
call_open_cover = async_mock_service(hass, DOMAIN, "open_cover")
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_close_cover
|
||||
assert call_close_cover[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -101,14 +101,14 @@ async def test_garage_door_open_close(hass, hk_driver, cls, events):
|
|||
hass.states.async_set(entity_id, STATE_CLOSED)
|
||||
await hass.async_block_till_done()
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_current_state.value == 1
|
||||
assert acc.char_target_state.value == 1
|
||||
assert len(events) == 2
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_open_cover
|
||||
assert call_open_cover[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -120,7 +120,7 @@ async def test_garage_door_open_close(hass, hk_driver, cls, events):
|
|||
hass.states.async_set(entity_id, STATE_OPEN)
|
||||
await hass.async_block_till_done()
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_current_state.value == 0
|
||||
assert acc.char_target_state.value == 0
|
||||
|
@ -135,7 +135,7 @@ async def test_window_set_cover_position(hass, hk_driver, cls, events):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = cls.window(hass, hk_driver, "Cover", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 14 # WindowCovering
|
||||
|
@ -176,7 +176,7 @@ async def test_window_set_cover_position(hass, hk_driver, cls, events):
|
|||
# Set from HomeKit
|
||||
call_set_cover_position = async_mock_service(hass, DOMAIN, "set_cover_position")
|
||||
|
||||
await hass.async_add_job(acc.char_target_position.client_update_value, 25)
|
||||
await hass.async_add_executor_job(acc.char_target_position.client_update_value, 25)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_cover_position[0]
|
||||
assert call_set_cover_position[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -186,7 +186,7 @@ async def test_window_set_cover_position(hass, hk_driver, cls, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] == 25
|
||||
|
||||
await hass.async_add_job(acc.char_target_position.client_update_value, 75)
|
||||
await hass.async_add_executor_job(acc.char_target_position.client_update_value, 75)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_cover_position[1]
|
||||
assert call_set_cover_position[1].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -206,7 +206,7 @@ async def test_window_cover_set_tilt(hass, hk_driver, cls, events):
|
|||
)
|
||||
await hass.async_block_till_done()
|
||||
acc = cls.window(hass, hk_driver, "Cover", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 14 # CATEGORY_WINDOW_COVERING
|
||||
|
@ -242,7 +242,7 @@ async def test_window_cover_set_tilt(hass, hk_driver, cls, events):
|
|||
# HomeKit sets tilts between -90 and 90 (degrees), whereas
|
||||
# Homeassistant expects a % between 0 and 100. Keep that in mind
|
||||
# when comparing
|
||||
await hass.async_add_job(acc.char_target_tilt.client_update_value, 90)
|
||||
await hass.async_add_executor_job(acc.char_target_tilt.client_update_value, 90)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_tilt_position[0]
|
||||
assert call_set_tilt_position[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -252,7 +252,7 @@ async def test_window_cover_set_tilt(hass, hk_driver, cls, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] == 100
|
||||
|
||||
await hass.async_add_job(acc.char_target_tilt.client_update_value, 45)
|
||||
await hass.async_add_executor_job(acc.char_target_tilt.client_update_value, 45)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_tilt_position[1]
|
||||
assert call_set_tilt_position[1].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -269,7 +269,7 @@ async def test_window_open_close(hass, hk_driver, cls, events):
|
|||
|
||||
hass.states.async_set(entity_id, STATE_UNKNOWN, {ATTR_SUPPORTED_FEATURES: 0})
|
||||
acc = cls.window_basic(hass, hk_driver, "Cover", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 14 # WindowCovering
|
||||
|
@ -312,7 +312,7 @@ async def test_window_open_close(hass, hk_driver, cls, events):
|
|||
call_close_cover = async_mock_service(hass, DOMAIN, "close_cover")
|
||||
call_open_cover = async_mock_service(hass, DOMAIN, "open_cover")
|
||||
|
||||
await hass.async_add_job(acc.char_target_position.client_update_value, 25)
|
||||
await hass.async_add_executor_job(acc.char_target_position.client_update_value, 25)
|
||||
await hass.async_block_till_done()
|
||||
assert call_close_cover
|
||||
assert call_close_cover[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -322,7 +322,7 @@ async def test_window_open_close(hass, hk_driver, cls, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_target_position.client_update_value, 90)
|
||||
await hass.async_add_executor_job(acc.char_target_position.client_update_value, 90)
|
||||
await hass.async_block_till_done()
|
||||
assert call_open_cover[0]
|
||||
assert call_open_cover[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -332,7 +332,7 @@ async def test_window_open_close(hass, hk_driver, cls, events):
|
|||
assert len(events) == 2
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_target_position.client_update_value, 55)
|
||||
await hass.async_add_executor_job(acc.char_target_position.client_update_value, 55)
|
||||
await hass.async_block_till_done()
|
||||
assert call_open_cover[1]
|
||||
assert call_open_cover[1].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -351,14 +351,14 @@ async def test_window_open_close_stop(hass, hk_driver, cls, events):
|
|||
entity_id, STATE_UNKNOWN, {ATTR_SUPPORTED_FEATURES: SUPPORT_STOP}
|
||||
)
|
||||
acc = cls.window_basic(hass, hk_driver, "Cover", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
# Set from HomeKit
|
||||
call_close_cover = async_mock_service(hass, DOMAIN, "close_cover")
|
||||
call_open_cover = async_mock_service(hass, DOMAIN, "open_cover")
|
||||
call_stop_cover = async_mock_service(hass, DOMAIN, "stop_cover")
|
||||
|
||||
await hass.async_add_job(acc.char_target_position.client_update_value, 25)
|
||||
await hass.async_add_executor_job(acc.char_target_position.client_update_value, 25)
|
||||
await hass.async_block_till_done()
|
||||
assert call_close_cover
|
||||
assert call_close_cover[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -368,7 +368,7 @@ async def test_window_open_close_stop(hass, hk_driver, cls, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_target_position.client_update_value, 90)
|
||||
await hass.async_add_executor_job(acc.char_target_position.client_update_value, 90)
|
||||
await hass.async_block_till_done()
|
||||
assert call_open_cover
|
||||
assert call_open_cover[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -378,7 +378,7 @@ async def test_window_open_close_stop(hass, hk_driver, cls, events):
|
|||
assert len(events) == 2
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_target_position.client_update_value, 55)
|
||||
await hass.async_add_executor_job(acc.char_target_position.client_update_value, 55)
|
||||
await hass.async_block_till_done()
|
||||
assert call_stop_cover
|
||||
assert call_stop_cover[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
|
|
@ -62,7 +62,7 @@ async def test_fan_basic(hass, hk_driver, cls, events):
|
|||
# If there are no speed_list values, then HomeKit speed is unsupported
|
||||
assert acc.char_speed is None
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_active.value == 1
|
||||
|
||||
|
@ -82,7 +82,7 @@ async def test_fan_basic(hass, hk_driver, cls, events):
|
|||
call_turn_on = async_mock_service(hass, DOMAIN, "turn_on")
|
||||
call_turn_off = async_mock_service(hass, DOMAIN, "turn_off")
|
||||
|
||||
await hass.async_add_job(acc.char_active.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_active.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_on
|
||||
assert call_turn_on[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -92,7 +92,7 @@ async def test_fan_basic(hass, hk_driver, cls, events):
|
|||
hass.states.async_set(entity_id, STATE_ON)
|
||||
await hass.async_block_till_done()
|
||||
|
||||
await hass.async_add_job(acc.char_active.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_active.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_off
|
||||
assert call_turn_off[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -114,7 +114,7 @@ async def test_fan_direction(hass, hk_driver, cls, events):
|
|||
|
||||
assert acc.char_direction.value == 0
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_direction.value == 0
|
||||
|
||||
|
@ -125,7 +125,7 @@ async def test_fan_direction(hass, hk_driver, cls, events):
|
|||
# Set from HomeKit
|
||||
call_set_direction = async_mock_service(hass, DOMAIN, "set_direction")
|
||||
|
||||
await hass.async_add_job(acc.char_direction.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_direction.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_direction[0]
|
||||
assert call_set_direction[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -133,7 +133,7 @@ async def test_fan_direction(hass, hk_driver, cls, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] == DIRECTION_FORWARD
|
||||
|
||||
await hass.async_add_job(acc.char_direction.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_direction.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_direction[1]
|
||||
assert call_set_direction[1].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -156,7 +156,7 @@ async def test_fan_oscillate(hass, hk_driver, cls, events):
|
|||
|
||||
assert acc.char_swing.value == 0
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_swing.value == 0
|
||||
|
||||
|
@ -167,7 +167,7 @@ async def test_fan_oscillate(hass, hk_driver, cls, events):
|
|||
# Set from HomeKit
|
||||
call_oscillate = async_mock_service(hass, DOMAIN, "oscillate")
|
||||
|
||||
await hass.async_add_job(acc.char_swing.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_swing.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_oscillate[0]
|
||||
assert call_oscillate[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -175,7 +175,7 @@ async def test_fan_oscillate(hass, hk_driver, cls, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] is False
|
||||
|
||||
await hass.async_add_job(acc.char_swing.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_swing.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_oscillate[1]
|
||||
assert call_oscillate[1].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -205,7 +205,7 @@ async def test_fan_speed(hass, hk_driver, cls, events):
|
|||
# speed to 100 when turning on a fan on a freshly booted up server.
|
||||
assert acc.char_speed.value != 0
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
assert (
|
||||
acc.speed_mapping.speed_ranges == HomeKitSpeedMapping(speed_list).speed_ranges
|
||||
)
|
||||
|
@ -221,7 +221,7 @@ async def test_fan_speed(hass, hk_driver, cls, events):
|
|||
# Set from HomeKit
|
||||
call_set_speed = async_mock_service(hass, DOMAIN, "set_speed")
|
||||
|
||||
await hass.async_add_job(acc.char_speed.client_update_value, 42)
|
||||
await hass.async_add_executor_job(acc.char_speed.client_update_value, 42)
|
||||
await hass.async_block_till_done()
|
||||
acc.speed_mapping.speed_to_states.assert_called_with(42)
|
||||
assert call_set_speed[0]
|
||||
|
|
|
@ -68,7 +68,7 @@ async def test_light_basic(hass, hk_driver, cls, events, driver):
|
|||
assert acc.category == 5 # Lightbulb
|
||||
assert acc.char_on.value == 0
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_on.value == 1
|
||||
|
||||
|
@ -99,7 +99,7 @@ async def test_light_basic(hass, hk_driver, cls, events, driver):
|
|||
"mock_addr",
|
||||
)
|
||||
|
||||
await hass.async_add_job(acc.char_on.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_on.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_on
|
||||
assert call_turn_on[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -143,7 +143,7 @@ async def test_light_brightness(hass, hk_driver, cls, events, driver):
|
|||
char_on_iid = acc.char_on.to_HAP()[HAP_REPR_IID]
|
||||
char_brightness_iid = acc.char_brightness.to_HAP()[HAP_REPR_IID]
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_brightness.value == 100
|
||||
|
||||
|
@ -262,7 +262,7 @@ async def test_light_color_temperature(hass, hk_driver, cls, events, driver):
|
|||
|
||||
assert acc.char_color_temperature.value == 153
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_color_temperature.value == 190
|
||||
|
||||
|
@ -283,7 +283,9 @@ async def test_light_color_temperature(hass, hk_driver, cls, events, driver):
|
|||
},
|
||||
"mock_addr",
|
||||
)
|
||||
await hass.async_add_job(acc.char_color_temperature.client_update_value, 250)
|
||||
await hass.async_add_executor_job(
|
||||
acc.char_color_temperature.client_update_value, 250
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_on
|
||||
assert call_turn_on[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -327,7 +329,7 @@ async def test_light_rgb_color(hass, hk_driver, cls, events, driver):
|
|||
assert acc.char_hue.value == 0
|
||||
assert acc.char_saturation.value == 75
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_hue.value == 260
|
||||
assert acc.char_saturation.value == 90
|
||||
|
@ -420,7 +422,7 @@ async def test_light_set_brightness_and_color(hass, hk_driver, cls, events, driv
|
|||
char_hue_iid = acc.char_hue.to_HAP()[HAP_REPR_IID]
|
||||
char_saturation_iid = acc.char_saturation.to_HAP()[HAP_REPR_IID]
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_brightness.value == 100
|
||||
|
||||
|
@ -497,7 +499,7 @@ async def test_light_set_brightness_and_color_temp(
|
|||
char_brightness_iid = acc.char_brightness.to_HAP()[HAP_REPR_IID]
|
||||
char_color_temperature_iid = acc.char_color_temperature.to_HAP()[HAP_REPR_IID]
|
||||
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_brightness.value == 100
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ async def test_lock_unlock(hass, hk_driver, events):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = Lock(hass, hk_driver, "Lock", entity_id, 2, config)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 6 # DoorLock
|
||||
|
@ -56,7 +56,7 @@ async def test_lock_unlock(hass, hk_driver, events):
|
|||
call_lock = async_mock_service(hass, DOMAIN, "lock")
|
||||
call_unlock = async_mock_service(hass, DOMAIN, "unlock")
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_lock
|
||||
assert call_lock[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -65,7 +65,7 @@ async def test_lock_unlock(hass, hk_driver, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_unlock
|
||||
assert call_unlock[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -87,7 +87,7 @@ async def test_no_code(hass, hk_driver, config, events):
|
|||
# Set from HomeKit
|
||||
call_lock = async_mock_service(hass, DOMAIN, "lock")
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_lock
|
||||
assert call_lock[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
|
|
@ -57,7 +57,7 @@ async def test_media_player_set_state(hass, hk_driver, events):
|
|||
)
|
||||
await hass.async_block_till_done()
|
||||
acc = MediaPlayer(hass, hk_driver, "MediaPlayer", entity_id, 2, config)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 8 # Switch
|
||||
|
@ -105,49 +105,63 @@ async def test_media_player_set_state(hass, hk_driver, events):
|
|||
call_media_stop = async_mock_service(hass, DOMAIN, "media_stop")
|
||||
call_toggle_mute = async_mock_service(hass, DOMAIN, "volume_mute")
|
||||
|
||||
await hass.async_add_job(acc.chars[FEATURE_ON_OFF].client_update_value, True)
|
||||
await hass.async_add_executor_job(
|
||||
acc.chars[FEATURE_ON_OFF].client_update_value, True
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_on
|
||||
assert call_turn_on[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.chars[FEATURE_ON_OFF].client_update_value, False)
|
||||
await hass.async_add_executor_job(
|
||||
acc.chars[FEATURE_ON_OFF].client_update_value, False
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_off
|
||||
assert call_turn_off[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 2
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.chars[FEATURE_PLAY_PAUSE].client_update_value, True)
|
||||
await hass.async_add_executor_job(
|
||||
acc.chars[FEATURE_PLAY_PAUSE].client_update_value, True
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_media_play
|
||||
assert call_media_play[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 3
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.chars[FEATURE_PLAY_PAUSE].client_update_value, False)
|
||||
await hass.async_add_executor_job(
|
||||
acc.chars[FEATURE_PLAY_PAUSE].client_update_value, False
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_media_pause
|
||||
assert call_media_pause[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 4
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.chars[FEATURE_PLAY_STOP].client_update_value, True)
|
||||
await hass.async_add_executor_job(
|
||||
acc.chars[FEATURE_PLAY_STOP].client_update_value, True
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_media_play
|
||||
assert call_media_play[1].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 5
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.chars[FEATURE_PLAY_STOP].client_update_value, False)
|
||||
await hass.async_add_executor_job(
|
||||
acc.chars[FEATURE_PLAY_STOP].client_update_value, False
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_media_stop
|
||||
assert call_media_stop[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 6
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.chars[FEATURE_TOGGLE_MUTE].client_update_value, True)
|
||||
await hass.async_add_executor_job(
|
||||
acc.chars[FEATURE_TOGGLE_MUTE].client_update_value, True
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_toggle_mute
|
||||
assert call_toggle_mute[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -155,7 +169,9 @@ async def test_media_player_set_state(hass, hk_driver, events):
|
|||
assert len(events) == 7
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.chars[FEATURE_TOGGLE_MUTE].client_update_value, False)
|
||||
await hass.async_add_executor_job(
|
||||
acc.chars[FEATURE_TOGGLE_MUTE].client_update_value, False
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_toggle_mute
|
||||
assert call_toggle_mute[1].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -182,7 +198,7 @@ async def test_media_player_television(hass, hk_driver, events, caplog):
|
|||
)
|
||||
await hass.async_block_till_done()
|
||||
acc = TelevisionMediaPlayer(hass, hk_driver, "MediaPlayer", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 31 # Television
|
||||
|
@ -226,21 +242,21 @@ async def test_media_player_television(hass, hk_driver, events, caplog):
|
|||
call_volume_down = async_mock_service(hass, DOMAIN, "volume_down")
|
||||
call_volume_set = async_mock_service(hass, DOMAIN, "volume_set")
|
||||
|
||||
await hass.async_add_job(acc.char_active.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_active.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_on
|
||||
assert call_turn_on[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_active.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_active.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_off
|
||||
assert call_turn_off[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 2
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_remote_key.client_update_value, 11)
|
||||
await hass.async_add_executor_job(acc.char_remote_key.client_update_value, 11)
|
||||
await hass.async_block_till_done()
|
||||
assert call_media_play_pause
|
||||
assert call_media_play_pause[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -249,28 +265,28 @@ async def test_media_player_television(hass, hk_driver, events, caplog):
|
|||
|
||||
hass.states.async_set(entity_id, STATE_PLAYING)
|
||||
await hass.async_block_till_done()
|
||||
await hass.async_add_job(acc.char_remote_key.client_update_value, 11)
|
||||
await hass.async_add_executor_job(acc.char_remote_key.client_update_value, 11)
|
||||
await hass.async_block_till_done()
|
||||
assert call_media_pause
|
||||
assert call_media_pause[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 4
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_remote_key.client_update_value, 10)
|
||||
await hass.async_add_executor_job(acc.char_remote_key.client_update_value, 10)
|
||||
await hass.async_block_till_done()
|
||||
assert len(events) == 4
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
hass.states.async_set(entity_id, STATE_PAUSED)
|
||||
await hass.async_block_till_done()
|
||||
await hass.async_add_job(acc.char_remote_key.client_update_value, 11)
|
||||
await hass.async_add_executor_job(acc.char_remote_key.client_update_value, 11)
|
||||
await hass.async_block_till_done()
|
||||
assert call_media_play
|
||||
assert call_media_play[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 5
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_mute.client_update_value, True)
|
||||
await hass.async_add_executor_job(acc.char_mute.client_update_value, True)
|
||||
await hass.async_block_till_done()
|
||||
assert call_toggle_mute
|
||||
assert call_toggle_mute[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -278,7 +294,7 @@ async def test_media_player_television(hass, hk_driver, events, caplog):
|
|||
assert len(events) == 6
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_mute.client_update_value, False)
|
||||
await hass.async_add_executor_job(acc.char_mute.client_update_value, False)
|
||||
await hass.async_block_till_done()
|
||||
assert call_toggle_mute
|
||||
assert call_toggle_mute[1].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -286,7 +302,7 @@ async def test_media_player_television(hass, hk_driver, events, caplog):
|
|||
assert len(events) == 7
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_input_source.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_input_source.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_select_source
|
||||
assert call_select_source[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -294,21 +310,21 @@ async def test_media_player_television(hass, hk_driver, events, caplog):
|
|||
assert len(events) == 8
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_volume_selector.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_volume_selector.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_volume_up
|
||||
assert call_volume_up[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 9
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_volume_selector.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_volume_selector.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_volume_down
|
||||
assert call_volume_down[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 10
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_volume.client_update_value, 20)
|
||||
await hass.async_add_executor_job(acc.char_volume.client_update_value, 20)
|
||||
await hass.async_block_till_done()
|
||||
assert call_volume_set[0]
|
||||
assert call_volume_set[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -329,7 +345,7 @@ async def test_media_player_television_basic(hass, hk_driver, events, caplog):
|
|||
)
|
||||
await hass.async_block_till_done()
|
||||
acc = TelevisionMediaPlayer(hass, hk_driver, "MediaPlayer", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.chars_tv == []
|
||||
assert acc.chars_speaker == []
|
||||
|
|
|
@ -27,7 +27,7 @@ async def test_switch_set_state(hass, hk_driver, events):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = SecuritySystem(hass, hk_driver, "SecuritySystem", entity_id, 2, config)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 11 # AlarmSystem
|
||||
|
@ -71,7 +71,7 @@ async def test_switch_set_state(hass, hk_driver, events):
|
|||
call_arm_night = async_mock_service(hass, DOMAIN, "alarm_arm_night")
|
||||
call_disarm = async_mock_service(hass, DOMAIN, "alarm_disarm")
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_arm_home
|
||||
assert call_arm_home[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -80,7 +80,7 @@ async def test_switch_set_state(hass, hk_driver, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_arm_away
|
||||
assert call_arm_away[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -89,7 +89,7 @@ async def test_switch_set_state(hass, hk_driver, events):
|
|||
assert len(events) == 2
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 2)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 2)
|
||||
await hass.async_block_till_done()
|
||||
assert call_arm_night
|
||||
assert call_arm_night[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -98,7 +98,7 @@ async def test_switch_set_state(hass, hk_driver, events):
|
|||
assert len(events) == 3
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 3)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 3)
|
||||
await hass.async_block_till_done()
|
||||
assert call_disarm
|
||||
assert call_disarm[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -120,7 +120,7 @@ async def test_no_alarm_code(hass, hk_driver, config, events):
|
|||
# Set from HomeKit
|
||||
call_arm_home = async_mock_service(hass, DOMAIN, "alarm_arm_home")
|
||||
|
||||
await hass.async_add_job(acc.char_target_state.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_target_state.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_arm_home
|
||||
assert call_arm_home[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
|
|
@ -39,7 +39,7 @@ async def test_temperature(hass, hk_driver):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = TemperatureSensor(hass, hk_driver, "Temperature", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 10 # Sensor
|
||||
|
@ -72,7 +72,7 @@ async def test_humidity(hass, hk_driver):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = HumiditySensor(hass, hk_driver, "Humidity", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 10 # Sensor
|
||||
|
@ -95,7 +95,7 @@ async def test_air_quality(hass, hk_driver):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = AirQualitySensor(hass, hk_driver, "Air Quality", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 10 # Sensor
|
||||
|
@ -126,7 +126,7 @@ async def test_co(hass, hk_driver):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = CarbonMonoxideSensor(hass, hk_driver, "CO", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 10 # Sensor
|
||||
|
@ -165,7 +165,7 @@ async def test_co2(hass, hk_driver):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = CarbonDioxideSensor(hass, hk_driver, "CO2", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 10 # Sensor
|
||||
|
@ -204,7 +204,7 @@ async def test_light(hass, hk_driver):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = LightSensor(hass, hk_driver, "Light", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 10 # Sensor
|
||||
|
@ -228,7 +228,7 @@ async def test_binary(hass, hk_driver):
|
|||
await hass.async_block_till_done()
|
||||
|
||||
acc = BinarySensor(hass, hk_driver, "Window Opening", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
|
||||
assert acc.aid == 2
|
||||
assert acc.category == 10 # Sensor
|
||||
|
|
|
@ -26,7 +26,7 @@ async def test_outlet_set_state(hass, hk_driver, events):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = Outlet(hass, hk_driver, "Outlet", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert acc.aid == 2
|
||||
|
@ -47,14 +47,14 @@ async def test_outlet_set_state(hass, hk_driver, events):
|
|||
call_turn_on = async_mock_service(hass, "switch", "turn_on")
|
||||
call_turn_off = async_mock_service(hass, "switch", "turn_off")
|
||||
|
||||
await hass.async_add_job(acc.char_on.client_update_value, True)
|
||||
await hass.async_add_executor_job(acc.char_on.client_update_value, True)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_on
|
||||
assert call_turn_on[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_on.client_update_value, False)
|
||||
await hass.async_add_executor_job(acc.char_on.client_update_value, False)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_off
|
||||
assert call_turn_off[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -79,7 +79,7 @@ async def test_switch_set_state(hass, hk_driver, entity_id, attrs, events):
|
|||
hass.states.async_set(entity_id, None, attrs)
|
||||
await hass.async_block_till_done()
|
||||
acc = Switch(hass, hk_driver, "Switch", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert acc.aid == 2
|
||||
|
@ -100,14 +100,14 @@ async def test_switch_set_state(hass, hk_driver, entity_id, attrs, events):
|
|||
call_turn_on = async_mock_service(hass, domain, "turn_on")
|
||||
call_turn_off = async_mock_service(hass, domain, "turn_off")
|
||||
|
||||
await hass.async_add_job(acc.char_on.client_update_value, True)
|
||||
await hass.async_add_executor_job(acc.char_on.client_update_value, True)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_on
|
||||
assert call_turn_on[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_on.client_update_value, False)
|
||||
await hass.async_add_executor_job(acc.char_on.client_update_value, False)
|
||||
await hass.async_block_till_done()
|
||||
assert call_turn_off
|
||||
assert call_turn_off[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -123,25 +123,25 @@ async def test_valve_set_state(hass, hk_driver, events):
|
|||
await hass.async_block_till_done()
|
||||
|
||||
acc = Valve(hass, hk_driver, "Valve", entity_id, 2, {CONF_TYPE: TYPE_FAUCET})
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.category == 29 # Faucet
|
||||
assert acc.char_valve_type.value == 3 # Water faucet
|
||||
|
||||
acc = Valve(hass, hk_driver, "Valve", entity_id, 2, {CONF_TYPE: TYPE_SHOWER})
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.category == 30 # Shower
|
||||
assert acc.char_valve_type.value == 2 # Shower head
|
||||
|
||||
acc = Valve(hass, hk_driver, "Valve", entity_id, 2, {CONF_TYPE: TYPE_SPRINKLER})
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
assert acc.category == 28 # Sprinkler
|
||||
assert acc.char_valve_type.value == 1 # Irrigation
|
||||
|
||||
acc = Valve(hass, hk_driver, "Valve", entity_id, 2, {CONF_TYPE: TYPE_VALVE})
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert acc.aid == 2
|
||||
|
@ -165,7 +165,7 @@ async def test_valve_set_state(hass, hk_driver, events):
|
|||
call_turn_on = async_mock_service(hass, "switch", "turn_on")
|
||||
call_turn_off = async_mock_service(hass, "switch", "turn_off")
|
||||
|
||||
await hass.async_add_job(acc.char_active.client_update_value, True)
|
||||
await hass.async_add_executor_job(acc.char_active.client_update_value, True)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_in_use.value is True
|
||||
assert call_turn_on
|
||||
|
@ -173,7 +173,7 @@ async def test_valve_set_state(hass, hk_driver, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] is None
|
||||
|
||||
await hass.async_add_job(acc.char_active.client_update_value, False)
|
||||
await hass.async_add_executor_job(acc.char_active.client_update_value, False)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_in_use.value is False
|
||||
assert call_turn_off
|
||||
|
@ -197,7 +197,7 @@ async def test_reset_switch(hass, hk_driver, entity_id, attrs, events):
|
|||
hass.states.async_set(entity_id, None, attrs)
|
||||
await hass.async_block_till_done()
|
||||
acc = Switch(hass, hk_driver, "Switch", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert acc.activate_only is True
|
||||
|
@ -206,7 +206,7 @@ async def test_reset_switch(hass, hk_driver, entity_id, attrs, events):
|
|||
call_turn_on = async_mock_service(hass, domain, "turn_on")
|
||||
call_turn_off = async_mock_service(hass, domain, "turn_off")
|
||||
|
||||
await hass.async_add_job(acc.char_on.client_update_value, True)
|
||||
await hass.async_add_executor_job(acc.char_on.client_update_value, True)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_on.value is True
|
||||
assert call_turn_on
|
||||
|
@ -221,7 +221,7 @@ async def test_reset_switch(hass, hk_driver, entity_id, attrs, events):
|
|||
assert len(events) == 1
|
||||
assert not call_turn_off
|
||||
|
||||
await hass.async_add_job(acc.char_on.client_update_value, False)
|
||||
await hass.async_add_executor_job(acc.char_on.client_update_value, False)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_on.value is False
|
||||
assert len(events) == 1
|
||||
|
@ -234,7 +234,7 @@ async def test_reset_switch_reload(hass, hk_driver, events):
|
|||
hass.states.async_set(entity_id, None)
|
||||
await hass.async_block_till_done()
|
||||
acc = Switch(hass, hk_driver, "Switch", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert acc.activate_only is True
|
||||
|
|
|
@ -91,7 +91,7 @@ async def test_thermostat(hass, hk_driver, cls, events):
|
|||
)
|
||||
await hass.async_block_till_done()
|
||||
acc = cls.thermostat(hass, hk_driver, "Climate", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert acc.aid == 2
|
||||
|
@ -272,7 +272,7 @@ async def test_thermostat(hass, hk_driver, cls, events):
|
|||
call_set_temperature = async_mock_service(hass, DOMAIN_CLIMATE, "set_temperature")
|
||||
call_set_hvac_mode = async_mock_service(hass, DOMAIN_CLIMATE, "set_hvac_mode")
|
||||
|
||||
await hass.async_add_job(acc.char_target_temp.client_update_value, 19.0)
|
||||
await hass.async_add_executor_job(acc.char_target_temp.client_update_value, 19.0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_temperature
|
||||
assert call_set_temperature[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -281,7 +281,7 @@ async def test_thermostat(hass, hk_driver, cls, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] == "19.0°C"
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.client_update_value, 2)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.client_update_value, 2)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_hvac_mode
|
||||
assert call_set_hvac_mode[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -290,7 +290,7 @@ async def test_thermostat(hass, hk_driver, cls, events):
|
|||
assert len(events) == 2
|
||||
assert events[-1].data[ATTR_VALUE] == HVAC_MODE_COOL
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.client_update_value, 3)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.client_update_value, 3)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_hvac_mode
|
||||
assert call_set_hvac_mode[1].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -308,7 +308,7 @@ async def test_thermostat_auto(hass, hk_driver, cls, events):
|
|||
hass.states.async_set(entity_id, HVAC_MODE_OFF, {ATTR_SUPPORTED_FEATURES: 6})
|
||||
await hass.async_block_till_done()
|
||||
acc = cls.thermostat(hass, hk_driver, "Climate", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert acc.char_cooling_thresh_temp.value == 23.0
|
||||
|
@ -378,7 +378,9 @@ async def test_thermostat_auto(hass, hk_driver, cls, events):
|
|||
# Set from HomeKit
|
||||
call_set_temperature = async_mock_service(hass, DOMAIN_CLIMATE, "set_temperature")
|
||||
|
||||
await hass.async_add_job(acc.char_heating_thresh_temp.client_update_value, 20.0)
|
||||
await hass.async_add_executor_job(
|
||||
acc.char_heating_thresh_temp.client_update_value, 20.0
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_temperature[0]
|
||||
assert call_set_temperature[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -387,7 +389,9 @@ async def test_thermostat_auto(hass, hk_driver, cls, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] == "heating threshold 20.0°C"
|
||||
|
||||
await hass.async_add_job(acc.char_cooling_thresh_temp.client_update_value, 25.0)
|
||||
await hass.async_add_executor_job(
|
||||
acc.char_cooling_thresh_temp.client_update_value, 25.0
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_temperature[1]
|
||||
assert call_set_temperature[1].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -405,7 +409,7 @@ async def test_thermostat_humidity(hass, hk_driver, cls, events):
|
|||
hass.states.async_set(entity_id, HVAC_MODE_OFF, {ATTR_SUPPORTED_FEATURES: 4})
|
||||
await hass.async_block_till_done()
|
||||
acc = cls.thermostat(hass, hk_driver, "Climate", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert acc.char_target_humidity.value == 50
|
||||
|
@ -430,7 +434,7 @@ async def test_thermostat_humidity(hass, hk_driver, cls, events):
|
|||
# Set from HomeKit
|
||||
call_set_humidity = async_mock_service(hass, DOMAIN_CLIMATE, "set_humidity")
|
||||
|
||||
await hass.async_add_job(acc.char_target_humidity.client_update_value, 35)
|
||||
await hass.async_add_executor_job(acc.char_target_humidity.client_update_value, 35)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_humidity[0]
|
||||
assert call_set_humidity[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -457,7 +461,7 @@ async def test_thermostat_power_state(hass, hk_driver, cls, events):
|
|||
)
|
||||
await hass.async_block_till_done()
|
||||
acc = cls.thermostat(hass, hk_driver, "Climate", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert acc.char_current_heat_cool.value == 1
|
||||
|
@ -492,7 +496,7 @@ async def test_thermostat_power_state(hass, hk_driver, cls, events):
|
|||
# Set from HomeKit
|
||||
call_set_hvac_mode = async_mock_service(hass, DOMAIN_CLIMATE, "set_hvac_mode")
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.client_update_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.client_update_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_hvac_mode
|
||||
assert call_set_hvac_mode[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -501,7 +505,7 @@ async def test_thermostat_power_state(hass, hk_driver, cls, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] == HVAC_MODE_HEAT
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 0
|
||||
assert len(events) == 2
|
||||
|
@ -517,7 +521,7 @@ async def test_thermostat_fahrenheit(hass, hk_driver, cls, events):
|
|||
await hass.async_block_till_done()
|
||||
with patch.object(hass.config.units, CONF_TEMPERATURE_UNIT, new=TEMP_FAHRENHEIT):
|
||||
acc = cls.thermostat(hass, hk_driver, "Climate", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
hass.states.async_set(
|
||||
|
@ -541,7 +545,9 @@ async def test_thermostat_fahrenheit(hass, hk_driver, cls, events):
|
|||
# Set from HomeKit
|
||||
call_set_temperature = async_mock_service(hass, DOMAIN_CLIMATE, "set_temperature")
|
||||
|
||||
await hass.async_add_job(acc.char_cooling_thresh_temp.client_update_value, 23)
|
||||
await hass.async_add_executor_job(
|
||||
acc.char_cooling_thresh_temp.client_update_value, 23
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_temperature[0]
|
||||
assert call_set_temperature[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -550,7 +556,9 @@ async def test_thermostat_fahrenheit(hass, hk_driver, cls, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] == "cooling threshold 73.5°F"
|
||||
|
||||
await hass.async_add_job(acc.char_heating_thresh_temp.client_update_value, 22)
|
||||
await hass.async_add_executor_job(
|
||||
acc.char_heating_thresh_temp.client_update_value, 22
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_temperature[1]
|
||||
assert call_set_temperature[1].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -559,7 +567,7 @@ async def test_thermostat_fahrenheit(hass, hk_driver, cls, events):
|
|||
assert len(events) == 2
|
||||
assert events[-1].data[ATTR_VALUE] == "heating threshold 71.5°F"
|
||||
|
||||
await hass.async_add_job(acc.char_target_temp.client_update_value, 24.0)
|
||||
await hass.async_add_executor_job(acc.char_target_temp.client_update_value, 24.0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_temperature[2]
|
||||
assert call_set_temperature[2].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -597,7 +605,7 @@ async def test_thermostat_temperature_step_whole(hass, hk_driver, cls):
|
|||
hass.states.async_set(entity_id, HVAC_MODE_OFF, {ATTR_TARGET_TEMP_STEP: 1})
|
||||
await hass.async_block_till_done()
|
||||
acc = cls.thermostat(hass, hk_driver, "Climate", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert acc.char_target_temp.properties[PROP_MIN_STEP] == 0.1
|
||||
|
@ -658,23 +666,23 @@ async def test_thermostat_hvac_modes(hass, hk_driver, cls):
|
|||
|
||||
await hass.async_block_till_done()
|
||||
acc = cls.thermostat(hass, hk_driver, "Climate", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
hap = acc.char_target_heat_cool.to_HAP()
|
||||
assert hap["valid-values"] == [0, 1]
|
||||
assert acc.char_target_heat_cool.value == 0
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 3)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 3)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 0
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 1
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 2)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 2)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 1
|
||||
|
||||
|
@ -699,26 +707,26 @@ async def test_thermostat_hvac_modes_with_auto_heat_cool(hass, hk_driver, cls):
|
|||
await hass.async_block_till_done()
|
||||
|
||||
acc = cls.thermostat(hass, hk_driver, "Climate", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
hap = acc.char_target_heat_cool.to_HAP()
|
||||
assert hap["valid-values"] == [0, 1, 3]
|
||||
assert acc.char_target_heat_cool.value == 3
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 3)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 3)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 3
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 1
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 2)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 2)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 1
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.client_update_value, 3)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.client_update_value, 3)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_hvac_mode
|
||||
assert call_set_hvac_mode[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -739,26 +747,26 @@ async def test_thermostat_hvac_modes_with_auto_no_heat_cool(hass, hk_driver, cls
|
|||
await hass.async_block_till_done()
|
||||
|
||||
acc = cls.thermostat(hass, hk_driver, "Climate", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
hap = acc.char_target_heat_cool.to_HAP()
|
||||
assert hap["valid-values"] == [0, 1, 3]
|
||||
assert acc.char_target_heat_cool.value == 3
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 3)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 3)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 3
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 1
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 2)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 2)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 1
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.client_update_value, 3)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.client_update_value, 3)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_hvac_mode
|
||||
assert call_set_hvac_mode[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -776,23 +784,23 @@ async def test_thermostat_hvac_modes_with_auto_only(hass, hk_driver, cls):
|
|||
|
||||
await hass.async_block_till_done()
|
||||
acc = cls.thermostat(hass, hk_driver, "Climate", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
hap = acc.char_target_heat_cool.to_HAP()
|
||||
assert hap["valid-values"] == [0, 3]
|
||||
assert acc.char_target_heat_cool.value == 3
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 3)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 3)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 3
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 1)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 1)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 3
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 2)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 2)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 3
|
||||
|
||||
|
@ -804,7 +812,7 @@ async def test_water_heater(hass, hk_driver, cls, events):
|
|||
hass.states.async_set(entity_id, HVAC_MODE_HEAT)
|
||||
await hass.async_block_till_done()
|
||||
acc = cls.water_heater(hass, hk_driver, "WaterHeater", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert acc.aid == 2
|
||||
|
@ -848,7 +856,7 @@ async def test_water_heater(hass, hk_driver, cls, events):
|
|||
hass, DOMAIN_WATER_HEATER, "set_temperature"
|
||||
)
|
||||
|
||||
await hass.async_add_job(acc.char_target_temp.client_update_value, 52.0)
|
||||
await hass.async_add_executor_job(acc.char_target_temp.client_update_value, 52.0)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_temperature
|
||||
assert call_set_temperature[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
@ -857,16 +865,16 @@ async def test_water_heater(hass, hk_driver, cls, events):
|
|||
assert len(events) == 1
|
||||
assert events[-1].data[ATTR_VALUE] == "52.0°C"
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.client_update_value, 0)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.client_update_value, 0)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 1
|
||||
|
||||
await hass.async_add_job(acc.char_target_heat_cool.client_update_value, 2)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.client_update_value, 2)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 1
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
await hass.async_add_job(acc.char_target_heat_cool.set_value, 3)
|
||||
await hass.async_add_executor_job(acc.char_target_heat_cool.set_value, 3)
|
||||
await hass.async_block_till_done()
|
||||
assert acc.char_target_heat_cool.value == 1
|
||||
|
||||
|
@ -879,7 +887,7 @@ async def test_water_heater_fahrenheit(hass, hk_driver, cls, events):
|
|||
await hass.async_block_till_done()
|
||||
with patch.object(hass.config.units, CONF_TEMPERATURE_UNIT, new=TEMP_FAHRENHEIT):
|
||||
acc = cls.water_heater(hass, hk_driver, "WaterHeater", entity_id, 2, None)
|
||||
await hass.async_add_job(acc.run)
|
||||
await acc.run_handler()
|
||||
await hass.async_block_till_done()
|
||||
|
||||
hass.states.async_set(entity_id, HVAC_MODE_HEAT, {ATTR_TEMPERATURE: 131})
|
||||
|
@ -893,7 +901,7 @@ async def test_water_heater_fahrenheit(hass, hk_driver, cls, events):
|
|||
hass, DOMAIN_WATER_HEATER, "set_temperature"
|
||||
)
|
||||
|
||||
await hass.async_add_job(acc.char_target_temp.client_update_value, 60)
|
||||
await hass.async_add_executor_job(acc.char_target_temp.client_update_value, 60)
|
||||
await hass.async_block_till_done()
|
||||
assert call_set_temperature
|
||||
assert call_set_temperature[0].data[ATTR_ENTITY_ID] == entity_id
|
||||
|
|
|
@ -199,7 +199,7 @@ async def test_show_setup_msg(hass):
|
|||
|
||||
call_create_notification = async_mock_service(hass, DOMAIN, "create")
|
||||
|
||||
await hass.async_add_job(show_setup_message, hass, pincode)
|
||||
await hass.async_add_executor_job(show_setup_message, hass, pincode)
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert call_create_notification
|
||||
|
@ -211,7 +211,7 @@ async def test_dismiss_setup_msg(hass):
|
|||
"""Test dismiss setup message."""
|
||||
call_dismiss_notification = async_mock_service(hass, DOMAIN, "dismiss")
|
||||
|
||||
await hass.async_add_job(dismiss_setup_message, hass)
|
||||
await hass.async_add_executor_job(dismiss_setup_message, hass)
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert call_dismiss_notification
|
||||
|
|
Loading…
Add table
Reference in a new issue