Change Z-Wave JS discovery logic to adopt changes to DeviceClass (#46983)

Co-authored-by: raman325 <7243222+raman325@users.noreply.github.com>
This commit is contained in:
Marcel van der Veldt 2021-02-24 21:59:06 +01:00 committed by GitHub
parent afae253432
commit 23cbd2dda3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
37 changed files with 261 additions and 339 deletions

View file

@ -69,8 +69,8 @@ async def test_thermostat_v2(
blocking=True,
)
assert len(client.async_send_command.call_args_list) == 1
args = client.async_send_command.call_args[0][0]
assert len(client.async_send_command_no_wait.call_args_list) == 1
args = client.async_send_command_no_wait.call_args[0][0]
assert args["command"] == "node.set_value"
assert args["nodeId"] == 13
assert args["valueId"] == {
@ -92,7 +92,7 @@ async def test_thermostat_v2(
}
assert args["value"] == 1
client.async_send_command.reset_mock()
client.async_send_command_no_wait.reset_mock()
# Test setting hvac mode
await hass.services.async_call(
@ -105,8 +105,8 @@ async def test_thermostat_v2(
blocking=True,
)
assert len(client.async_send_command.call_args_list) == 1
args = client.async_send_command.call_args[0][0]
assert len(client.async_send_command_no_wait.call_args_list) == 1
args = client.async_send_command_no_wait.call_args[0][0]
assert args["command"] == "node.set_value"
assert args["nodeId"] == 13
assert args["valueId"] == {
@ -128,7 +128,7 @@ async def test_thermostat_v2(
}
assert args["value"] == 2
client.async_send_command.reset_mock()
client.async_send_command_no_wait.reset_mock()
# Test setting temperature
await hass.services.async_call(
@ -142,8 +142,8 @@ async def test_thermostat_v2(
blocking=True,
)
assert len(client.async_send_command.call_args_list) == 2
args = client.async_send_command.call_args_list[0][0][0]
assert len(client.async_send_command_no_wait.call_args_list) == 2
args = client.async_send_command_no_wait.call_args_list[0][0][0]
assert args["command"] == "node.set_value"
assert args["nodeId"] == 13
assert args["valueId"] == {
@ -164,7 +164,7 @@ async def test_thermostat_v2(
"value": 1,
}
assert args["value"] == 2
args = client.async_send_command.call_args_list[1][0][0]
args = client.async_send_command_no_wait.call_args_list[1][0][0]
assert args["command"] == "node.set_value"
assert args["nodeId"] == 13
assert args["valueId"] == {
@ -186,7 +186,7 @@ async def test_thermostat_v2(
}
assert args["value"] == 77
client.async_send_command.reset_mock()
client.async_send_command_no_wait.reset_mock()
# Test cool mode update from value updated event
event = Event(
@ -237,7 +237,7 @@ async def test_thermostat_v2(
assert state.attributes[ATTR_TARGET_TEMP_HIGH] == 22.8
assert state.attributes[ATTR_TARGET_TEMP_LOW] == 22.2
client.async_send_command.reset_mock()
client.async_send_command_no_wait.reset_mock()
# Test setting temperature with heat_cool
await hass.services.async_call(
@ -251,8 +251,8 @@ async def test_thermostat_v2(
blocking=True,
)
assert len(client.async_send_command.call_args_list) == 2
args = client.async_send_command.call_args_list[0][0][0]
assert len(client.async_send_command_no_wait.call_args_list) == 2
args = client.async_send_command_no_wait.call_args_list[0][0][0]
assert args["command"] == "node.set_value"
assert args["nodeId"] == 13
assert args["valueId"] == {
@ -274,7 +274,7 @@ async def test_thermostat_v2(
}
assert args["value"] == 77
args = client.async_send_command.call_args_list[1][0][0]
args = client.async_send_command_no_wait.call_args_list[1][0][0]
assert args["command"] == "node.set_value"
assert args["nodeId"] == 13
assert args["valueId"] == {
@ -296,7 +296,7 @@ async def test_thermostat_v2(
}
assert args["value"] == 86
client.async_send_command.reset_mock()
client.async_send_command_no_wait.reset_mock()
with pytest.raises(ValueError):
# Test setting unknown preset mode
@ -310,7 +310,7 @@ async def test_thermostat_v2(
blocking=True,
)
assert len(client.async_send_command.call_args_list) == 0
assert len(client.async_send_command_no_wait.call_args_list) == 0
# Test setting invalid hvac mode
with pytest.raises(ValueError):
@ -336,7 +336,7 @@ async def test_thermostat_v2(
blocking=True,
)
client.async_send_command.reset_mock()
client.async_send_command_no_wait.reset_mock()
# Test setting fan mode
await hass.services.async_call(
@ -349,8 +349,8 @@ async def test_thermostat_v2(
blocking=True,
)
assert len(client.async_send_command.call_args_list) == 1
args = client.async_send_command.call_args[0][0]
assert len(client.async_send_command_no_wait.call_args_list) == 1
args = client.async_send_command_no_wait.call_args[0][0]
assert args["command"] == "node.set_value"
assert args["nodeId"] == 13
assert args["valueId"] == {
@ -373,7 +373,7 @@ async def test_thermostat_v2(
}
assert args["value"] == 1
client.async_send_command.reset_mock()
client.async_send_command_no_wait.reset_mock()
# Test setting invalid fan mode
with pytest.raises(ValueError):
@ -408,7 +408,7 @@ async def test_setpoint_thermostat(hass, client, climate_danfoss_lc_13, integrat
assert state.attributes[ATTR_HVAC_MODES] == [HVAC_MODE_HEAT]
assert state.attributes[ATTR_PRESET_MODE] == PRESET_NONE
client.async_send_command.reset_mock()
client.async_send_command_no_wait.reset_mock()
# Test setting temperature
await hass.services.async_call(
@ -421,8 +421,8 @@ async def test_setpoint_thermostat(hass, client, climate_danfoss_lc_13, integrat
blocking=True,
)
assert len(client.async_send_command.call_args_list) == 1
args = client.async_send_command.call_args_list[0][0][0]
assert len(client.async_send_command_no_wait.call_args_list) == 1
args = client.async_send_command_no_wait.call_args_list[0][0][0]
assert args["command"] == "node.set_value"
assert args["nodeId"] == 5
assert args["valueId"] == {
@ -444,7 +444,7 @@ async def test_setpoint_thermostat(hass, client, climate_danfoss_lc_13, integrat
}
assert args["value"] == 21.5
client.async_send_command.reset_mock()
client.async_send_command_no_wait.reset_mock()
# Test setpoint mode update from value updated event
event = Event(
@ -471,7 +471,7 @@ async def test_setpoint_thermostat(hass, client, climate_danfoss_lc_13, integrat
assert state.state == HVAC_MODE_HEAT
assert state.attributes[ATTR_TEMPERATURE] == 23
client.async_send_command.reset_mock()
client.async_send_command_no_wait.reset_mock()
async def test_thermostat_heatit(hass, client, climate_heatit_z_trm3, integration):