diff --git a/homeassistant/core.py b/homeassistant/core.py index 86cfec7099c..da4fd2ed102 100644 --- a/homeassistant/core.py +++ b/homeassistant/core.py @@ -184,6 +184,8 @@ class HomeAssistant(object): target: target to call. args: parameters for method to call. """ + if target is None: + raise ValueError("Don't call add_job with None.") self.loop.call_soon_threadsafe(self.async_add_job, target, *args) @callback diff --git a/tests/test_core.py b/tests/test_core.py index 9221ad68352..4049d10d32d 100644 --- a/tests/test_core.py +++ b/tests/test_core.py @@ -6,6 +6,7 @@ from unittest.mock import patch, MagicMock from datetime import datetime, timedelta import pytz +import pytest import homeassistant.core as ha from homeassistant.exceptions import InvalidEntityFormatError @@ -214,6 +215,11 @@ class TestHomeAssistant(unittest.TestCase): assert len(self.hass._pending_tasks) == 0 assert len(call_count) == 2 + def test_add_job_with_none(self): + """Try to add a job with None as function.""" + with pytest.raises(ValueError): + self.hass.add_job(None, 'test_arg') + class TestEvent(unittest.TestCase): """A Test Event class."""