* Add default device class display precision for Sensor
* Renaming, docstrings, cleanup
* Simplify units list
* Fix tests
* Fix missing precision when suggested is specified
* Update snapshots
* Fix when unit of measurement is not valid
* Fix tests
* Fix deprecated unit usage
* Fix goalzero tests
The sensor native_value method was accessing the data dict and trowing,
since the mock did not have any data for the sensors.
Since now the precision is always specified (it was missing for those
sensors), the throw was hitting async_update_entity_options in _update_suggested_precision.
Previously, async_update_entity_options was not called since it had no
precision.
* Fix metoffice
* Fix smartthings
* Add default sensor data for Tesla Wall Connector tests
* Update snapshots
* Revert spaces
* Update smartthings snapshots
* Add missing sensor mock for tesla wall connector
* Address review comments
* Add doc comment
* Add cap to doc comment
* Update comment
* Update snapshots
* Update comment
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
* Add Fan Speed support to Nexia integration
Adds a new "set_fan_speed" service to the Nexia integration, to allow
setting speed of the air-handler/blower fans.
* Add Fan Speed to Nexia Tests
* Remove mistakenly-added changes to Climate tests
A previous version of this change made modifications to the base
Climate entity, but that approach was later abandonded. These changes
to Climate tests were left over from that, and should never have been
included.
* Add Fan Speed Number Entity
* Remove Set Fan Speed Service
* Remove fan_speed attribute
The fan_speed attribute is not necessary with the new Number entity.
* Address reviewer feedback
Rename test function to reflect fact that fan speed entities are
entities, and not sensors.
Added missing typing to variables.
Sorted list of platforms
* Add test_set_fan_speed
Also adds new test fixture for mock response to API call
* Update homeassistant/components/nexia/number.py
* Name change
---------
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Fix not retrying on connection reset during nexia config entry setup
fixes
```
2023-05-26 00:15:39.129 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Alexander for nexia
Traceback (most recent call last):
File "/usr/local/lib/python3.11/site-packages/aiohttp/client.py", line 558, in _request
resp = await req.send(conn)
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/aiohttp/client_reqrep.py", line 670, in send
await writer.write_headers(status_line, self.headers)
File "/usr/local/lib/python3.11/site-packages/aiohttp/http_writer.py", line 130, in write_headers
self._write(buf)
File "/usr/local/lib/python3.11/site-packages/aiohttp/http_writer.py", line 75, in _write
raise ConnectionResetError("Cannot write to closing transport")
ConnectionResetError: Cannot write to closing transport
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 387, in async_setup
result = await component.async_setup_entry(hass, self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/nexia/__init__.py", line 47, in async_setup_entry
await nexia_home.login()
File "/usr/local/lib/python3.11/site-packages/nexia/home.py", line 385, in login
request = await self.post_url(self.API_MOBILE_ACCOUNTS_SIGN_IN_URL, payload)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/nexia/home.py", line 157, in post_url
response: aiohttp.ClientResponse = await self.session.post(
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/aiohttp/client.py", line 572, in _request
raise ClientOSError(*exc.args) from exc
aiohttp.client_exceptions.ClientOSError: Cannot write to closing transport
```
* coverage
These non-standard attributes can already be infered from the dehumidify_setpoint
or humidify_setpoint and took up space in the database every time
any of the values changes
* Convert persistent notification tests to async
* Create/dismiss persistent notifications in exposed functions, not service calls
* Fix notify persistent_notification
* Remove setting up persistent_notification
* Drop more setups
* Empty methods
* Undeprecate sync methods because too big task
* Fix setup clearing notifications
* Fix a bunch of tests
* Fix more tests
* Uno mas
* Test persistent notification events
* Clean up stale comment
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>