* 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
* Add WS command to help reset custom entity_id
* Calculate suggested object id from entity properties
* Fix logic and add additional tests
* Adjust test
* Update folder_watcher test
* Handle current entity id matches the automatic entity id
* Don't store calculated_object_id
* Update snapshots
* Update snapshots
* Update test
* Tweak logic for reusing current entity_id
* Improve test
* Don't assign same entity_id to several entities
* Prioritize custom entity name
* Update snapshots
* Update snapshots
* First try to use snapshot testing for sensors
* Use snapshot testing
* Add ambr files
* Update comment
* Address review comments
* Remove duplicate async init integration call
* Add device test for cases w/o SERIALNO
* Use friendlier snapshot names
* Use * to mandate keyed argument for async_init_integration
* Always pass mock config entry ID
* Fix incorrect ID
* Implement diagnostic platform for APCUPSd
* Put APCUPSd in gold quality scale
* Revert quality scale update
* Use snapshot testing for apcupsd
* Prettify the code