mirror of
https://github.com/home-assistant/core.git
synced 2025-07-27 15:17:35 +00:00
Blacklist auto_backup (#32912)
* Blacklist auto_backup * Mock with a set
This commit is contained in:
parent
ff582721dd
commit
7bbffa6e6d
@ -20,6 +20,8 @@ DATA_DEPS_REQS = "deps_reqs_processed"
|
|||||||
|
|
||||||
SLOW_SETUP_WARNING = 10
|
SLOW_SETUP_WARNING = 10
|
||||||
|
|
||||||
|
BLACKLIST = set(["auto_backup"])
|
||||||
|
|
||||||
|
|
||||||
def setup_component(hass: core.HomeAssistant, domain: str, config: ConfigType) -> bool:
|
def setup_component(hass: core.HomeAssistant, domain: str, config: ConfigType) -> bool:
|
||||||
"""Set up a component and all its dependencies."""
|
"""Set up a component and all its dependencies."""
|
||||||
@ -38,6 +40,12 @@ async def async_setup_component(
|
|||||||
if domain in hass.config.components:
|
if domain in hass.config.components:
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
if domain in BLACKLIST:
|
||||||
|
_LOGGER.error(
|
||||||
|
"Integration %s is blacklisted because it is causing issues.", domain
|
||||||
|
)
|
||||||
|
return False
|
||||||
|
|
||||||
setup_tasks = hass.data.setdefault(DATA_SETUP, {})
|
setup_tasks = hass.data.setdefault(DATA_SETUP, {})
|
||||||
|
|
||||||
if domain in setup_tasks:
|
if domain in setup_tasks:
|
||||||
|
@ -6,6 +6,7 @@ import os
|
|||||||
import threading
|
import threading
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
|
from asynctest import patch
|
||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
|
|
||||||
from homeassistant import setup
|
from homeassistant import setup
|
||||||
@ -535,3 +536,15 @@ async def test_setup_import_blows_up(hass):
|
|||||||
"homeassistant.loader.Integration.get_component", side_effect=ValueError
|
"homeassistant.loader.Integration.get_component", side_effect=ValueError
|
||||||
):
|
):
|
||||||
assert not await setup.async_setup_component(hass, "sun", {})
|
assert not await setup.async_setup_component(hass, "sun", {})
|
||||||
|
|
||||||
|
|
||||||
|
async def test_blacklist(caplog):
|
||||||
|
"""Test setup blacklist."""
|
||||||
|
with patch("homeassistant.setup.BLACKLIST", {"bad_integration"}):
|
||||||
|
assert not await setup.async_setup_component(
|
||||||
|
mock.Mock(config=mock.Mock(components=[])), "bad_integration", {}
|
||||||
|
)
|
||||||
|
assert (
|
||||||
|
"Integration bad_integration is blacklisted because it is causing issues."
|
||||||
|
in caplog.text
|
||||||
|
)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user