From eaa9fff3ba00ee3125da295b8ae9cee4c69bd33f Mon Sep 17 00:00:00 2001 From: Jesse Campbell Date: Wed, 3 Feb 2021 06:02:49 -0500 Subject: [PATCH] Remove v4 multilevel transitional currentValue workaround in zwave_js (#45884) * Remove v4 multilevel transitional currentValue workaround This was only needed because the get-after-set was reporting a transitional currentValue instead of the final one. zwave-js v6.1.1 removes the get-after-set functionality completely, so this is no longer required (and breaks status reporting entirely) * Fix tests to check currentValue instead of targetValue as well --- homeassistant/components/zwave_js/light.py | 8 -------- tests/components/zwave_js/conftest.py | 2 +- tests/components/zwave_js/test_light.py | 4 ++-- tests/fixtures/zwave_js/eaton_rf9640_dimmer_state.json | 4 ++-- 4 files changed, 5 insertions(+), 13 deletions(-) diff --git a/homeassistant/components/zwave_js/light.py b/homeassistant/components/zwave_js/light.py index acfa22e5847..dd444fdb40d 100644 --- a/homeassistant/components/zwave_js/light.py +++ b/homeassistant/components/zwave_js/light.py @@ -105,14 +105,6 @@ class ZwaveLight(ZWaveBaseEntity, LightEntity): Z-Wave multilevel switches use a range of [0, 99] to control brightness. """ - # prefer targetValue only if CC Version >= 4 - # otherwise use currentValue (pre V4 dimmers) - if ( - self._target_value - and self._target_value.value is not None - and self._target_value.cc_version >= 4 - ): - return round((self._target_value.value / 99) * 255) if self.info.primary_value.value is not None: return round((self.info.primary_value.value / 99) * 255) return 0 diff --git a/tests/components/zwave_js/conftest.py b/tests/components/zwave_js/conftest.py index 984ec42b9f3..903de6d3bd5 100644 --- a/tests/components/zwave_js/conftest.py +++ b/tests/components/zwave_js/conftest.py @@ -88,7 +88,7 @@ def bulb_6_multi_color_state_fixture(): @pytest.fixture(name="eaton_rf9640_dimmer_state", scope="session") def eaton_rf9640_dimmer_state_fixture(): - """Load the bulb 6 multi-color node state fixture data.""" + """Load the eaton rf9640 dimmer node state fixture data.""" return json.loads(load_fixture("zwave_js/eaton_rf9640_dimmer_state.json")) diff --git a/tests/components/zwave_js/test_light.py b/tests/components/zwave_js/test_light.py index a1b2318022b..b60c7281874 100644 --- a/tests/components/zwave_js/test_light.py +++ b/tests/components/zwave_js/test_light.py @@ -395,5 +395,5 @@ async def test_v4_dimmer_light(hass, client, eaton_rf9640_dimmer, integration): assert state assert state.state == STATE_ON - # the light should pick targetvalue which has zwave value 20 - assert state.attributes[ATTR_BRIGHTNESS] == 52 + # the light should pick currentvalue which has zwave value 22 + assert state.attributes[ATTR_BRIGHTNESS] == 57 diff --git a/tests/fixtures/zwave_js/eaton_rf9640_dimmer_state.json b/tests/fixtures/zwave_js/eaton_rf9640_dimmer_state.json index 38cbb63b1c6..0f2f45d01e3 100644 --- a/tests/fixtures/zwave_js/eaton_rf9640_dimmer_state.json +++ b/tests/fixtures/zwave_js/eaton_rf9640_dimmer_state.json @@ -124,7 +124,7 @@ "max": 99, "label": "Current value" }, - "value": 0, + "value": 22, "ccVersion": 4 }, { @@ -779,4 +779,4 @@ "ccVersion": 3 } ] -} \ No newline at end of file +}