mirror of https://github.com/home-assistant/core
76 lines
1.7 KiB
Python
76 lines
1.7 KiB
Python
"""Test code shared between test files."""
|
|
|
|
from tuyaha.devices import climate, light, switch
|
|
|
|
CLIMATE_ID = "1"
|
|
CLIMATE_DATA = {
|
|
"data": {"state": "true", "temp_unit": climate.UNIT_CELSIUS},
|
|
"id": CLIMATE_ID,
|
|
"ha_type": "climate",
|
|
"name": "TestClimate",
|
|
"dev_type": "climate",
|
|
}
|
|
|
|
LIGHT_ID = "2"
|
|
LIGHT_DATA = {
|
|
"data": {"state": "true"},
|
|
"id": LIGHT_ID,
|
|
"ha_type": "light",
|
|
"name": "TestLight",
|
|
"dev_type": "light",
|
|
}
|
|
|
|
SWITCH_ID = "3"
|
|
SWITCH_DATA = {
|
|
"data": {"state": True},
|
|
"id": SWITCH_ID,
|
|
"ha_type": "switch",
|
|
"name": "TestSwitch",
|
|
"dev_type": "switch",
|
|
}
|
|
|
|
LIGHT_ID_FAKE1 = "9998"
|
|
LIGHT_DATA_FAKE1 = {
|
|
"data": {"state": "true"},
|
|
"id": LIGHT_ID_FAKE1,
|
|
"ha_type": "light",
|
|
"name": "TestLightFake1",
|
|
"dev_type": "light",
|
|
}
|
|
|
|
LIGHT_ID_FAKE2 = "9999"
|
|
LIGHT_DATA_FAKE2 = {
|
|
"data": {"state": "true"},
|
|
"id": LIGHT_ID_FAKE2,
|
|
"ha_type": "light",
|
|
"name": "TestLightFake2",
|
|
"dev_type": "light",
|
|
}
|
|
|
|
TUYA_DEVICES = [
|
|
climate.TuyaClimate(CLIMATE_DATA, None),
|
|
light.TuyaLight(LIGHT_DATA, None),
|
|
switch.TuyaSwitch(SWITCH_DATA, None),
|
|
light.TuyaLight(LIGHT_DATA_FAKE1, None),
|
|
light.TuyaLight(LIGHT_DATA_FAKE2, None),
|
|
]
|
|
|
|
|
|
class MockTuya:
|
|
"""Mock for Tuya devices."""
|
|
|
|
def get_all_devices(self):
|
|
"""Return all configured devices."""
|
|
return TUYA_DEVICES
|
|
|
|
def get_device_by_id(self, dev_id):
|
|
"""Return configured device with dev id."""
|
|
if dev_id == LIGHT_ID_FAKE1:
|
|
return None
|
|
if dev_id == LIGHT_ID_FAKE2:
|
|
return switch.TuyaSwitch(SWITCH_DATA, None)
|
|
for device in TUYA_DEVICES:
|
|
if device.object_id() == dev_id:
|
|
return device
|
|
return None
|