Remove vizio from mypy ignore list (#73585)

* Remove vizio config_flow from mypy ignore list

* Fix mypy errors

* Adjust media_player

* Add space
This commit is contained in:
epenet 2022-06-19 21:39:24 +02:00 committed by GitHub
parent e7e9c65e44
commit a92105171c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 16 additions and 19 deletions

View File

@ -187,11 +187,11 @@ class VizioConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
def __init__(self) -> None:
"""Initialize config flow."""
self._user_schema = None
self._must_show_form = None
self._must_show_form: bool | None = None
self._ch_type = None
self._pairing_token = None
self._data = None
self._apps = {}
self._data: dict[str, Any] | None = None
self._apps: dict[str, list] = {}
async def _create_entry(self, input_dict: dict[str, Any]) -> FlowResult:
"""Create vizio config entry."""
@ -387,10 +387,11 @@ class VizioConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
Ask user for PIN to complete pairing process.
"""
errors = {}
errors: dict[str, str] = {}
# Start pairing process if it hasn't already started
if not self._ch_type and not self._pairing_token:
assert self._data
dev = VizioAsync(
DEVICE_ID,
self._data[CONF_HOST],
@ -448,6 +449,7 @@ class VizioConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
async def _pairing_complete(self, step_id: str) -> FlowResult:
"""Handle config flow completion."""
assert self._data
if not self._must_show_form:
return await self._create_entry(self._data)

View File

@ -3,7 +3,6 @@ from __future__ import annotations
from datetime import timedelta
import logging
from typing import Any
from pyvizio import VizioAsync
from pyvizio.api.apps import find_app_name
@ -103,7 +102,10 @@ async def async_setup_entry(
params["data"] = new_data
if params:
hass.config_entries.async_update_entry(config_entry, **params)
hass.config_entries.async_update_entry(
config_entry,
**params, # type: ignore[arg-type]
)
device = VizioAsync(
DEVICE_ID,
@ -134,7 +136,7 @@ class VizioDevice(MediaPlayerEntity):
config_entry: ConfigEntry,
device: VizioAsync,
name: str,
device_class: str,
device_class: MediaPlayerDeviceClass,
apps_coordinator: DataUpdateCoordinator,
) -> None:
"""Initialize Vizio device."""
@ -145,8 +147,8 @@ class VizioDevice(MediaPlayerEntity):
self._current_input = None
self._current_app_config = None
self._attr_app_name = None
self._available_inputs = []
self._available_apps = []
self._available_inputs: list[str] = []
self._available_apps: list[str] = []
self._all_apps = apps_coordinator.data if apps_coordinator else None
self._conf_apps = config_entry.options.get(CONF_APPS, {})
self._additional_app_configs = config_entry.data.get(CONF_APPS, {}).get(
@ -195,6 +197,7 @@ class VizioDevice(MediaPlayerEntity):
self._attr_available = True
if not self._attr_device_info:
assert self._attr_unique_id
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, self._attr_unique_id)},
manufacturer="VIZIO",
@ -276,7 +279,7 @@ class VizioDevice(MediaPlayerEntity):
if self._attr_app_name == NO_APP_RUNNING:
self._attr_app_name = None
def _get_additional_app_names(self) -> list[dict[str, Any]]:
def _get_additional_app_names(self) -> list[str]:
"""Return list of additional apps that were included in configuration.yaml."""
return [
additional_app["name"] for additional_app in self._additional_app_configs

View File

@ -758,7 +758,7 @@ def ensure_list_csv(value: Any) -> list:
class multi_select:
"""Multi select validator returning list of selected values."""
def __init__(self, options: dict) -> None:
def __init__(self, options: dict | list) -> None:
"""Initialize multi select."""
self.options = options

View File

@ -2940,12 +2940,6 @@ ignore_errors = true
[mypy-homeassistant.components.unifi.unifi_entity_base]
ignore_errors = true
[mypy-homeassistant.components.vizio.config_flow]
ignore_errors = true
[mypy-homeassistant.components.vizio.media_player]
ignore_errors = true
[mypy-homeassistant.components.withings]
ignore_errors = true

View File

@ -129,8 +129,6 @@ IGNORED_MODULES: Final[list[str]] = [
"homeassistant.components.unifi.device_tracker",
"homeassistant.components.unifi.diagnostics",
"homeassistant.components.unifi.unifi_entity_base",
"homeassistant.components.vizio.config_flow",
"homeassistant.components.vizio.media_player",
"homeassistant.components.withings",
"homeassistant.components.withings.binary_sensor",
"homeassistant.components.withings.common",