diff --git a/homeassistant/components/unifiprotect/manifest.json b/homeassistant/components/unifiprotect/manifest.json index 5937fc86ae4..8246d77c849 100644 --- a/homeassistant/components/unifiprotect/manifest.json +++ b/homeassistant/components/unifiprotect/manifest.json @@ -40,6 +40,7 @@ "integration_type": "hub", "iot_class": "local_push", "loggers": ["uiprotect", "unifi_discovery"], + "quality_scale": "platinum", "requirements": ["uiprotect==7.33.2", "unifi-discovery==1.2.0"], "ssdp": [ { diff --git a/homeassistant/components/unifiprotect/quality_scale.yaml b/homeassistant/components/unifiprotect/quality_scale.yaml new file mode 100644 index 00000000000..01d7a68afc3 --- /dev/null +++ b/homeassistant/components/unifiprotect/quality_scale.yaml @@ -0,0 +1,68 @@ +rules: + # Bronze + action-setup: done + appropriate-polling: + status: exempt + comment: Integration is push-based using WebSockets (iot_class local_push). + brands: done + common-modules: done + config-flow-test-coverage: done + config-flow: done + 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: done + config-entry-unloading: done + docs-configuration-parameters: done + docs-installation-parameters: done + entity-unavailable: done + integration-owner: done + log-when-unavailable: done + parallel-updates: done + reauthentication-flow: done + test-coverage: + status: done + comment: Diagnostics tests could use snapshot testing. + + # Gold + devices: done + diagnostics: done + discovery-update-info: done + 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: done + entity-category: done + entity-device-class: + status: done + comment: "Planned improvement: remove doorbell occupancy binary sensor and keep the event sensor after a solution for https://github.com/home-assistant/core/issues/145941 is available." + entity-disabled-by-default: done + entity-translations: + status: done + comment: "Planned improvement: camera insecure is not translated but will be dropped soon with public api migration" + exception-translations: done + icon-translations: done + reconfiguration-flow: done + repair-issues: done + stale-devices: done + + # Platinum + async-dependency: done + inject-websession: done + strict-typing: done diff --git a/script/hassfest/quality_scale.py b/script/hassfest/quality_scale.py index 5cb0fffddf1..0519057377f 100644 --- a/script/hassfest/quality_scale.py +++ b/script/hassfest/quality_scale.py @@ -1008,7 +1008,6 @@ INTEGRATIONS_WITHOUT_QUALITY_SCALE_FILE = [ "unifi", "unifi_direct", "unifiled", - "unifiprotect", "universal", "upb", "upc_connect", @@ -2032,7 +2031,6 @@ INTEGRATIONS_WITHOUT_SCALE = [ "unifi", "unifi_direct", "unifiled", - "unifiprotect", "universal", "upb", "upc_connect",