core/homeassistant/components/heos/quality_scale.yaml

82 lines
2.6 KiB
YAML

rules:
# Bronze
action-setup: done
appropriate-polling:
status: done
comment: Integration is a local push integration
brands: done
common-modules: todo
config-flow-test-coverage: done
config-flow:
status: done
comment: Consider enhnacement to automatically select a host when multiple are discovered.
dependency-transparency: done
docs-actions: done
docs-high-level-description: done
docs-installation-instructions: done
docs-removal-instructions: done
entity-event-setup: done
entity-unique-id: done
has-entity-name: done
runtime-data: done
test-before-configure: done
test-before-setup: done
unique-config-entry: done
# Silver
action-exceptions:
status: todo
comment: Actions currently only log and instead should raise exceptions.
config-entry-unloading: done
docs-configuration-parameters: done
docs-installation-parameters: done
entity-unavailable: done
integration-owner: done
log-when-unavailable:
status: todo
comment: |
The integration currently spams the logs until reconnected
parallel-updates:
status: todo
comment: Needs to be set to 0. The underlying library handles parallel updates.
reauthentication-flow: done
test-coverage:
status: todo
comment: |
1. Integration has >95% coverage, however tests need to be updated to not patch internals.
2. test_async_setup_entry_connect_failure and test_async_setup_entry_player_failure -> Instead of
calling async_setup_entry directly, rather use hass.config_entries.async_setup and then assert
the config_entry.state is what we expect.
3. test_unload_entry -> We should use hass.config_entries.async_unload and assert the entry state
4. Recommend using snapshot in test_state_attributes.
5. Find a way to avoid using internal dispatcher in test_updates_from_connection_event.
# Gold
devices: done
diagnostics: todo
discovery-update-info:
status: todo
comment: Explore if this is possible.
discovery: done
docs-data-update: done
docs-examples: done
docs-known-limitations: done
docs-supported-devices: done
docs-supported-functions: done
docs-troubleshooting: done
docs-use-cases: done
dynamic-devices: todo
entity-category: done
entity-device-class: done
entity-disabled-by-default: done
entity-translations: done
exception-translations: todo
icon-translations: done
reconfiguration-flow: done
repair-issues: todo
stale-devices: todo
# Platinum
async-dependency: done
inject-websession:
status: done
comment: The integration does not use websession
strict-typing: todo