mirror of
https://github.com/home-assistant/core.git
synced 2025-07-21 04:07:08 +00:00
Add missing AEMET wind gust speed (#100157)
This commit is contained in:
parent
80b03b4acb
commit
da13afbd3c
@ -30,6 +30,7 @@ from .const import (
|
|||||||
ATTR_API_FORECAST_TEMP_LOW,
|
ATTR_API_FORECAST_TEMP_LOW,
|
||||||
ATTR_API_FORECAST_TIME,
|
ATTR_API_FORECAST_TIME,
|
||||||
ATTR_API_FORECAST_WIND_BEARING,
|
ATTR_API_FORECAST_WIND_BEARING,
|
||||||
|
ATTR_API_FORECAST_WIND_MAX_SPEED,
|
||||||
ATTR_API_FORECAST_WIND_SPEED,
|
ATTR_API_FORECAST_WIND_SPEED,
|
||||||
ATTR_API_HUMIDITY,
|
ATTR_API_HUMIDITY,
|
||||||
ATTR_API_PRESSURE,
|
ATTR_API_PRESSURE,
|
||||||
@ -99,6 +100,12 @@ FORECAST_SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
|
|||||||
name="Wind bearing",
|
name="Wind bearing",
|
||||||
native_unit_of_measurement=DEGREE,
|
native_unit_of_measurement=DEGREE,
|
||||||
),
|
),
|
||||||
|
SensorEntityDescription(
|
||||||
|
key=ATTR_API_FORECAST_WIND_MAX_SPEED,
|
||||||
|
name="Wind max speed",
|
||||||
|
native_unit_of_measurement=UnitOfSpeed.KILOMETERS_PER_HOUR,
|
||||||
|
device_class=SensorDeviceClass.WIND_SPEED,
|
||||||
|
),
|
||||||
SensorEntityDescription(
|
SensorEntityDescription(
|
||||||
key=ATTR_API_FORECAST_WIND_SPEED,
|
key=ATTR_API_FORECAST_WIND_SPEED,
|
||||||
name="Wind speed",
|
name="Wind speed",
|
||||||
@ -206,13 +213,14 @@ WEATHER_SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
|
|||||||
name="Wind max speed",
|
name="Wind max speed",
|
||||||
native_unit_of_measurement=UnitOfSpeed.KILOMETERS_PER_HOUR,
|
native_unit_of_measurement=UnitOfSpeed.KILOMETERS_PER_HOUR,
|
||||||
device_class=SensorDeviceClass.WIND_SPEED,
|
device_class=SensorDeviceClass.WIND_SPEED,
|
||||||
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
SensorEntityDescription(
|
SensorEntityDescription(
|
||||||
key=ATTR_API_WIND_SPEED,
|
key=ATTR_API_WIND_SPEED,
|
||||||
name="Wind speed",
|
name="Wind speed",
|
||||||
native_unit_of_measurement=UnitOfSpeed.KILOMETERS_PER_HOUR,
|
native_unit_of_measurement=UnitOfSpeed.KILOMETERS_PER_HOUR,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
|
||||||
device_class=SensorDeviceClass.WIND_SPEED,
|
device_class=SensorDeviceClass.WIND_SPEED,
|
||||||
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -42,6 +42,7 @@ from .const import (
|
|||||||
ATTR_API_PRESSURE,
|
ATTR_API_PRESSURE,
|
||||||
ATTR_API_TEMPERATURE,
|
ATTR_API_TEMPERATURE,
|
||||||
ATTR_API_WIND_BEARING,
|
ATTR_API_WIND_BEARING,
|
||||||
|
ATTR_API_WIND_MAX_SPEED,
|
||||||
ATTR_API_WIND_SPEED,
|
ATTR_API_WIND_SPEED,
|
||||||
ATTRIBUTION,
|
ATTRIBUTION,
|
||||||
DOMAIN,
|
DOMAIN,
|
||||||
@ -193,6 +194,11 @@ class AemetWeather(SingleCoordinatorWeatherEntity[WeatherUpdateCoordinator]):
|
|||||||
"""Return the wind bearing."""
|
"""Return the wind bearing."""
|
||||||
return self.coordinator.data[ATTR_API_WIND_BEARING]
|
return self.coordinator.data[ATTR_API_WIND_BEARING]
|
||||||
|
|
||||||
|
@property
|
||||||
|
def native_wind_gust_speed(self):
|
||||||
|
"""Return the wind gust speed in native units."""
|
||||||
|
return self.coordinator.data[ATTR_API_WIND_MAX_SPEED]
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def native_wind_speed(self):
|
def native_wind_speed(self):
|
||||||
"""Return the wind speed."""
|
"""Return the wind speed."""
|
||||||
|
@ -66,6 +66,9 @@ async def test_aemet_forecast_create_sensors(
|
|||||||
state = hass.states.get("sensor.aemet_hourly_forecast_wind_bearing")
|
state = hass.states.get("sensor.aemet_hourly_forecast_wind_bearing")
|
||||||
assert state is None
|
assert state is None
|
||||||
|
|
||||||
|
state = hass.states.get("sensor.aemet_hourly_forecast_wind_max_speed")
|
||||||
|
assert state is None
|
||||||
|
|
||||||
state = hass.states.get("sensor.aemet_hourly_forecast_wind_speed")
|
state = hass.states.get("sensor.aemet_hourly_forecast_wind_speed")
|
||||||
assert state is None
|
assert state is None
|
||||||
|
|
||||||
|
@ -26,6 +26,7 @@ from homeassistant.components.weather import (
|
|||||||
ATTR_WEATHER_PRESSURE,
|
ATTR_WEATHER_PRESSURE,
|
||||||
ATTR_WEATHER_TEMPERATURE,
|
ATTR_WEATHER_TEMPERATURE,
|
||||||
ATTR_WEATHER_WIND_BEARING,
|
ATTR_WEATHER_WIND_BEARING,
|
||||||
|
ATTR_WEATHER_WIND_GUST_SPEED,
|
||||||
ATTR_WEATHER_WIND_SPEED,
|
ATTR_WEATHER_WIND_SPEED,
|
||||||
DOMAIN as WEATHER_DOMAIN,
|
DOMAIN as WEATHER_DOMAIN,
|
||||||
SERVICE_GET_FORECAST,
|
SERVICE_GET_FORECAST,
|
||||||
@ -58,6 +59,7 @@ async def test_aemet_weather(
|
|||||||
assert state.attributes.get(ATTR_WEATHER_PRESSURE) == 1004.4 # 100440.0 Pa -> hPa
|
assert state.attributes.get(ATTR_WEATHER_PRESSURE) == 1004.4 # 100440.0 Pa -> hPa
|
||||||
assert state.attributes.get(ATTR_WEATHER_TEMPERATURE) == -0.7
|
assert state.attributes.get(ATTR_WEATHER_TEMPERATURE) == -0.7
|
||||||
assert state.attributes.get(ATTR_WEATHER_WIND_BEARING) == 90.0
|
assert state.attributes.get(ATTR_WEATHER_WIND_BEARING) == 90.0
|
||||||
|
assert state.attributes.get(ATTR_WEATHER_WIND_GUST_SPEED) == 24.0
|
||||||
assert state.attributes.get(ATTR_WEATHER_WIND_SPEED) == 15.0 # 4.17 m/s -> km/h
|
assert state.attributes.get(ATTR_WEATHER_WIND_SPEED) == 15.0 # 4.17 m/s -> km/h
|
||||||
forecast = state.attributes.get(ATTR_FORECAST)[0]
|
forecast = state.attributes.get(ATTR_FORECAST)[0]
|
||||||
assert forecast.get(ATTR_FORECAST_CONDITION) == ATTR_CONDITION_PARTLYCLOUDY
|
assert forecast.get(ATTR_FORECAST_CONDITION) == ATTR_CONDITION_PARTLYCLOUDY
|
||||||
@ -101,6 +103,7 @@ async def test_aemet_weather_legacy(
|
|||||||
assert state.attributes.get(ATTR_WEATHER_PRESSURE) == 1004.4 # 100440.0 Pa -> hPa
|
assert state.attributes.get(ATTR_WEATHER_PRESSURE) == 1004.4 # 100440.0 Pa -> hPa
|
||||||
assert state.attributes.get(ATTR_WEATHER_TEMPERATURE) == -0.7
|
assert state.attributes.get(ATTR_WEATHER_TEMPERATURE) == -0.7
|
||||||
assert state.attributes.get(ATTR_WEATHER_WIND_BEARING) == 90.0
|
assert state.attributes.get(ATTR_WEATHER_WIND_BEARING) == 90.0
|
||||||
|
assert state.attributes.get(ATTR_WEATHER_WIND_GUST_SPEED) == 24.0
|
||||||
assert state.attributes.get(ATTR_WEATHER_WIND_SPEED) == 15.0 # 4.17 m/s -> km/h
|
assert state.attributes.get(ATTR_WEATHER_WIND_SPEED) == 15.0 # 4.17 m/s -> km/h
|
||||||
forecast = state.attributes.get(ATTR_FORECAST)[0]
|
forecast = state.attributes.get(ATTR_FORECAST)[0]
|
||||||
assert forecast.get(ATTR_FORECAST_CONDITION) == ATTR_CONDITION_PARTLYCLOUDY
|
assert forecast.get(ATTR_FORECAST_CONDITION) == ATTR_CONDITION_PARTLYCLOUDY
|
||||||
|
Loading…
x
Reference in New Issue
Block a user