Add JobManager and Job decorator (#2225)

* Adds condition decorator to block execution that require internet

* Fix exsisting tests

* Add internet state to network info

* Add healthy condition

* Add tests

* It's all changed

* rename
This commit is contained in:
Joakim Sørensen
2020-11-12 22:57:28 +01:00
committed by GitHub
parent cd34a40dd8
commit a18b706f99
20 changed files with 474 additions and 33 deletions

View File

@@ -0,0 +1,41 @@
"""Test supported features."""
# pylint: disable=protected-access
from unittest.mock import patch
from supervisor.coresys import CoreSys
from supervisor.host.const import ConnectivityState
async def test_connectivity_unknown(coresys: CoreSys):
"""Test host unknown connectivity."""
with patch("supervisor.utils.gdbus.DBus._send", return_value="[0]"):
await coresys.host.network.check_connectivity()
assert coresys.host.network.connectivity == ConnectivityState.UNKNOWN
async def test_connectivity_none(coresys: CoreSys):
"""Test host none connectivity."""
with patch("supervisor.utils.gdbus.DBus._send", return_value="[1]"):
await coresys.host.network.check_connectivity()
assert coresys.host.network.connectivity == ConnectivityState.NONE
async def test_connectivity_portal(coresys: CoreSys):
"""Test host portal connectivity."""
with patch("supervisor.utils.gdbus.DBus._send", return_value="[2]"):
await coresys.host.network.check_connectivity()
assert coresys.host.network.connectivity == ConnectivityState.PORTAL
async def test_connectivity_limited(coresys: CoreSys):
"""Test host limited connectivity."""
with patch("supervisor.utils.gdbus.DBus._send", return_value="[3]"):
await coresys.host.network.check_connectivity()
assert coresys.host.network.connectivity == ConnectivityState.LIMITED
async def test_connectivity_full(coresys: CoreSys):
"""Test host full connectivity."""
with patch("supervisor.utils.gdbus.DBus._send", return_value="[4]"):
await coresys.host.network.check_connectivity()
assert coresys.host.network.connectivity == ConnectivityState.FULL