mirror of
https://github.com/home-assistant/core.git
synced 2025-07-23 13:17:32 +00:00
Add and use light lux constant in entire code base (#40171)
This commit is contained in:
parent
6a7caad8dc
commit
6c8e0e20fb
@ -17,6 +17,7 @@ from homeassistant.const import (
|
||||
CONF_API_KEY,
|
||||
DEGREE,
|
||||
EVENT_HOMEASSISTANT_STOP,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
PRESSURE_INHG,
|
||||
@ -214,7 +215,7 @@ SENSOR_TYPES = {
|
||||
TYPE_SENSOR,
|
||||
None,
|
||||
),
|
||||
TYPE_SOLARRADIATION_LX: ("Solar Rad (lx)", "lx", TYPE_SENSOR, "illuminance"),
|
||||
TYPE_SOLARRADIATION_LX: ("Solar Rad (lx)", LIGHT_LUX, TYPE_SENSOR, "illuminance"),
|
||||
TYPE_TEMP10F: ("Temp 10", TEMP_FAHRENHEIT, TYPE_SENSOR, "temperature"),
|
||||
TYPE_TEMP1F: ("Temp 1", TEMP_FAHRENHEIT, TYPE_SENSOR, "temperature"),
|
||||
TYPE_TEMP2F: ("Temp 2", TEMP_FAHRENHEIT, TYPE_SENSOR, "temperature"),
|
||||
|
@ -14,6 +14,7 @@ from homeassistant.const import (
|
||||
DEVICE_CLASS_HUMIDITY,
|
||||
DEVICE_CLASS_ILLUMINANCE,
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
TEMP_CELSIUS,
|
||||
)
|
||||
@ -63,7 +64,7 @@ SENSOR_TYPES = {
|
||||
API_LUX: {
|
||||
ATTR_DEVICE_CLASS: DEVICE_CLASS_ILLUMINANCE,
|
||||
ATTR_ICON: None,
|
||||
ATTR_UNIT: "lx",
|
||||
ATTR_UNIT: LIGHT_LUX,
|
||||
ATTR_LABEL: "Illuminance",
|
||||
ATTR_UNIQUE_ID: "illuminance",
|
||||
},
|
||||
|
@ -7,7 +7,7 @@ import smbus # pylint: disable=import-error
|
||||
import voluptuous as vol
|
||||
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import CONF_NAME, DEVICE_CLASS_ILLUMINANCE
|
||||
from homeassistant.const import CONF_NAME, DEVICE_CLASS_ILLUMINANCE, LIGHT_LUX
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
||||
@ -37,7 +37,6 @@ OPERATION_MODES = {
|
||||
ONE_TIME_HIGH_RES_MODE_2: (0x21, False), # 0.5lx resolution.
|
||||
}
|
||||
|
||||
SENSOR_UNIT = "lx"
|
||||
DEFAULT_NAME = "BH1750 Light Sensor"
|
||||
DEFAULT_I2C_ADDRESS = "0x23"
|
||||
DEFAULT_I2C_BUS = 1
|
||||
@ -85,7 +84,7 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=
|
||||
_LOGGER.error("BH1750 sensor not detected at %s", i2c_address)
|
||||
return False
|
||||
|
||||
dev = [BH1750Sensor(sensor, name, SENSOR_UNIT, config[CONF_MULTIPLIER])]
|
||||
dev = [BH1750Sensor(sensor, name, LIGHT_LUX, config[CONF_MULTIPLIER])]
|
||||
_LOGGER.info(
|
||||
"Setup of BH1750 light sensor at %s in mode %s is complete",
|
||||
i2c_address,
|
||||
|
@ -22,6 +22,7 @@ from homeassistant.const import (
|
||||
DEVICE_CLASS_PRESSURE,
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
ENERGY_KILO_WATT_HOUR,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
PRESSURE_HPA,
|
||||
@ -59,7 +60,7 @@ ICON = {
|
||||
UNIT_OF_MEASUREMENT = {
|
||||
Consumption: ENERGY_KILO_WATT_HOUR,
|
||||
Humidity: PERCENTAGE,
|
||||
LightLevel: "lx",
|
||||
LightLevel: LIGHT_LUX,
|
||||
Power: POWER_WATT,
|
||||
Pressure: PRESSURE_HPA,
|
||||
Temperature: TEMP_CELSIUS,
|
||||
|
@ -7,6 +7,7 @@ from homeassistant.const import (
|
||||
DEVICE_CLASS_HUMIDITY,
|
||||
DEVICE_CLASS_ILLUMINANCE,
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
TEMP_CELSIUS,
|
||||
TEMP_FAHRENHEIT,
|
||||
@ -35,7 +36,7 @@ SENSOR_TYPES = {
|
||||
None,
|
||||
DEVICE_CLASS_HUMIDITY,
|
||||
],
|
||||
"com.fibaro.lightSensor": ["Light", "lx", None, DEVICE_CLASS_ILLUMINANCE],
|
||||
"com.fibaro.lightSensor": ["Light", LIGHT_LUX, None, DEVICE_CLASS_ILLUMINANCE],
|
||||
}
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
@ -71,7 +72,7 @@ class FibaroSensor(FibaroDevice, Entity):
|
||||
try:
|
||||
if not self._unit:
|
||||
if self.fibaro_device.properties.unit == "lux":
|
||||
self._unit = "lx"
|
||||
self._unit = LIGHT_LUX
|
||||
elif self.fibaro_device.properties.unit == "C":
|
||||
self._unit = TEMP_CELSIUS
|
||||
elif self.fibaro_device.properties.unit == "F":
|
||||
|
@ -24,6 +24,7 @@ from homeassistant.const import (
|
||||
DEVICE_CLASS_HUMIDITY,
|
||||
DEVICE_CLASS_ILLUMINANCE,
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
STATE_ON,
|
||||
STATE_UNAVAILABLE,
|
||||
@ -197,7 +198,7 @@ def get_accessory(hass, driver, state, aid, config):
|
||||
a_type = "CarbonMonoxideSensor"
|
||||
elif device_class == DEVICE_CLASS_CO2 or DEVICE_CLASS_CO2 in state.entity_id:
|
||||
a_type = "CarbonDioxideSensor"
|
||||
elif device_class == DEVICE_CLASS_ILLUMINANCE or unit in ("lm", "lx"):
|
||||
elif device_class == DEVICE_CLASS_ILLUMINANCE or unit in ("lm", LIGHT_LUX):
|
||||
a_type = "LightSensor"
|
||||
|
||||
elif state.domain == "switch":
|
||||
|
@ -7,6 +7,7 @@ from homeassistant.const import (
|
||||
DEVICE_CLASS_HUMIDITY,
|
||||
DEVICE_CLASS_ILLUMINANCE,
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
TEMP_CELSIUS,
|
||||
)
|
||||
@ -19,8 +20,6 @@ TEMP_C_ICON = "mdi:thermometer"
|
||||
BRIGHTNESS_ICON = "mdi:brightness-6"
|
||||
CO2_ICON = "mdi:molecule-co2"
|
||||
|
||||
UNIT_LUX = "lux"
|
||||
|
||||
|
||||
class HomeKitHumiditySensor(HomeKitEntity):
|
||||
"""Representation of a Homekit humidity sensor."""
|
||||
@ -113,7 +112,7 @@ class HomeKitLightSensor(HomeKitEntity):
|
||||
@property
|
||||
def unit_of_measurement(self):
|
||||
"""Return units for the sensor."""
|
||||
return UNIT_LUX
|
||||
return LIGHT_LUX
|
||||
|
||||
@property
|
||||
def state(self):
|
||||
|
@ -10,6 +10,7 @@ from homeassistant.const import (
|
||||
ENERGY_WATT_HOUR,
|
||||
FREQUENCY_HERTZ,
|
||||
LENGTH_MILLIMETERS,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
PRESSURE_HPA,
|
||||
@ -50,12 +51,12 @@ HM_UNIT_HA_CAST = {
|
||||
"ENERGY_COUNTER": ENERGY_WATT_HOUR,
|
||||
"GAS_POWER": VOLUME_CUBIC_METERS,
|
||||
"GAS_ENERGY_COUNTER": VOLUME_CUBIC_METERS,
|
||||
"LUX": "lx",
|
||||
"ILLUMINATION": "lx",
|
||||
"CURRENT_ILLUMINATION": "lx",
|
||||
"AVERAGE_ILLUMINATION": "lx",
|
||||
"LOWEST_ILLUMINATION": "lx",
|
||||
"HIGHEST_ILLUMINATION": "lx",
|
||||
"LUX": LIGHT_LUX,
|
||||
"ILLUMINATION": LIGHT_LUX,
|
||||
"CURRENT_ILLUMINATION": LIGHT_LUX,
|
||||
"AVERAGE_ILLUMINATION": LIGHT_LUX,
|
||||
"LOWEST_ILLUMINATION": LIGHT_LUX,
|
||||
"HIGHEST_ILLUMINATION": LIGHT_LUX,
|
||||
"RAIN_COUNTER": LENGTH_MILLIMETERS,
|
||||
"WIND_SPEED": SPEED_KILOMETERS_PER_HOUR,
|
||||
"WIND_DIRECTION": DEGREE,
|
||||
|
@ -31,6 +31,7 @@ from homeassistant.const import (
|
||||
DEVICE_CLASS_POWER,
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
LENGTH_MILLIMETERS,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
SPEED_KILOMETERS_PER_HOUR,
|
||||
@ -282,7 +283,7 @@ class HomematicipIlluminanceSensor(HomematicipGenericEntity):
|
||||
@property
|
||||
def unit_of_measurement(self) -> str:
|
||||
"""Return the unit this state is expressed in."""
|
||||
return "lx"
|
||||
return LIGHT_LUX
|
||||
|
||||
@property
|
||||
def device_state_attributes(self) -> Dict[str, Any]:
|
||||
|
@ -10,6 +10,7 @@ from homeassistant.const import (
|
||||
DEVICE_CLASS_BATTERY,
|
||||
DEVICE_CLASS_ILLUMINANCE,
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
TEMP_CELSIUS,
|
||||
)
|
||||
@ -41,7 +42,7 @@ class HueLightLevel(GenericHueGaugeSensorEntity):
|
||||
"""The light level sensor entity for a Hue motion sensor device."""
|
||||
|
||||
device_class = DEVICE_CLASS_ILLUMINANCE
|
||||
unit_of_measurement = "lx"
|
||||
unit_of_measurement = LIGHT_LUX
|
||||
|
||||
@property
|
||||
def state(self):
|
||||
|
@ -58,6 +58,7 @@ from homeassistant.const import (
|
||||
LENGTH_METERS,
|
||||
LENGTH_MILES,
|
||||
LENGTH_MILLIMETERS,
|
||||
LIGHT_LUX,
|
||||
MASS_KILOGRAMS,
|
||||
MASS_POUNDS,
|
||||
PERCENTAGE,
|
||||
@ -352,7 +353,7 @@ UOM_FRIENDLY_NAME = {
|
||||
"33": ENERGY_KILO_WATT_HOUR,
|
||||
"34": "liedu",
|
||||
"35": VOLUME_LITERS,
|
||||
"36": "lx",
|
||||
"36": LIGHT_LUX,
|
||||
"37": "mercalli",
|
||||
"38": LENGTH_METERS,
|
||||
"39": f"{VOLUME_CUBIC_METERS}/{TIME_HOURS}",
|
||||
|
@ -17,6 +17,7 @@ from homeassistant.const import (
|
||||
CONF_NAME,
|
||||
CONF_SCAN_INTERVAL,
|
||||
EVENT_HOMEASSISTANT_START,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
TEMP_CELSIUS,
|
||||
TEMP_FAHRENHEIT,
|
||||
@ -53,7 +54,7 @@ ATTR_LAST_SUCCESSFUL_UPDATE = "last_successful_update"
|
||||
# Sensor types are defined like: Name, units, icon
|
||||
SENSOR_TYPES = {
|
||||
"temperature": ["Temperature", TEMP_CELSIUS, "mdi:thermometer"],
|
||||
"light": ["Light intensity", "lx", "mdi:white-balance-sunny"],
|
||||
"light": ["Light intensity", LIGHT_LUX, "mdi:white-balance-sunny"],
|
||||
"moisture": ["Moisture", PERCENTAGE, "mdi:water-percent"],
|
||||
"conductivity": ["Conductivity", CONDUCTIVITY, "mdi:flash-circle"],
|
||||
"battery": ["Battery", PERCENTAGE, "mdi:battery-charging"],
|
||||
|
@ -9,6 +9,7 @@ from homeassistant.const import (
|
||||
ENERGY_KILO_WATT_HOUR,
|
||||
FREQUENCY_HERTZ,
|
||||
LENGTH_METERS,
|
||||
LIGHT_LUX,
|
||||
MASS_KILOGRAMS,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
@ -41,7 +42,7 @@ SENSORS = {
|
||||
"V_LEVEL": {
|
||||
"S_SOUND": ["dB", "mdi:volume-high"],
|
||||
"S_VIBRATION": [FREQUENCY_HERTZ, None],
|
||||
"S_LIGHT_LEVEL": ["lx", "mdi:white-balance-sunny"],
|
||||
"S_LIGHT_LEVEL": [LIGHT_LUX, "mdi:white-balance-sunny"],
|
||||
},
|
||||
"V_VOLTAGE": [VOLT, "mdi:flash"],
|
||||
"V_CURRENT": [ELECTRICAL_CURRENT_AMPERE, "mdi:flash-auto"],
|
||||
|
@ -12,6 +12,7 @@ from homeassistant.const import (
|
||||
CONF_HOST,
|
||||
CONF_PORT,
|
||||
ELECTRICAL_CURRENT_AMPERE,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
TEMP_CELSIUS,
|
||||
VOLT,
|
||||
@ -70,7 +71,7 @@ SENSOR_TYPES = {
|
||||
"humidity": ["humidity", PERCENTAGE],
|
||||
"humidity_raw": ["humidity", PERCENTAGE],
|
||||
"pressure": ["pressure", "mb"],
|
||||
"illuminance": ["illuminance", "lux"],
|
||||
"illuminance": ["illuminance", LIGHT_LUX],
|
||||
"wetness_0": ["wetness", PERCENTAGE],
|
||||
"wetness_1": ["wetness", PERCENTAGE],
|
||||
"wetness_2": ["wetness", PERCENTAGE],
|
||||
|
@ -12,6 +12,7 @@ from homeassistant.const import (
|
||||
ATTR_UNIT_OF_MEASUREMENT,
|
||||
CONDUCTIVITY,
|
||||
CONF_SENSORS,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
STATE_OK,
|
||||
STATE_PROBLEM,
|
||||
@ -153,7 +154,7 @@ class Plant(Entity):
|
||||
"max": CONF_MAX_CONDUCTIVITY,
|
||||
},
|
||||
READING_BRIGHTNESS: {
|
||||
ATTR_UNIT_OF_MEASUREMENT: "lux",
|
||||
ATTR_UNIT_OF_MEASUREMENT: LIGHT_LUX,
|
||||
"min": CONF_MIN_BRIGHTNESS,
|
||||
"max": CONF_MAX_BRIGHTNESS,
|
||||
},
|
||||
|
@ -5,6 +5,7 @@ from homeassistant.const import (
|
||||
DEGREE,
|
||||
ELECTRICAL_CURRENT_AMPERE,
|
||||
ENERGY_KILO_WATT_HOUR,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
)
|
||||
@ -116,7 +117,7 @@ SENSORS = {
|
||||
),
|
||||
("sensor", "luminosity"): BlockAttributeDescription(
|
||||
name="Luminosity",
|
||||
unit="lx",
|
||||
unit=LIGHT_LUX,
|
||||
device_class=sensor.DEVICE_CLASS_ILLUMINANCE,
|
||||
),
|
||||
("sensor", "tilt"): BlockAttributeDescription(name="tilt", unit=DEGREE),
|
||||
|
@ -13,6 +13,7 @@ from homeassistant.const import (
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
DEVICE_CLASS_TIMESTAMP,
|
||||
ENERGY_KILO_WATT_HOUR,
|
||||
LIGHT_LUX,
|
||||
MASS_KILOGRAMS,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
@ -116,7 +117,7 @@ CAPABILITY_TO_SENSORS = {
|
||||
)
|
||||
],
|
||||
Capability.illuminance_measurement: [
|
||||
Map(Attribute.illuminance, "Illuminance", "lux", DEVICE_CLASS_ILLUMINANCE)
|
||||
Map(Attribute.illuminance, "Illuminance", LIGHT_LUX, DEVICE_CLASS_ILLUMINANCE)
|
||||
],
|
||||
Capability.infrared_level: [
|
||||
Map(Attribute.infrared_level, "Infrared Level", PERCENTAGE, None)
|
||||
|
@ -2,7 +2,7 @@
|
||||
from datetime import timedelta
|
||||
import logging
|
||||
|
||||
from homeassistant.const import ATTR_BATTERY_LEVEL, PERCENTAGE, TEMP_CELSIUS
|
||||
from homeassistant.const import ATTR_BATTERY_LEVEL, LIGHT_LUX, PERCENTAGE, TEMP_CELSIUS
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
||||
from . import DOMAIN as TAHOMA_DOMAIN, TahomaDevice
|
||||
@ -49,7 +49,7 @@ class TahomaSensor(TahomaDevice, Entity):
|
||||
if self.tahoma_device.type == "io:SomfyBasicContactIOSystemSensor":
|
||||
return None
|
||||
if self.tahoma_device.type == "io:LightIOSystemSensor":
|
||||
return "lx"
|
||||
return LIGHT_LUX
|
||||
if self.tahoma_device.type == "Humidity Sensor":
|
||||
return PERCENTAGE
|
||||
if self.tahoma_device.type == "rtds:RTDSContactSensor":
|
||||
|
@ -7,6 +7,7 @@ from homeassistant.const import (
|
||||
DEVICE_CLASS_ILLUMINANCE,
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
LENGTH_MILLIMETERS,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
SPEED_METERS_PER_SECOND,
|
||||
@ -53,7 +54,7 @@ SENSOR_TYPES = {
|
||||
SENSOR_TYPE_WINDGUST: ["Wind gust", SPEED_METERS_PER_SECOND, "", None],
|
||||
SENSOR_TYPE_UV: ["UV", UV_INDEX, "", None],
|
||||
SENSOR_TYPE_WATT: ["Power", POWER_WATT, "", None],
|
||||
SENSOR_TYPE_LUMINANCE: ["Luminance", "lx", None, DEVICE_CLASS_ILLUMINANCE],
|
||||
SENSOR_TYPE_LUMINANCE: ["Luminance", LIGHT_LUX, None, DEVICE_CLASS_ILLUMINANCE],
|
||||
SENSOR_TYPE_DEW_POINT: ["Dew Point", TEMP_CELSIUS, None, DEVICE_CLASS_TEMPERATURE],
|
||||
SENSOR_TYPE_BAROMETRIC_PRESSURE: ["Barometric Pressure", "kPa", "", None],
|
||||
}
|
||||
|
@ -7,7 +7,7 @@ import pyvera as veraApi
|
||||
|
||||
from homeassistant.components.sensor import DOMAIN as PLATFORM_DOMAIN, ENTITY_ID_FORMAT
|
||||
from homeassistant.config_entries import ConfigEntry
|
||||
from homeassistant.const import PERCENTAGE, TEMP_CELSIUS, TEMP_FAHRENHEIT
|
||||
from homeassistant.const import LIGHT_LUX, PERCENTAGE, TEMP_CELSIUS, TEMP_FAHRENHEIT
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.util import convert
|
||||
@ -60,7 +60,7 @@ class VeraSensor(VeraDevice[veraApi.VeraSensor], Entity):
|
||||
if self.vera_device.category == veraApi.CATEGORY_TEMPERATURE_SENSOR:
|
||||
return self._temperature_units
|
||||
if self.vera_device.category == veraApi.CATEGORY_LIGHT_SENSOR:
|
||||
return "lx"
|
||||
return LIGHT_LUX
|
||||
if self.vera_device.category == veraApi.CATEGORY_UV_SENSOR:
|
||||
return "level"
|
||||
if self.vera_device.category == veraApi.CATEGORY_HUMIDITY_SENSOR:
|
||||
|
@ -9,6 +9,7 @@ from homeassistant.const import (
|
||||
DEVICE_CLASS_POWER,
|
||||
DEVICE_CLASS_PRESSURE,
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
PRESSURE_HPA,
|
||||
@ -24,7 +25,7 @@ SENSOR_TYPES = {
|
||||
"temperature": [TEMP_CELSIUS, None, DEVICE_CLASS_TEMPERATURE],
|
||||
"humidity": [PERCENTAGE, None, DEVICE_CLASS_HUMIDITY],
|
||||
"illumination": ["lm", None, DEVICE_CLASS_ILLUMINANCE],
|
||||
"lux": ["lx", None, DEVICE_CLASS_ILLUMINANCE],
|
||||
"lux": [LIGHT_LUX, None, DEVICE_CLASS_ILLUMINANCE],
|
||||
"pressure": [PRESSURE_HPA, None, DEVICE_CLASS_PRESSURE],
|
||||
"bed_activity": ["μm", None, None],
|
||||
"load_power": [POWER_WATT, None, DEVICE_CLASS_POWER],
|
||||
|
@ -21,6 +21,7 @@ from homeassistant.const import (
|
||||
DEVICE_CLASS_ILLUMINANCE,
|
||||
DEVICE_CLASS_PRESSURE,
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
PRESSURE_HPA,
|
||||
TEMP_CELSIUS,
|
||||
@ -307,7 +308,7 @@ class XiaomiGatewayIlluminanceSensor(Entity):
|
||||
@property
|
||||
def unit_of_measurement(self):
|
||||
"""Return the unit of measurement of this entity."""
|
||||
return "lux"
|
||||
return LIGHT_LUX
|
||||
|
||||
@property
|
||||
def device_class(self):
|
||||
|
@ -14,6 +14,7 @@ from homeassistant.components.sensor import (
|
||||
)
|
||||
from homeassistant.const import (
|
||||
ATTR_UNIT_OF_MEASUREMENT,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
PRESSURE_HPA,
|
||||
@ -235,7 +236,7 @@ class Illuminance(Sensor):
|
||||
|
||||
SENSOR_ATTR = "measured_value"
|
||||
_device_class = DEVICE_CLASS_ILLUMINANCE
|
||||
_unit = "lx"
|
||||
_unit = LIGHT_LUX
|
||||
|
||||
@staticmethod
|
||||
def formatter(value):
|
||||
|
@ -449,6 +449,9 @@ MASS_POUNDS: str = "lb"
|
||||
# Conductivity units
|
||||
CONDUCTIVITY: str = f"µS/{LENGTH_CENTIMETERS}"
|
||||
|
||||
# Light units
|
||||
LIGHT_LUX: str = "lx"
|
||||
|
||||
# UV Index units
|
||||
UV_INDEX: str = "UV index"
|
||||
|
||||
|
@ -20,6 +20,7 @@ from homeassistant.const import (
|
||||
CONCENTRATION_MICROGRAMS_PER_CUBIC_METER,
|
||||
CONCENTRATION_PARTS_PER_BILLION,
|
||||
CONCENTRATION_PARTS_PER_MILLION,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
STATE_UNAVAILABLE,
|
||||
TEMP_CELSIUS,
|
||||
@ -232,7 +233,7 @@ async def test_awair_mint_sensors(hass):
|
||||
"sensor.living_room_illuminance",
|
||||
f"{AWAIR_UUID}_{SENSOR_TYPES[API_LUX][ATTR_UNIQUE_ID]}",
|
||||
"441.7",
|
||||
{ATTR_UNIT_OF_MEASUREMENT: "lx"},
|
||||
{ATTR_UNIT_OF_MEASUREMENT: LIGHT_LUX},
|
||||
)
|
||||
|
||||
# The Mint does not have a CO2 sensor.
|
||||
@ -290,7 +291,7 @@ async def test_awair_omni_sensors(hass):
|
||||
"sensor.living_room_illuminance",
|
||||
f"{AWAIR_UUID}_{SENSOR_TYPES[API_LUX][ATTR_UNIQUE_ID]}",
|
||||
"804.9",
|
||||
{ATTR_UNIT_OF_MEASUREMENT: "lx"},
|
||||
{ATTR_UNIT_OF_MEASUREMENT: LIGHT_LUX},
|
||||
)
|
||||
|
||||
|
||||
|
@ -24,6 +24,7 @@ from homeassistant.const import (
|
||||
ATTR_UNIT_OF_MEASUREMENT,
|
||||
CONF_NAME,
|
||||
CONF_TYPE,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
TEMP_CELSIUS,
|
||||
TEMP_FAHRENHEIT,
|
||||
@ -190,7 +191,7 @@ def test_type_media_player(type_name, entity_id, state, attrs, config):
|
||||
),
|
||||
("LightSensor", "sensor.light", "900", {ATTR_DEVICE_CLASS: "illuminance"}),
|
||||
("LightSensor", "sensor.light", "900", {ATTR_UNIT_OF_MEASUREMENT: "lm"}),
|
||||
("LightSensor", "sensor.light", "900", {ATTR_UNIT_OF_MEASUREMENT: "lx"}),
|
||||
("LightSensor", "sensor.light", "900", {ATTR_UNIT_OF_MEASUREMENT: LIGHT_LUX}),
|
||||
(
|
||||
"TemperatureSensor",
|
||||
"sensor.temperature",
|
||||
|
@ -25,6 +25,7 @@ from homeassistant.components.sensor import DOMAIN as SENSOR_DOMAIN
|
||||
from homeassistant.const import (
|
||||
ATTR_UNIT_OF_MEASUREMENT,
|
||||
LENGTH_MILLIMETERS,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
SPEED_KILOMETERS_PER_HOUR,
|
||||
@ -248,7 +249,7 @@ async def test_hmip_illuminance_sensor1(hass, default_mock_hap_factory):
|
||||
)
|
||||
|
||||
assert ha_state.state == "4890.0"
|
||||
assert ha_state.attributes[ATTR_UNIT_OF_MEASUREMENT] == "lx"
|
||||
assert ha_state.attributes[ATTR_UNIT_OF_MEASUREMENT] == LIGHT_LUX
|
||||
await async_manipulate_test_data(hass, hmip_device, "illumination", 231)
|
||||
ha_state = hass.states.get(entity_id)
|
||||
assert ha_state.state == "231"
|
||||
@ -268,7 +269,7 @@ async def test_hmip_illuminance_sensor2(hass, default_mock_hap_factory):
|
||||
)
|
||||
|
||||
assert ha_state.state == "807.3"
|
||||
assert ha_state.attributes[ATTR_UNIT_OF_MEASUREMENT] == "lx"
|
||||
assert ha_state.attributes[ATTR_UNIT_OF_MEASUREMENT] == LIGHT_LUX
|
||||
await async_manipulate_test_data(hass, hmip_device, "averageIllumination", 231)
|
||||
ha_state = hass.states.get(entity_id)
|
||||
assert ha_state.state == "231"
|
||||
|
@ -8,6 +8,7 @@ import homeassistant.components.plant as plant
|
||||
from homeassistant.const import (
|
||||
ATTR_UNIT_OF_MEASUREMENT,
|
||||
CONDUCTIVITY,
|
||||
LIGHT_LUX,
|
||||
STATE_OK,
|
||||
STATE_PROBLEM,
|
||||
STATE_UNAVAILABLE,
|
||||
@ -187,17 +188,17 @@ async def test_brightness_history(hass):
|
||||
assert await async_setup_component(
|
||||
hass, plant.DOMAIN, {plant.DOMAIN: {plant_name: GOOD_CONFIG}}
|
||||
)
|
||||
hass.states.async_set(BRIGHTNESS_ENTITY, 100, {ATTR_UNIT_OF_MEASUREMENT: "lux"})
|
||||
hass.states.async_set(BRIGHTNESS_ENTITY, 100, {ATTR_UNIT_OF_MEASUREMENT: LIGHT_LUX})
|
||||
await hass.async_block_till_done()
|
||||
state = hass.states.get(f"plant.{plant_name}")
|
||||
assert STATE_PROBLEM == state.state
|
||||
|
||||
hass.states.async_set(BRIGHTNESS_ENTITY, 600, {ATTR_UNIT_OF_MEASUREMENT: "lux"})
|
||||
hass.states.async_set(BRIGHTNESS_ENTITY, 600, {ATTR_UNIT_OF_MEASUREMENT: LIGHT_LUX})
|
||||
await hass.async_block_till_done()
|
||||
state = hass.states.get(f"plant.{plant_name}")
|
||||
assert STATE_OK == state.state
|
||||
|
||||
hass.states.async_set(BRIGHTNESS_ENTITY, 100, {ATTR_UNIT_OF_MEASUREMENT: "lux"})
|
||||
hass.states.async_set(BRIGHTNESS_ENTITY, 100, {ATTR_UNIT_OF_MEASUREMENT: LIGHT_LUX})
|
||||
await hass.async_block_till_done()
|
||||
state = hass.states.get(f"plant.{plant_name}")
|
||||
assert STATE_OK == state.state
|
||||
|
@ -3,7 +3,7 @@ from typing import Any, Callable, Tuple
|
||||
|
||||
import pyvera as pv
|
||||
|
||||
from homeassistant.const import ATTR_UNIT_OF_MEASUREMENT, PERCENTAGE
|
||||
from homeassistant.const import ATTR_UNIT_OF_MEASUREMENT, LIGHT_LUX, PERCENTAGE
|
||||
from homeassistant.core import HomeAssistant
|
||||
|
||||
from .common import ComponentFactory, new_simple_controller_config
|
||||
@ -90,7 +90,7 @@ async def test_light_sensor(
|
||||
category=pv.CATEGORY_LIGHT_SENSOR,
|
||||
class_property="light",
|
||||
assert_states=(("12", "12"), ("13", "13")),
|
||||
assert_unit_of_measurement="lx",
|
||||
assert_unit_of_measurement=LIGHT_LUX,
|
||||
)
|
||||
|
||||
|
||||
|
@ -14,6 +14,7 @@ from homeassistant.const import (
|
||||
CONF_UNIT_SYSTEM,
|
||||
CONF_UNIT_SYSTEM_IMPERIAL,
|
||||
CONF_UNIT_SYSTEM_METRIC,
|
||||
LIGHT_LUX,
|
||||
PERCENTAGE,
|
||||
POWER_WATT,
|
||||
PRESSURE_HPA,
|
||||
@ -58,7 +59,7 @@ async def async_test_pressure(hass, cluster, entity_id):
|
||||
async def async_test_illuminance(hass, cluster, entity_id):
|
||||
"""Test illuminance sensor."""
|
||||
await send_attributes_report(hass, cluster, {1: 1, 0: 10, 2: 20})
|
||||
assert_state(hass, entity_id, "1.0", "lx")
|
||||
assert_state(hass, entity_id, "1.0", LIGHT_LUX)
|
||||
|
||||
|
||||
async def async_test_metering(hass, cluster, entity_id):
|
||||
|
Loading…
x
Reference in New Issue
Block a user