From 2c66ac62033b2f2ba33015120dc5f5f6bccc0902 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Thu, 31 Mar 2022 16:39:57 +0200 Subject: [PATCH] Remove deprecated Updater integration (#68981) * Remove deprecated Updater integration * Remove updater mock --- CODEOWNERS | 2 - homeassistant/components/updater/__init__.py | 141 ------------------ .../components/updater/binary_sensor.py | 56 ------- .../components/updater/manifest.json | 8 - homeassistant/components/updater/strings.json | 1 - .../components/updater/translations/af.json | 3 - .../components/updater/translations/ar.json | 3 - .../components/updater/translations/bg.json | 3 - .../components/updater/translations/bs.json | 3 - .../components/updater/translations/ca.json | 3 - .../components/updater/translations/cs.json | 3 - .../components/updater/translations/cy.json | 3 - .../components/updater/translations/da.json | 3 - .../components/updater/translations/de.json | 3 - .../components/updater/translations/el.json | 3 - .../components/updater/translations/en.json | 3 - .../updater/translations/es-419.json | 3 - .../components/updater/translations/es.json | 3 - .../components/updater/translations/et.json | 3 - .../components/updater/translations/eu.json | 3 - .../components/updater/translations/fa.json | 3 - .../components/updater/translations/fi.json | 3 - .../components/updater/translations/fr.json | 3 - .../components/updater/translations/gsw.json | 3 - .../components/updater/translations/he.json | 3 - .../components/updater/translations/hr.json | 3 - .../components/updater/translations/hu.json | 3 - .../components/updater/translations/hy.json | 3 - .../components/updater/translations/id.json | 3 - .../components/updater/translations/is.json | 3 - .../components/updater/translations/it.json | 3 - .../components/updater/translations/ja.json | 3 - .../components/updater/translations/ko.json | 3 - .../components/updater/translations/lb.json | 3 - .../components/updater/translations/lv.json | 3 - .../components/updater/translations/nb.json | 3 - .../components/updater/translations/nl.json | 3 - .../components/updater/translations/nn.json | 3 - .../components/updater/translations/no.json | 3 - .../components/updater/translations/pl.json | 3 - .../updater/translations/pt-BR.json | 3 - .../components/updater/translations/pt.json | 3 - .../components/updater/translations/ro.json | 3 - .../components/updater/translations/ru.json | 3 - .../components/updater/translations/sk.json | 3 - .../components/updater/translations/sl.json | 3 - .../components/updater/translations/sv.json | 3 - .../components/updater/translations/ta.json | 3 - .../components/updater/translations/te.json | 3 - .../components/updater/translations/th.json | 3 - .../components/updater/translations/tr.json | 3 - .../components/updater/translations/uk.json | 3 - .../components/updater/translations/vi.json | 3 - .../updater/translations/zh-Hans.json | 3 - .../updater/translations/zh-Hant.json | 3 - tests/components/default_config/test_init.py | 7 - tests/components/updater/__init__.py | 1 - tests/components/updater/test_init.py | 130 ---------------- 58 files changed, 496 deletions(-) delete mode 100644 homeassistant/components/updater/__init__.py delete mode 100644 homeassistant/components/updater/binary_sensor.py delete mode 100644 homeassistant/components/updater/manifest.json delete mode 100644 homeassistant/components/updater/strings.json delete mode 100644 homeassistant/components/updater/translations/af.json delete mode 100644 homeassistant/components/updater/translations/ar.json delete mode 100644 homeassistant/components/updater/translations/bg.json delete mode 100644 homeassistant/components/updater/translations/bs.json delete mode 100644 homeassistant/components/updater/translations/ca.json delete mode 100644 homeassistant/components/updater/translations/cs.json delete mode 100644 homeassistant/components/updater/translations/cy.json delete mode 100644 homeassistant/components/updater/translations/da.json delete mode 100644 homeassistant/components/updater/translations/de.json delete mode 100644 homeassistant/components/updater/translations/el.json delete mode 100644 homeassistant/components/updater/translations/en.json delete mode 100644 homeassistant/components/updater/translations/es-419.json delete mode 100644 homeassistant/components/updater/translations/es.json delete mode 100644 homeassistant/components/updater/translations/et.json delete mode 100644 homeassistant/components/updater/translations/eu.json delete mode 100644 homeassistant/components/updater/translations/fa.json delete mode 100644 homeassistant/components/updater/translations/fi.json delete mode 100644 homeassistant/components/updater/translations/fr.json delete mode 100644 homeassistant/components/updater/translations/gsw.json delete mode 100644 homeassistant/components/updater/translations/he.json delete mode 100644 homeassistant/components/updater/translations/hr.json delete mode 100644 homeassistant/components/updater/translations/hu.json delete mode 100644 homeassistant/components/updater/translations/hy.json delete mode 100644 homeassistant/components/updater/translations/id.json delete mode 100644 homeassistant/components/updater/translations/is.json delete mode 100644 homeassistant/components/updater/translations/it.json delete mode 100644 homeassistant/components/updater/translations/ja.json delete mode 100644 homeassistant/components/updater/translations/ko.json delete mode 100644 homeassistant/components/updater/translations/lb.json delete mode 100644 homeassistant/components/updater/translations/lv.json delete mode 100644 homeassistant/components/updater/translations/nb.json delete mode 100644 homeassistant/components/updater/translations/nl.json delete mode 100644 homeassistant/components/updater/translations/nn.json delete mode 100644 homeassistant/components/updater/translations/no.json delete mode 100644 homeassistant/components/updater/translations/pl.json delete mode 100644 homeassistant/components/updater/translations/pt-BR.json delete mode 100644 homeassistant/components/updater/translations/pt.json delete mode 100644 homeassistant/components/updater/translations/ro.json delete mode 100644 homeassistant/components/updater/translations/ru.json delete mode 100644 homeassistant/components/updater/translations/sk.json delete mode 100644 homeassistant/components/updater/translations/sl.json delete mode 100644 homeassistant/components/updater/translations/sv.json delete mode 100644 homeassistant/components/updater/translations/ta.json delete mode 100644 homeassistant/components/updater/translations/te.json delete mode 100644 homeassistant/components/updater/translations/th.json delete mode 100644 homeassistant/components/updater/translations/tr.json delete mode 100644 homeassistant/components/updater/translations/uk.json delete mode 100644 homeassistant/components/updater/translations/vi.json delete mode 100644 homeassistant/components/updater/translations/zh-Hans.json delete mode 100644 homeassistant/components/updater/translations/zh-Hant.json delete mode 100644 tests/components/updater/__init__.py delete mode 100644 tests/components/updater/test_init.py diff --git a/CODEOWNERS b/CODEOWNERS index d0f03e31e0e..8f0a672fa51 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -1076,8 +1076,6 @@ build.json @home-assistant/supervisor /tests/components/upcloud/ @scop /homeassistant/components/update/ @home-assistant/core /tests/components/update/ @home-assistant/core -/homeassistant/components/updater/ @home-assistant/core -/tests/components/updater/ @home-assistant/core /homeassistant/components/upnp/ @StevenLooman @ehendrix23 /tests/components/upnp/ @StevenLooman @ehendrix23 /homeassistant/components/uptime/ @frenck diff --git a/homeassistant/components/updater/__init__.py b/homeassistant/components/updater/__init__.py deleted file mode 100644 index 4f88b5d1369..00000000000 --- a/homeassistant/components/updater/__init__.py +++ /dev/null @@ -1,141 +0,0 @@ -"""Support to check for available updates.""" -import asyncio -from datetime import timedelta -import logging - -import async_timeout -from awesomeversion import AwesomeVersion -import voluptuous as vol - -from homeassistant.components import hassio -from homeassistant.const import Platform, __version__ as current_version -from homeassistant.core import HomeAssistant -from homeassistant.helpers import discovery, update_coordinator -from homeassistant.helpers.aiohttp_client import async_get_clientsession -import homeassistant.helpers.config_validation as cv -from homeassistant.helpers.typing import ConfigType - -_LOGGER = logging.getLogger(__name__) - -ATTR_RELEASE_NOTES = "release_notes" -ATTR_NEWEST_VERSION = "newest_version" - -CONF_REPORTING = "reporting" -CONF_COMPONENT_REPORTING = "include_used_components" - -DOMAIN = "updater" - -UPDATER_URL = "https://www.home-assistant.io/version.json" - - -CONFIG_SCHEMA = vol.Schema( - { - DOMAIN: { - vol.Optional(CONF_REPORTING): cv.boolean, - vol.Optional(CONF_COMPONENT_REPORTING): cv.boolean, - } - }, - extra=vol.ALLOW_EXTRA, -) - -RESPONSE_SCHEMA = vol.Schema( - {vol.Required("current_version"): cv.string, vol.Required("release_notes"): cv.url}, - extra=vol.REMOVE_EXTRA, -) - - -class Updater: - """Updater class for data exchange.""" - - def __init__( - self, update_available: bool, newest_version: str, release_notes: str - ) -> None: - """Initialize attributes.""" - self.update_available = update_available - self.release_notes = release_notes - self.newest_version = newest_version - - -async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: - """Set up the updater component.""" - _LOGGER.warning( - "The updater integration has been deprecated and will be removed in 2022.5, " - "please remove it from your configuration" - ) - - async def check_new_version() -> Updater: - """Check if a new version is available and report if one is.""" - # Skip on dev - if "dev" in current_version: - return Updater(False, "", "") - - newest, release_notes = await get_newest_version(hass) - - _LOGGER.debug("Fetched version %s: %s", newest, release_notes) - - # Load data from Supervisor - if hassio.is_hassio(hass): - core_info = hassio.get_core_info(hass) - newest = core_info["version_latest"] - - # Validate version - update_available = False - if AwesomeVersion(newest) > AwesomeVersion(current_version): - _LOGGER.debug( - "The latest available version of Home Assistant is %s", newest - ) - update_available = True - elif AwesomeVersion(newest) == AwesomeVersion(current_version): - _LOGGER.debug( - "You are on the latest version (%s) of Home Assistant", newest - ) - elif AwesomeVersion(newest) < AwesomeVersion(current_version): - _LOGGER.debug( - "Local version (%s) is newer than the latest available version (%s)", - current_version, - newest, - ) - - _LOGGER.debug("Update available: %s", update_available) - - return Updater(update_available, newest, release_notes) - - coordinator = hass.data[DOMAIN] = update_coordinator.DataUpdateCoordinator[Updater]( - hass, - _LOGGER, - name="Home Assistant update", - update_method=check_new_version, - update_interval=timedelta(days=1), - ) - - # This can take up to 15s which can delay startup - asyncio.create_task(coordinator.async_refresh()) - - hass.async_create_task( - discovery.async_load_platform(hass, Platform.BINARY_SENSOR, DOMAIN, {}, config) - ) - - return True - - -async def get_newest_version(hass): - """Get the newest Home Assistant version.""" - session = async_get_clientsession(hass) - - async with async_timeout.timeout(30): - req = await session.get(UPDATER_URL) - - try: - res = await req.json() - except ValueError as err: - raise update_coordinator.UpdateFailed( - "Received invalid JSON from Home Assistant Update" - ) from err - - try: - res = RESPONSE_SCHEMA(res) - return res["current_version"], res["release_notes"] - except vol.Invalid as err: - raise update_coordinator.UpdateFailed( - f"Got unexpected response: {err}" - ) from err diff --git a/homeassistant/components/updater/binary_sensor.py b/homeassistant/components/updater/binary_sensor.py deleted file mode 100644 index 1409f26a2f5..00000000000 --- a/homeassistant/components/updater/binary_sensor.py +++ /dev/null @@ -1,56 +0,0 @@ -"""Support for Home Assistant Updater binary sensors.""" -from __future__ import annotations - -from homeassistant.components.binary_sensor import ( - BinarySensorDeviceClass, - BinarySensorEntity, -) -from homeassistant.core import HomeAssistant -from homeassistant.helpers.entity_platform import AddEntitiesCallback -from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType -from homeassistant.helpers.update_coordinator import CoordinatorEntity - -from . import ATTR_NEWEST_VERSION, ATTR_RELEASE_NOTES, DOMAIN as UPDATER_DOMAIN - - -async def async_setup_platform( - hass: HomeAssistant, - config: ConfigType, - async_add_entities: AddEntitiesCallback, - discovery_info: DiscoveryInfoType | None = None, -) -> None: - """Set up the updater binary sensors.""" - if discovery_info is None: - return - - async_add_entities([UpdaterBinary(hass.data[UPDATER_DOMAIN])]) - - -class UpdaterBinary(CoordinatorEntity, BinarySensorEntity): - """Representation of an updater binary sensor.""" - - _attr_device_class = BinarySensorDeviceClass.UPDATE - _attr_name = "Updater" - _attr_unique_id = "updater" - - @property - def available(self) -> bool: - """Return if entity is available.""" - return True - - @property - def is_on(self) -> bool: - """Return true if there is an update available.""" - return self.coordinator.data and self.coordinator.data.update_available - - @property - def extra_state_attributes(self) -> dict | None: - """Return the optional state attributes.""" - if not self.coordinator.data: - return None - data = {} - if self.coordinator.data.release_notes: - data[ATTR_RELEASE_NOTES] = self.coordinator.data.release_notes - if self.coordinator.data.newest_version: - data[ATTR_NEWEST_VERSION] = self.coordinator.data.newest_version - return data diff --git a/homeassistant/components/updater/manifest.json b/homeassistant/components/updater/manifest.json deleted file mode 100644 index db225bbf242..00000000000 --- a/homeassistant/components/updater/manifest.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "domain": "updater", - "name": "Updater", - "documentation": "https://www.home-assistant.io/integrations/updater", - "codeowners": ["@home-assistant/core"], - "quality_scale": "internal", - "iot_class": "cloud_polling" -} diff --git a/homeassistant/components/updater/strings.json b/homeassistant/components/updater/strings.json deleted file mode 100644 index d4fe2079d8f..00000000000 --- a/homeassistant/components/updater/strings.json +++ /dev/null @@ -1 +0,0 @@ -{ "title": "Updater" } diff --git a/homeassistant/components/updater/translations/af.json b/homeassistant/components/updater/translations/af.json deleted file mode 100644 index bf9cb9c98f4..00000000000 --- a/homeassistant/components/updater/translations/af.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Opdateerder" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/ar.json b/homeassistant/components/updater/translations/ar.json deleted file mode 100644 index 9aecb4b83dc..00000000000 --- a/homeassistant/components/updater/translations/ar.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u062a\u062d\u062f\u064a\u062b" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/bg.json b/homeassistant/components/updater/translations/bg.json deleted file mode 100644 index ce1bddc104f..00000000000 --- a/homeassistant/components/updater/translations/bg.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u041e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/bs.json b/homeassistant/components/updater/translations/bs.json deleted file mode 100644 index 43859eedc5a..00000000000 --- a/homeassistant/components/updater/translations/bs.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Updater" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/ca.json b/homeassistant/components/updater/translations/ca.json deleted file mode 100644 index 419215d32b6..00000000000 --- a/homeassistant/components/updater/translations/ca.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Actualitzador" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/cs.json b/homeassistant/components/updater/translations/cs.json deleted file mode 100644 index 9d25158400b..00000000000 --- a/homeassistant/components/updater/translations/cs.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Aktualiz\u00e1tor" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/cy.json b/homeassistant/components/updater/translations/cy.json deleted file mode 100644 index b3ef0dcb85f..00000000000 --- a/homeassistant/components/updater/translations/cy.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Diweddarwr" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/da.json b/homeassistant/components/updater/translations/da.json deleted file mode 100644 index bc9b108c3ec..00000000000 --- a/homeassistant/components/updater/translations/da.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Opdater" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/de.json b/homeassistant/components/updater/translations/de.json deleted file mode 100644 index 43859eedc5a..00000000000 --- a/homeassistant/components/updater/translations/de.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Updater" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/el.json b/homeassistant/components/updater/translations/el.json deleted file mode 100644 index f44dc928c16..00000000000 --- a/homeassistant/components/updater/translations/el.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u0395\u03bd\u03b7\u03bc\u03b5\u03c1\u03c9\u03c4\u03ae\u03c2" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/en.json b/homeassistant/components/updater/translations/en.json deleted file mode 100644 index 43859eedc5a..00000000000 --- a/homeassistant/components/updater/translations/en.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Updater" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/es-419.json b/homeassistant/components/updater/translations/es-419.json deleted file mode 100644 index a822ffbd0a9..00000000000 --- a/homeassistant/components/updater/translations/es-419.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Actualizador" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/es.json b/homeassistant/components/updater/translations/es.json deleted file mode 100644 index a822ffbd0a9..00000000000 --- a/homeassistant/components/updater/translations/es.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Actualizador" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/et.json b/homeassistant/components/updater/translations/et.json deleted file mode 100644 index 8d36316f011..00000000000 --- a/homeassistant/components/updater/translations/et.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Uuendaja" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/eu.json b/homeassistant/components/updater/translations/eu.json deleted file mode 100644 index cec08736bae..00000000000 --- a/homeassistant/components/updater/translations/eu.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Eguneratzailea" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/fa.json b/homeassistant/components/updater/translations/fa.json deleted file mode 100644 index d32b1e212c2..00000000000 --- a/homeassistant/components/updater/translations/fa.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/fi.json b/homeassistant/components/updater/translations/fi.json deleted file mode 100644 index 48f9aa81b72..00000000000 --- a/homeassistant/components/updater/translations/fi.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "P\u00e4ivitys" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/fr.json b/homeassistant/components/updater/translations/fr.json deleted file mode 100644 index 228912f95a8..00000000000 --- a/homeassistant/components/updater/translations/fr.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Mise \u00e0 jour" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/gsw.json b/homeassistant/components/updater/translations/gsw.json deleted file mode 100644 index 43859eedc5a..00000000000 --- a/homeassistant/components/updater/translations/gsw.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Updater" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/he.json b/homeassistant/components/updater/translations/he.json deleted file mode 100644 index 38072833421..00000000000 --- a/homeassistant/components/updater/translations/he.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u05de\u05e2\u05d3\u05db\u05df" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/hr.json b/homeassistant/components/updater/translations/hr.json deleted file mode 100644 index 21d0438f9cb..00000000000 --- a/homeassistant/components/updater/translations/hr.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "A\u017euriranje" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/hu.json b/homeassistant/components/updater/translations/hu.json deleted file mode 100644 index e862dcb360c..00000000000 --- a/homeassistant/components/updater/translations/hu.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Friss\u00edt\u0151" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/hy.json b/homeassistant/components/updater/translations/hy.json deleted file mode 100644 index 78c67fb8950..00000000000 --- a/homeassistant/components/updater/translations/hy.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u0539\u0561\u0580\u0574\u0561\u0581\u0576\u0578\u0572" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/id.json b/homeassistant/components/updater/translations/id.json deleted file mode 100644 index 1ab6aa58946..00000000000 --- a/homeassistant/components/updater/translations/id.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Pembaru" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/is.json b/homeassistant/components/updater/translations/is.json deleted file mode 100644 index e0f7536fd1a..00000000000 --- a/homeassistant/components/updater/translations/is.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Uppf\u00e6rslu\u00e1lfur" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/it.json b/homeassistant/components/updater/translations/it.json deleted file mode 100644 index 539f0bb4294..00000000000 --- a/homeassistant/components/updater/translations/it.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Aggiornamento" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/ja.json b/homeassistant/components/updater/translations/ja.json deleted file mode 100644 index 2a34917b909..00000000000 --- a/homeassistant/components/updater/translations/ja.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u30a2\u30c3\u30d7\u30c7\u30fc\u30bf\u30fc" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/ko.json b/homeassistant/components/updater/translations/ko.json deleted file mode 100644 index 14137569e1b..00000000000 --- a/homeassistant/components/updater/translations/ko.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\uc5c5\ub370\uc774\ud130" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/lb.json b/homeassistant/components/updater/translations/lb.json deleted file mode 100644 index 375f8fa7bc6..00000000000 --- a/homeassistant/components/updater/translations/lb.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Aktualis\u00e9ierung" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/lv.json b/homeassistant/components/updater/translations/lv.json deleted file mode 100644 index 15d29e35a06..00000000000 --- a/homeassistant/components/updater/translations/lv.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Atjaunin\u0101t\u0101js" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/nb.json b/homeassistant/components/updater/translations/nb.json deleted file mode 100644 index e98d60ab4fc..00000000000 --- a/homeassistant/components/updater/translations/nb.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Oppdater" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/nl.json b/homeassistant/components/updater/translations/nl.json deleted file mode 100644 index 43859eedc5a..00000000000 --- a/homeassistant/components/updater/translations/nl.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Updater" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/nn.json b/homeassistant/components/updater/translations/nn.json deleted file mode 100644 index 7eb98bdd2c1..00000000000 --- a/homeassistant/components/updater/translations/nn.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Oppdateringar" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/no.json b/homeassistant/components/updater/translations/no.json deleted file mode 100644 index c8fafabfe77..00000000000 --- a/homeassistant/components/updater/translations/no.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Oppdaterer" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/pl.json b/homeassistant/components/updater/translations/pl.json deleted file mode 100644 index 21a3703bba9..00000000000 --- a/homeassistant/components/updater/translations/pl.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Aktualizator" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/pt-BR.json b/homeassistant/components/updater/translations/pt-BR.json deleted file mode 100644 index cc89a22092a..00000000000 --- a/homeassistant/components/updater/translations/pt-BR.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Gerenciador de atualiza\u00e7\u00f5es" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/pt.json b/homeassistant/components/updater/translations/pt.json deleted file mode 100644 index 7d07ec8da09..00000000000 --- a/homeassistant/components/updater/translations/pt.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Atualizador" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/ro.json b/homeassistant/components/updater/translations/ro.json deleted file mode 100644 index 43859eedc5a..00000000000 --- a/homeassistant/components/updater/translations/ro.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Updater" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/ru.json b/homeassistant/components/updater/translations/ru.json deleted file mode 100644 index a2ee79efd15..00000000000 --- a/homeassistant/components/updater/translations/ru.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/sk.json b/homeassistant/components/updater/translations/sk.json deleted file mode 100644 index 9d25158400b..00000000000 --- a/homeassistant/components/updater/translations/sk.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Aktualiz\u00e1tor" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/sl.json b/homeassistant/components/updater/translations/sl.json deleted file mode 100644 index 7972844cb69..00000000000 --- a/homeassistant/components/updater/translations/sl.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Posodabljalnik" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/sv.json b/homeassistant/components/updater/translations/sv.json deleted file mode 100644 index 78ef7d2df20..00000000000 --- a/homeassistant/components/updater/translations/sv.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Uppdaterare" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/ta.json b/homeassistant/components/updater/translations/ta.json deleted file mode 100644 index 74f9398fbcb..00000000000 --- a/homeassistant/components/updater/translations/ta.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u0b85\u0baa\u0bcd\u0b9f\u0bc7\u0b9f\u0bcd\u0b9f\u0bb0\u0bcd" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/te.json b/homeassistant/components/updater/translations/te.json deleted file mode 100644 index 43859eedc5a..00000000000 --- a/homeassistant/components/updater/translations/te.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Updater" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/th.json b/homeassistant/components/updater/translations/th.json deleted file mode 100644 index d825a885d68..00000000000 --- a/homeassistant/components/updater/translations/th.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u0e2d\u0e31\u0e1e\u0e40\u0e14\u0e15" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/tr.json b/homeassistant/components/updater/translations/tr.json deleted file mode 100644 index 7034ef0d79e..00000000000 --- a/homeassistant/components/updater/translations/tr.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "G\u00fcncelleyici" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/uk.json b/homeassistant/components/updater/translations/uk.json deleted file mode 100644 index e98d67fc206..00000000000 --- a/homeassistant/components/updater/translations/uk.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u041e\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/vi.json b/homeassistant/components/updater/translations/vi.json deleted file mode 100644 index 0e2783d6f21..00000000000 --- a/homeassistant/components/updater/translations/vi.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "Tr\u00ecnh c\u1eadp nh\u1eadt" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/zh-Hans.json b/homeassistant/components/updater/translations/zh-Hans.json deleted file mode 100644 index 154ab2b812b..00000000000 --- a/homeassistant/components/updater/translations/zh-Hans.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u66f4\u65b0\u63d0\u793a" -} \ No newline at end of file diff --git a/homeassistant/components/updater/translations/zh-Hant.json b/homeassistant/components/updater/translations/zh-Hant.json deleted file mode 100644 index 23c1b069fc1..00000000000 --- a/homeassistant/components/updater/translations/zh-Hant.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "title": "\u66f4\u65b0\u5668" -} \ No newline at end of file diff --git a/tests/components/default_config/test_init.py b/tests/components/default_config/test_init.py index 1052eeeb164..7701eb55b90 100644 --- a/tests/components/default_config/test_init.py +++ b/tests/components/default_config/test_init.py @@ -15,13 +15,6 @@ def mock_ssdp(): yield -@pytest.fixture(autouse=True) -def mock_updater(): - """Mock updater.""" - with patch("homeassistant.components.updater.get_newest_version"): - yield - - @pytest.fixture(autouse=True) def recorder_url_mock(): """Mock recorder url.""" diff --git a/tests/components/updater/__init__.py b/tests/components/updater/__init__.py deleted file mode 100644 index 31a19cb3bf7..00000000000 --- a/tests/components/updater/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Tests for the updater component.""" diff --git a/tests/components/updater/test_init.py b/tests/components/updater/test_init.py deleted file mode 100644 index 2b0f494f5f5..00000000000 --- a/tests/components/updater/test_init.py +++ /dev/null @@ -1,130 +0,0 @@ -"""The tests for the Updater integration.""" -from unittest.mock import patch - -import pytest - -from homeassistant.components import updater -from homeassistant.helpers.update_coordinator import UpdateFailed -from homeassistant.setup import async_setup_component - -from tests.common import mock_component - -NEW_VERSION = "10000.0" -MOCK_VERSION = "10.0" -MOCK_DEV_VERSION = "10.0.dev0" -MOCK_RESPONSE = { - "current_version": "0.15", - "release_notes": "https://home-assistant.io", -} -MOCK_CONFIG = {updater.DOMAIN: {"reporting": True}} -RELEASE_NOTES = "test release notes" - - -@pytest.fixture(autouse=True) -def mock_version(): - """Mock current version.""" - with patch("homeassistant.components.updater.current_version", MOCK_VERSION): - yield - - -@pytest.fixture(name="mock_get_newest_version") -def mock_get_newest_version_fixture(): - """Fixture to mock get_newest_version.""" - with patch( - "homeassistant.components.updater.get_newest_version", - return_value=(NEW_VERSION, RELEASE_NOTES), - ) as mock: - yield mock - - -async def test_new_version_shows_entity_true(hass, mock_get_newest_version): - """Test if sensor is true if new version is available.""" - assert await async_setup_component(hass, updater.DOMAIN, {updater.DOMAIN: {}}) - - await hass.async_block_till_done() - assert hass.states.is_state("binary_sensor.updater", "on") - assert ( - hass.states.get("binary_sensor.updater").attributes["newest_version"] - == NEW_VERSION - ) - assert ( - hass.states.get("binary_sensor.updater").attributes["release_notes"] - == RELEASE_NOTES - ) - - -async def test_same_version_shows_entity_false(hass, mock_get_newest_version): - """Test if sensor is false if no new version is available.""" - mock_get_newest_version.return_value = (MOCK_VERSION, "") - - assert await async_setup_component(hass, updater.DOMAIN, {updater.DOMAIN: {}}) - - await hass.async_block_till_done() - - assert hass.states.is_state("binary_sensor.updater", "off") - assert ( - hass.states.get("binary_sensor.updater").attributes["newest_version"] - == MOCK_VERSION - ) - assert "release_notes" not in hass.states.get("binary_sensor.updater").attributes - - -async def test_deprecated_reporting(hass, mock_get_newest_version, caplog): - """Test we do not gather analytics when disable reporting is active.""" - mock_get_newest_version.return_value = (MOCK_VERSION, "") - - assert await async_setup_component( - hass, updater.DOMAIN, {updater.DOMAIN: {"reporting": True}} - ) - await hass.async_block_till_done() - - assert "deprecated" in caplog.text - - -async def test_error_fetching_new_version_bad_json(hass, aioclient_mock): - """Test we handle json error while fetching new version.""" - aioclient_mock.get(updater.UPDATER_URL, text="not json") - - with patch( - "homeassistant.helpers.system_info.async_get_system_info", - return_value={"fake": "bla"}, - ), pytest.raises(UpdateFailed): - await updater.get_newest_version(hass) - - -async def test_error_fetching_new_version_invalid_response(hass, aioclient_mock): - """Test we handle response error while fetching new version.""" - aioclient_mock.get( - updater.UPDATER_URL, - json={ - "version": "0.15" - # 'release-notes' is missing - }, - ) - - with patch( - "homeassistant.helpers.system_info.async_get_system_info", - return_value={"fake": "bla"}, - ), pytest.raises(UpdateFailed): - await updater.get_newest_version(hass) - - -async def test_new_version_shows_entity_after_hour_hassio( - hass, mock_get_newest_version -): - """Test if binary sensor gets updated if new version is available / Hass.io.""" - mock_component(hass, "hassio") - hass.data["hassio_core_info"] = {"version_latest": "999.0"} - - assert await async_setup_component(hass, updater.DOMAIN, {updater.DOMAIN: {}}) - - await hass.async_block_till_done() - - assert hass.states.is_state("binary_sensor.updater", "on") - assert ( - hass.states.get("binary_sensor.updater").attributes["newest_version"] == "999.0" - ) - assert ( - hass.states.get("binary_sensor.updater").attributes["release_notes"] - == RELEASE_NOTES - )