New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bugfix and small refactor for zwave_js.device_action #93261
Conversation
Hey there @home-assistant/z-wave, mind taking a look at this pull request as it has been labeled with an integration ( Code owner commandsCode owners of
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@@ -186,8 +186,9 @@ async def async_get_actions( | |||
# underlying value is not being monitored by HA so we shouldn't allow | |||
# actions against it. | |||
if ( | |||
state := hass.states.get(entry.entity_id) | |||
) and state.state == STATE_UNAVAILABLE: | |||
not (state := hass.states.get(entry.entity_id)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not about test coverage, it's about handling the case where the entity has been removed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is actually a bug fix because if the state is not found, we should just continue and that was not handled properly. The test coverage piece is the change below to reduce missed lines. Renamed the PR accordingly
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks @raman325 👍
…fig_parameter * 'dev' of https://github.com/home-assistant/core: (390 commits) Use snapshots in devolo_home_control tests (home-assistant#93202) Configurable KNX Telegram history size (home-assistant#93248) Bugfix and add test coverage for zwave_js.light (home-assistant#93257) Refactor zwave_js.fan and add tests (home-assistant#93256) Bugfix and small refactor for zwave_js.device_action (home-assistant#93261) Refactor zwave_js.sensor and add test coverage (home-assistant#93259) Improve test coverage for zwave_js.trigger (home-assistant#93260) Fix august configuration url with Yale Home brand (home-assistant#93361) Make mqtt device_tracker state_topic optional when json_attribute_topic is used (home-assistant#93322) Move HydrawiseEntity into entity.py (home-assistant#93359) Update Home Assistant base image to 2023.05.0 (home-assistant#93350) Adjust counter to not restore configuration parameters (home-assistant#93344) Deprecate counter.configure service (home-assistant#93343) Update zwave-me-ws version to 0.4.3 (home-assistant#93348) Add myself as a code owner of the Hydrawise integration (home-assistant#93358) Move Hydrawise constants into const.py (home-assistant#93357) Improve test coverage for zwave_js (home-assistant#93262) Add advanced imap option to set custom event max message size (home-assistant#93163) Bump zwave-js-server-python to 0.48.1 (home-assistant#93342) Bump `aionotion` to 2023.05.5 (home-assistant#93334) ...
…93261) Improve test coverage for zwave_js.device_action
Proposed change
There was a small bug because if the state for an entity ID was not found, we would still try to get actions for it. That is fixed with this PR. Additionally combined some code to reduce coverage requirements
Type of change
Additional information
Checklist
black --fast homeassistant tests
)If user exposed functionality or configuration variables are added/changed:
If the code communicates with devices, web services, or third-party tools:
Updated and included derived files by running:
python3 -m script.hassfest
.requirements_all.txt
.Updated by running
python3 -m script.gen_requirements_all
..coveragerc
.To help with the load of incoming pull requests: