Selaa lähdekoodia

Improve test coverage with additional sensor tests.

Jason Rumney 4 vuotta sitten
vanhempi
commit
f464785591
1 muutettua tiedostoa jossa 40 lisäystä ja 0 poistoa
  1. 40 0
      tests/test_sensor.py

+ 40 - 0
tests/test_sensor.py

@@ -36,3 +36,43 @@ async def test_init_entry(hass):
         == TuyaLocalSensor
     )
     m_add_entities.assert_called_once()
+
+
+async def test_init_entry_fails_if_device_has_no_sensor(hass):
+    """Test initialisation when device has no matching entity"""
+    entry = MockConfigEntry(
+        domain=DOMAIN,
+        data={CONF_TYPE: "mirabella_genio_usb", CONF_DEVICE_ID: "dummy"},
+    )
+    m_add_entities = Mock()
+    m_device = AsyncMock()
+
+    hass.data[DOMAIN] = {
+        "dummy": {"device": m_device},
+    }
+    try:
+        await async_setup_entry(hass, entry, m_add_entities)
+        assert False
+    except ValueError:
+        pass
+    m_add_entities.assert_not_called()
+
+
+async def test_init_entry_fails_if_config_is_missing(hass):
+    """Test initialisation when device has no matching entity"""
+    entry = MockConfigEntry(
+        domain=DOMAIN,
+        data={CONF_TYPE: "non_existing", CONF_DEVICE_ID: "dummy"},
+    )
+    m_add_entities = Mock()
+    m_device = AsyncMock()
+
+    hass.data[DOMAIN] = {
+        "dummy": {"device": m_device},
+    }
+    try:
+        await async_setup_entry(hass, entry, m_add_entities)
+        assert False
+    except ValueError:
+        pass
+    m_add_entities.assert_not_called()