Commit Graph

6521 Commits (fdc965c6b97aedb321f14c8836aca2fb5c885990)

Author SHA1 Message Date
Björn Olsson Jarl e64b8774ec
Rewrite transport_nsw sensor tests to pytest tests (#41169)
* Improve transport_nsw sensor tests.

* patch fix.
2020-10-04 23:10:00 +02:00
J. Nick Koston 51da605b9f
Remove manual rate_limit control directive from templates (#41225)
Increase default rate limit for all states and entire
domain states to one minute

Ensure specifically referenced entities are excluded from
the rate limit
2020-10-04 22:40:04 +02:00
Oren dd26ab6b4e
Rewrite threshold unittest tests to pytest style test functions (#41141)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-04 21:38:21 +02:00
Paulus Schoutsen e2921475e2
Fix flaky huawei test (#41204) 2020-10-04 15:24:07 +02:00
Rob Bierbooms e97792adf0
Refactor dsmr tests (#39724) 2020-10-04 14:27:22 +02:00
Ronan Murray fd065e7aea
Rewite Radarr tests as in pytest style for #40879 (#41145) 2020-10-04 14:08:08 +02:00
Ariana Hlavaty 27dd4ca9b3
Rewrite ring unittest test to pytest (#41151)
For: #40886
2020-10-04 14:05:49 +02:00
Claudio Catterina 6765d395f9
Rewrite aurora tests to pytest style (#41144) 2020-10-04 13:58:16 +02:00
Eliot Wong 9ff8f03322
Rewrite dte_energy_bridge unittest tests to pytest style test functions (#41116) 2020-10-04 13:50:03 +02:00
Franck Nijhof 346be6fc3f
Improve demo fan platform tests (#41123) 2020-10-04 13:49:13 +02:00
Eliot Wong f7696fdb9f
Rewrite simulated unittest tests to pytest style test functions (#41115) 2020-10-04 13:48:47 +02:00
scheric c3ef05a37e
Use common strings in Icloud config flow (#41188) 2020-10-04 13:32:53 +02:00
Abílio Costa 4aacc87425
Indentify IKEA and Phillips motion sensors correctly (#41111) 2020-10-03 19:52:21 -04:00
Guido Schmitz daf3a29ae5
Use references in config flow of devolo_home_control (#40949) 2020-10-03 21:33:33 +02:00
J. Nick Koston 78dfaa72a2
Ensure lights added after group is created have the correct state (#41034) 2020-10-03 21:29:41 +02:00
Spartan-II-117 ed171a885b
Use common Strings for Acmeda Config Flow (#41092) 2020-10-03 21:29:30 +02:00
Franck Nijhof 38d132addd
Fix referenced entity extraction when service call entity contains a template (#41107) 2020-10-03 20:55:59 +02:00
springstan f919646519
Use already configured key in harmony and mikrotik (#41142) 2020-10-03 18:17:24 +02:00
Daniel Hjelseth Høyer 4a1173c3de
Update met config string (#41048)
* update config string met

* typo

* config strings
2020-10-03 15:18:05 +02:00
groot406 20bacb6918
Use reference strings for Zoneminder config flow (#41103) 2020-10-03 15:02:30 +02:00
Spartan-II-117 3208670b61
Use common strings for Mikrotik config flow (#41110) 2020-10-03 14:39:18 +02:00
Jenny 8b30b6b312
Use reference strings for openweathermap (#41055) 2020-10-03 14:11:03 +02:00
Spartan-II-117 4c00ff98ea
Use common Strings for Ambiclimate config flow (#41100) 2020-10-03 13:43:34 +02:00
Julian Engelhardt 473afc4837
Rewrite SQL tests to pytest style (#41016)
* Remove unittests and common mock from SQL component tests

* Switch to async versions of setup_component and block_till_done
2020-10-03 03:42:50 +02:00
Melvin 414633a129
Use references in Neato translation strings (#41009)
* Replace unexpected_error with unknown key in Neato

* Replace string with reference

* Revert the specific language json files back to unexpected_error

* Use reference for already_configured

* Change invalid_credentials to invalid_auth key

* Use reference for invalid_auth

* Use invalid_auth in the neato test

* Replace abort.invalid_credentials with invalid_auth
2020-10-03 02:42:07 +02:00
Chris Talkington 3a266fa116
Rewrite season sensor tests to pytest style (#40918)
* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* fix tests.

* Update sensor.py

* Update test_sensor.py

* fix tests.

* Update sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py
2020-10-03 02:24:29 +02:00
springstan a2c3c33b22
Use core GitHub URL in all files (#41089) 2020-10-03 00:04:11 +02:00
SNoof85 005898a0d9
Use reference strings in Huawei LTE (#41011)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py

* Update strings.json

* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-02 22:43:57 +02:00
Maciej Bieniek d3a0743fea
Use reference strings in Abode (#41004)
* Use translation references

* Suggested change

* Remove unused string

* Rename invalid_credentials key

* Fix invalid_auth in manifest.json file
2020-10-02 21:59:55 +02:00
SNoof85 f654834d34
Use reference strings in Totalconnect (#41047)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-02 21:45:49 +02:00
SNoof85 4ab479d48d
Use reference strings in Bsblan (#41049)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py

* Update strings.json
2020-10-02 21:43:13 +02:00
SNoof85 65611320d4
Use reference strings in Coolmaster (#41066)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-02 21:17:32 +02:00
SNoof85 6a821d6a64
Use reference strings in elgato (#41063)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-02 20:55:54 +02:00
SNoof85 d282694efe
Use reference strings in Dexcom (#41072)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-02 20:48:12 +02:00
Maciej Bieniek bba0bb1bad
Fix the name of the translation key for Brother integration (#41054) 2020-10-02 15:06:28 +02:00
SNoof85 68aafd4d23
Use reference strings in Wled (#40969) 2020-10-02 12:08:22 +02:00
Robert Svensson 552856203b
Clean deCONZ tests to depend less on integration code (#41015) 2020-10-02 11:20:33 +02:00
J. Nick Koston b1ba1a7134
Verify template sensors that reference other template sensors can reload (#41031) 2020-10-02 08:34:33 +02:00
Chris Talkington afc388c55a
Improve patching for nzbget sensor tests (#41032) 2020-10-02 08:32:22 +02:00
Davey Chu aba3cdc7b3
Use references in guardian strings.json (#40987) 2020-10-01 19:16:15 -06:00
J. Nick Koston deedd41d62
Prevent template loop detection from triggering when all templates are self referencing (#41013) 2020-10-01 22:11:11 +02:00
Jason Rebelo cad2304968
Rewrite remember_the_milk tests to pytest style tests (#41002)
*  rewrite remember_the_milk tests to pytest tests

*  rewrite reddit tests to pytest tests

* Revert " rewrite reddit tests to pytest tests"

This reverts commit 7eae35f69a.
Forgot to switch to a new branch 🙈
2020-10-01 21:55:04 +02:00
Davey Chu 4b225a87c5
Use references in airvisual strings.json (#41005) 2020-10-01 13:49:16 -06:00
J. Nick Koston b45215f1d2
Implement template rate_limit directive (#40667) 2020-10-01 21:39:44 +02:00
springstan c7ebfdb403
Use single_instance_allowed for webhook config flows (#40965) 2020-10-01 20:44:13 +02:00
jan iversen 639c864a76
Add test coverage for modbus switch (coil part) (#40696)
* Prepare test code for complex devices.

push entity_id to conftest, to make it common for all devices.

Add device to base_setup.

* Add test coverage for modbus switch (coil part).

* Update .coveragerc

* Update .coveragerc

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2020-10-01 11:00:26 -05:00
tkdrob 6627ffff39
Clean up goalzero (#40817)
* cleanup goalzero code

* more cleanup

* mroe cleanup

* log defined exception to error

* return None if not configured

* return False if not configured
2020-10-01 16:15:24 +02:00
Simone Chemelli 7554c8d6c5
Add missing unit for signal strength (#40436)
* Added missing unit for signal strength

* Added one more unit

* Replaced string with variable

* Fixed wrong import

* Fix import

* Replaced string with variable

* Fixed wrong import

* Apply suggestions from code review

* Black

* Again a fix :-(

* iSort

* iSort after merge

Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
2020-10-01 16:14:29 +02:00
Paulus Schoutsen fb3de7e3e6
Test reloading webhook trigger (#40950) 2020-10-01 13:06:22 +02:00
springstan 1b864aeccc
Use common strings in adguard config flow (#40942) 2020-10-01 12:56:55 +02:00
SNoof85 3195ce5d56
Use of reference strings for Airly config flow (#40946) 2020-10-01 12:28:32 +02:00
On Freund 04f87eedf5
Add context to event trigger (#40932) 2020-10-01 11:59:35 +02:00
SNoof85 0a700f7272
Common strings in Freebox config flow (#40938) 2020-10-01 11:31:43 +02:00
Franck Nijhof 22ba6e06fd
Use direct service calls in demo climate tests instead of climate common (#40934) 2020-10-01 11:22:30 +02:00
Chris Talkington d93141c1a9
Use DataUpdateCoordinator for canary (#40691)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-10-01 10:26:26 +02:00
J. Nick Koston 7285c7806f
Seperate state change tracking from async_track_template_result into async_track_state_change_filtered (#40803) 2020-10-01 10:19:20 +02:00
jjlawren be9ff3bd66
Accept new Plex websocket callback payloads (#40773) 2020-10-01 09:57:45 +02:00
Robert Svensson 9116061262
Add lock support to deCONZ (#40807)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-01 09:50:06 +02:00
Eliot Wong 95d228cace
Rewrite worldclock unittest tests to pytest style test functions (#40922) 2020-10-01 09:42:23 +02:00
Robert Svensson 2922d4675f
Abort deCONZ config flow if no radio hardware is connected (#40811) 2020-10-01 09:23:12 +02:00
Antetokounpo df1e910ac7
Update weather tests to pytest style (#40917) 2020-10-01 09:14:48 +02:00
Eliot Wong ad8ab183cb
Rewrite random unittest tests to pytest style test functions (#40920) 2020-10-01 09:05:44 +02:00
Rob Bierbooms c5041b41c8
Implement config and option flow for rfxtrx integration (#39117)
* Create option flow for Rfxtrx integration (#37982)

* Implement config flow for rfxtrx integration (#39299)

* Add config flow

* Add strings

* Add first series of tests

* Add tests

* Adjust tests according review comments

* Adjust strings

* Add executor for testing connection

* Change ports to dict

* Fix pylint issue

* Adjust tests

* Migrate config entry for rfxtrx integration (#39528)

* Add rfxtrx device connection validation when importing (#39582)

* Implement import connection validation

* Fix binary sensor tests

* Move rfxtrx data

* Fix cover tests

* Fix test init

* Fix light tests

* Fix sensor tests

* Fix switch tests

* Refactor rfxtrx test data

* Fix strings

* Fix check

* Rework device string in test code

* Add option to delete multiple rfxtrx devices (#39625)

* Opt to remove multiple devices

* Fix devices key

* Add tests (phase 1)

* Add tests (phase 2)

* Tweak remove devices test

* Implement device migration function in rfxtrx option flow (#39694)

* Prompt option to replace device

* Revert unwanted changes

* Add replace device function

* WIP replace entities

* Remove device/entities and update config entry

* Fix styling

* Add info

* Add test

* Fix strings

* Refactor building migration map

* Allow migration for all device types

* Add test to migrate control device

* Fixup some names

* Fixup entry names in test code

* Bump pyRFXtrx to 0.26 and deprecate debug config key (#40679)

* Create option flow for Rfxtrx integration (#37982)

* Implement config flow for rfxtrx integration (#39299)

* Add config flow

* Add strings

* Add first series of tests

* Add tests

* Adjust tests according review comments

* Adjust strings

* Add executor for testing connection

* Change ports to dict

* Fix pylint issue

* Adjust tests

* Migrate config entry for rfxtrx integration (#39528)

* Add rfxtrx device connection validation when importing (#39582)

* Implement import connection validation

* Fix binary sensor tests

* Move rfxtrx data

* Fix cover tests

* Fix test init

* Fix light tests

* Fix sensor tests

* Fix switch tests

* Refactor rfxtrx test data

* Fix strings

* Fix check

* Rework device string in test code

* Add option to delete multiple rfxtrx devices (#39625)

* Opt to remove multiple devices

* Fix devices key

* Add tests (phase 1)

* Add tests (phase 2)

* Tweak remove devices test

* Implement device migration function in rfxtrx option flow (#39694)

* Prompt option to replace device

* Revert unwanted changes

* Add replace device function

* WIP replace entities

* Remove device/entities and update config entry

* Fix styling

* Add info

* Add test

* Fix strings

* Refactor building migration map

* Allow migration for all device types

* Add test to migrate control device

* Fixup some names

* Fixup entry names in test code

* Bump version number

* Remove debug key from connect

* Remove debug option from config flow

* Remove debug from tests

* Fix event test

* Add cv.deprecated

* Fix test

* Fix config schema

* Add timeout on connection

* Rework config schema

* Fix schema...again

* Prevent creation of duplicate device in rfxtrx option flow (#40656)
2020-10-01 08:55:57 +02:00
Chris c693d8af14
Discover additional ozw thermostats lacking mode support (#40799)
* Discover more thermostats without mode support

* Add tests
2020-09-30 21:12:44 +02:00
Robert Svensson 9d56d3bb31
Add deCONZ service to clean up orphaned device and entity entries (#40629)
* Add service that can clean up by deCONZ orphaned entries from device and entity registry

* Fix existing tests

* Add new test

* Add some inline comment to the service
2020-09-30 20:11:41 +02:00
J. Nick Koston 2076fc59c4
Remove message and domain from logbook state_changed events (#40070)
These are now handled by the frontend as we move closer
to making the logbook localized.
2020-09-30 11:29:51 -05:00
J. Nick Koston 42ad36e9f8
Switch group to use None for the state unknown case (#40792) 2020-09-30 17:25:50 +02:00
MatthewFlamm ab3909c24f
Disable hourly sensor by default in NWS (#40566) 2020-09-30 16:53:33 +02:00
J. Nick Koston 9ccebdb8d5
Refactor group to extend domains that can be grouped (#40607)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-09-30 09:13:53 -05:00
Maikel Punie 30effb5c8a
Use common strings for velbus config flow (#40660) 2020-09-30 13:53:03 +02:00
Franck Nijhof 27350f41c9
Improve command_line switch tests (#40749) 2020-09-30 13:29:43 +02:00
Mike O'Driscoll fc0344399b
Remove TekSavvy Component, no longer available (#40762)
The TekSavvy API has been removed.
Per [this forum post](https://community.teksavvy.com/discussion/comment/120) on TekSavvy's
support page.
2020-09-30 13:14:41 +02:00
J. Nick Koston d9ba32dc3f
Setup recorder model relationships to avoid calling flush (#40467) 2020-09-30 13:11:43 +02:00
J. Nick Koston aada6a1d88
Fix logbook with empty filter and remove unused code (#40565) 2020-09-30 13:10:11 +02:00
Franck Nijhof 4cce724473
Use direct service calls in flux tests instead of switch common (#40704) 2020-09-30 11:07:51 +02:00
Bram Kragten c6f3352cf8
Use custom app to play camera stream using Google Assistant (#40750) 2020-09-30 10:33:56 +02:00
Samantha a8b68dc4f9
Add Neighbors & Endpoint Names to zha/devices reply (#40748)
* Add Neighbors & Endpoint Names to zha/devices reply.

* Remove unused const

* Add tests & correct const name.

* Change tests to use corresponding enum device_type
2020-09-29 15:25:05 -04:00
MatsNl fe6786aa6a
Update pyatag to 0.3.4.4 (#40720) 2020-09-29 11:32:42 +02:00
Robert Svensson 7e58bfe01d
Add deconz option to disable automatic addition of new devices (#40545)
* Allow disabling automatic additions of new devices from deconz

* Fix black

* Fix review comment

* Remove assertion

* Verify entity registry is empty
2020-09-29 11:07:19 +02:00
Chris Talkington 432133a12a
Add ability to reauth sonarr (#40306)
* add ability to reauth sonarr

* Update config_flow.py

* work on reauth

* Update test_init.py

* Update config_flow.py

* Update strings.json

* Update test_config_flow.py

* Update strings.json

* Update test_config_flow.py

* Update __init__.py

* Update __init__.py

* Update config_flow.py

* Update strings.json

* Update config_flow.py

* Update __init__.py

* Update test_config_flow.py

* Update test_config_flow.py

* Update strings.json

* Update test_config_flow.py

* Update config_flow.py

* Update test_config_flow.py

* Update config_flow.py

* Update strings.json

* Update config_flow.py

* Update test_config_flow.py

* Update test_config_flow.py
2020-09-28 20:15:59 -05:00
Chris Talkington bc89b63fc6
Add switch to control downloads for nzbget (#40673)
* add switch to control downloads for nzbget

* work on switch

* Update test_config_flow.py

* Update test_sensor.py
2020-09-28 20:14:49 -05:00
Alexei Chetroi 47286fbe2a
Refactor permit services to allow joining using install codes (#40652)
* Update zha.permit schema to support install code

* Move install code to core helpers

* QR code converter for enbrighten

* Fix schemas

* Update test for permit service

* Refactor zha.permit to accept install codes

* Test zha.permit from QR code

* Fix regex for Embrighten QR code

* Add regex for Aqara QR codes

* Add Consciot regex for QR code

* Reuse test params for WS tests

* ZHA WS permit command with install code

* Tests for zha.permit WS service

* Refactor zha.permit and zha.remove service to use ATTR_IEEE for the address

* Make pylint happy

* Deprecate only ieee_address param for now
2020-09-28 20:55:08 -04:00
Erik Montnemery e7f832a82f
Add MQTT tag scanner (#40709) 2020-09-28 22:04:27 +02:00
J. Nick Koston e564af0b5b
Improve performance of accessing template state (#40323)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-09-28 10:35:12 -05:00
jjlawren 3596eb39f2
Add support to reauthorize expired Plex tokens (#40469) 2020-09-28 16:14:54 +02:00
Martin Hjelmare eda68f127c
Add rpi_power during onboarding on RPi (#40076) 2020-09-28 16:07:17 +02:00
Jeff Irion 68d75a879b
Fix Android TV 'async_get_media_image' (#40672) 2020-09-28 16:04:08 +02:00
J. Nick Koston a19e10c57a
Add entity glob matching support to history (#40387) 2020-09-28 15:58:55 +02:00
J. Nick Koston e08ee282ab
Abort execution of template renders that overwhelm the system (#40647) 2020-09-28 14:43:22 +02:00
Joakim Sørensen 953f6bad46
Allow non-authenticated calls to supervisor logs during onboarding (#40617) 2020-09-28 10:10:10 +02:00
jan iversen 0ca19133d9
Add tests for modbus binary sensor (#40367)
* Add test coverage of binary sensor.

Update conftest to be generic.

* Pass total config structure to run_base_test.

Simple devices like sensor/switch do only have one entry in the
dict array, whereas e.g. switch have multiple entries.

* Use STATE_ON / _OFF for binary_sensor test.

* Update coveragerc

Only exclude files that uses a third party library.

* Remove modbus/* from coveragerc

* Remove modbus from .coveragerc

* Update .coveragerc

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2020-09-27 20:00:44 -05:00
tkdrob 67a7b28c84
Add Integration for Goal Zero Yeti Power Stations (#39231)
* Add Integration for Goal Zero Yeti Power Stations

* Goal Zero Yeti integration with config flow

* Remove unused entities

* Remove entry from requirements_test_all

* Pylint fix

* Apply suggestions from code review

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Add tests for goalzero integration

* Fix UNIT_PERCENTAGE to PERCENTAGE

* isort PERCENTAGE

* Add tests

* Add en translation

* Fix tests

* bump goalzero to 0.1.1

* fix await

* bump goalzero to 0.1.2

* Update tests/components/goalzero/__init__.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* apply recommended changes

* isort

* bump goalzero to 0.1.4

* apply recommended changes

* apply recommended changes

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: J. Nick Koston <nick@koston.org>
2020-09-27 12:44:21 -05:00
Marcio Granzotto Rodrigues 3fba4274f5
Add authentication support to Nightscout (#40602)
* Add API Key to the Nightscout integration config

* Add tests for nightscout config changes

* Apply suggestions from code review

Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
Co-authored-by: Chris Talkington <chris@talkingtontech.com>

* Update homeassistant/components/nightscout/__init__.py

* Run translations script to fix en.json

Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2020-09-27 10:22:28 -05:00
Franck Nijhof 0e6d54ea60
Rewrite core event tests to pytest tests (#40664) 2020-09-27 15:39:45 +02:00
Robert Svensson 66a8edb11e
deCONZ fix comments from #40265 (#40640)
* Use set not list

* Events are not entities

* Don't await unload_events

* Remove checks of entities content in tests

* List to set comprehension

* Why is it so hard to remember that sets arent parenthesis...
2020-09-27 11:02:45 +02:00
Julius Mittenzwei a19b43a304
Add support for homekit windows (#40635)
Co-authored-by: J. Nick Koston <nick@koston.org>
2020-09-27 00:07:59 -05:00
J. Nick Koston 57b7559832
Ensure all jinja2 errors are trapped and displayed in the developer tools (#40624)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-09-26 17:03:32 -05:00
J. Nick Koston 3261a904da
Reduce the number of template re-renders when we are only counting states (#40272) 2020-09-26 16:29:49 -05:00
Maciej Bieniek b8f837365c
Bump aioshelly library to version 0.3.3 (#40415) 2020-09-26 22:39:02 +02:00
Franck Nijhof 8837ed35cd
Use direct service calls in tests instead of automation common (#40623)
* Use direct service calls in tests instead of automation common

* Remove automation common test helpers
2020-09-26 19:28:26 +02:00
J. Nick Koston 35533407fe
Improve performance of counting and iterating states in templates (#40250)
Co-authored-by: Anders Melchiorsen <amelchio@nogoto.net>
2020-09-26 11:36:47 -05:00
Felipe Martins Diel 2f4aa35ca6
Bump python-broadlink to 0.15.0 (#39228)
* Rename DeviceOfflineError to NetworkTimeoutError

* Bump python-broadlink to 0.15
2020-09-26 10:46:02 -05:00
Rob Bierbooms f6435affe9
Use common strings for somfy config flow (#40594) 2020-09-26 13:30:49 +02:00
Franck Nijhof c011f3fa95
Use direct service calls in light platform tests (#40604) 2020-09-26 13:19:59 +02:00
Franck Nijhof c64eec3238
Add bare hostname as valid known hostname in get_url helper (#40510) 2020-09-26 09:36:03 +02:00
Joakim Sørensen a42736e437
Allow non-authenticated calls to snapshots during onboarding (#40582) 2020-09-26 09:26:02 +02:00
J. Nick Koston b3b9c52df2
Add device info to gogogate2 (#40538) 2020-09-25 22:28:59 -05:00
Robert Svensson 203c556ba3
Improve tracking of existing entities in deconz (#40265)
* Store all entities in dict

* Use stored unique id to select if to create entity or not

* Remove unnecessary init

* Change so same physical sensor doesnt try to create multiple battery sensors
Change so groups get created properly

* Add controls in tests that entities are logged correctly
2020-09-25 22:49:28 +02:00
Franck Nijhof e30acfbfee
Rewrite light component tests to async pytest tests (#40589) 2020-09-25 19:14:25 +02:00
Oliver Acevedo 0c12af347e
Add Omnilogic integration (#40474)
* Scaffold

* Added the en translation

* Modified the name

* Basic functionality for config flow.

* Pulled in enough to validate config flow works.

* Update manifest.json

* initial data polling (water and air temp sensors)

* Adding sensors, debugging update function

* polling updates working

* support for new data format from library

* Updated entity_id, friendly name, conversion for ppm, attributes for hayward display units, MSPSystemID and component systemID

* Fixed errors for PR

* clean up

* Add login exc, check if configured, test login.

* Remove debug print.

* Black formatting, ran isort, update requirements.

* Updated w isort. fix flake8 failures.

* Fix flake8 errors

* Fixed self.attrs to remove invalid self._ values - small change

* Missed on small change - fixing attributes

* Updated naming, updated unit of measure, updated icon, bumped omnilog…

* Updated to fix flake8 issues in __init__.py and config_flow.py

* Updated test_config_flow.py to pass, updated config_flow.py to correct errors in test

* Remove comments in preparation for PR

* update .covezragerc

* Formatting fix

* Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors.

* Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors.

* Added CSAD sensors for pools that have them.

* Added CSAD sensors for pools that have them.

* Fixed CSAD to not create if blank or don't exist, removed broad except usage to pass linting.

* Updated entity naming convention. Fixed linting issues.

* Added device association to the back yard / omnilogic system

* Removed .0 from ppm values when returning imperial values for salt sensor

* Updated to return state = None for water temp when pump is off, handled Chlorinator operatingMode = 2, and added PlatformNotReady check

* Corrected exception from Omnilogic library

* Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors.

* Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors.

* Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors.

* Removed nested_lookup dependency, bumped omnilogic.py to 0.3.8.

* Fixed lint error

* Added logging for sensor creation.

* Fixed linting errors with logging.

* Fixed explicit chaining of raised error. Fixed issue with alarm sensor.

* Fixed manifest.json based on feedback.

* Fixed self.attrs, should_poll, CoordinatorEntity, SCAN_INTERVAL from comments in PR.

* Addressed unique_id, moved data update coordinator, addressed minor other issues from testing

* Created main OmniLogic entity for common items, reworked DataUpdateCoordinator to it's own class.

* Addressed config_schema not used in __init__.py

* Fixed linting issues.

* Addressed several comments, still todo - separate sensor classes.

* Split the Omnilogic Sensors into separate logical classes for simpler logic.

* Fixed snake case lint error for AddAlarms (to add_alarms)

* Addressed config_flow issues from comments.

* Changed addressed ConfigNotReady issue from comments.

* Updated strings.json and generated corrected en.json with translations.

* Updated en.json to standard generated file.

* Added config_flow tests and updated issue with config_flow on cannot_connect

* Added test case for incomplete information entered.

* Compressed logic in the sensor classes to reduce duplication.

* Updated strings.json for polling_interval, added generic exception handling on config flow.

* Removed omnilogic from the .coveragerc omit file.

* Updated test_config_flow to follow recommended pattern.

* Excluded sensor.py from test coverage tests.

* Corected minor issues in test_config_flow from comments

* Fixed linting issues on last commits

* Fixed linting issues.

* Corrected issue when temp state is not available from Omnilogic

* Added omnililogic_common.py from .coveragerc to bypass test coverage check.

* Return false on Login Exception, handle OmniLogicException in config_flow and in tests.

* Handle all exceptions and in config_flow and tests, clarified test naming.

* Broke out test cases per comments.

* Regenerated en.json file.

* Addressed changes from comments in PR.

* Added session and bumped API to 0.4.0, addressed other comments from PR.

* Addressed entitydata (missed earlier).

* Fixed pylint issue

* Added test case for options flow in test_config_flow.py

* Removed super() and used self when calling methods in current class.

* Addressed comments in PR.

* Addressed comments in PR.

* Updated translations file.

* Rewrote data coordinator to output dict for easy searching.

* Updated chlorinator unit when chlorinator is on/off only

* Scaffold

* Added the en translation

* Modified the name

* Basic functionality for config flow.

* Pulled in enough to validate config flow works.

* Update manifest.json

* initial data polling (water and air temp sensors)

* Adding sensors, debugging update function

* polling updates working

* support for new data format from library

* Updated entity_id, friendly name, conversion for ppm, attributes for hayward display units, MSPSystemID and component systemID

* Fixed errors for PR

* clean up

* Add login exc, check if configured, test login.

* Remove debug print.

* Black formatting, ran isort, update requirements.

* Updated w isort. fix flake8 failures.

* Fix flake8 errors

* Fixed self.attrs to remove invalid self._ values - small change

* Missed on small change - fixing attributes

* Updated naming, updated unit of measure, updated icon, bumped omnilog…

* Updated to fix flake8 issues in __init__.py and config_flow.py

* Updated test_config_flow.py to pass, updated config_flow.py to correct errors in test

* Remove comments in preparation for PR

* update .covezragerc

* Formatting fix

* Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors.

* Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors.

* Added CSAD sensors for pools that have them.

* Added CSAD sensors for pools that have them.

* Fixed CSAD to not create if blank or don't exist, removed broad except usage to pass linting.

* Updated entity naming convention. Fixed linting issues.

* Added device association to the back yard / omnilogic system

* Removed .0 from ppm values when returning imperial values for salt sensor

* Updated to return state = None for water temp when pump is off, handled Chlorinator operatingMode = 2, and added PlatformNotReady check

* Corrected exception from Omnilogic library

* Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors.

* Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors.

* Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors.

* Removed nested_lookup dependency, bumped omnilogic.py to 0.3.8.

* Fixed lint error

* Added logging for sensor creation.

* Fixed linting errors with logging.

* Fixed explicit chaining of raised error. Fixed issue with alarm sensor.

* Fixed manifest.json based on feedback.

* Fixed self.attrs, should_poll, CoordinatorEntity, SCAN_INTERVAL from comments in PR.

* Addressed unique_id, moved data update coordinator, addressed minor other issues from testing

* Created main OmniLogic entity for common items, reworked DataUpdateCoordinator to it's own class.

* Addressed config_schema not used in __init__.py

* Fixed linting issues.

* Addressed several comments, still todo - separate sensor classes.

* Split the Omnilogic Sensors into separate logical classes for simpler logic.

* Fixed snake case lint error for AddAlarms (to add_alarms)

* Addressed config_flow issues from comments.

* Changed addressed ConfigNotReady issue from comments.

* Updated strings.json and generated corrected en.json with translations.

* Updated en.json to standard generated file.

* Added config_flow tests and updated issue with config_flow on cannot_connect

* Added test case for incomplete information entered.

* Compressed logic in the sensor classes to reduce duplication.

* Updated strings.json for polling_interval, added generic exception handling on config flow.

* Removed omnilogic from the .coveragerc omit file.

* Updated test_config_flow to follow recommended pattern.

* Excluded sensor.py from test coverage tests.

* Corected minor issues in test_config_flow from comments

* Fixed linting issues on last commits

* Fixed linting issues.

* Corrected issue when temp state is not available from Omnilogic

* Added omnililogic_common.py from .coveragerc to bypass test coverage check.

* Return false on Login Exception, handle OmniLogicException in config_flow and in tests.

* Handle all exceptions and in config_flow and tests, clarified test naming.

* Broke out test cases per comments.

* Regenerated en.json file.

* Addressed changes from comments in PR.

* Added session and bumped API to 0.4.0, addressed other comments from PR.

* Addressed entitydata (missed earlier).

* Fixed pylint issue

* Added test case for options flow in test_config_flow.py

* Removed super() and used self when calling methods in current class.

* Addressed comments in PR.

* Addressed comments in PR.

* Updated translations file.

* Rewrote data coordinator to output dict for easy searching.

* Updated chlorinator unit when chlorinator is on/off only

* Fixed ORP method not being @property, fixed unique_id potential issue. Does not address comments from PR.

* Rewrote coordinator for updated dict structure, rewrote sensors to parse new data structure.

* Added alarms as attributes on all entities which support alarm reporting.

* Updated SENSOR_TYPES to sensor_types to adhere to snake case in pylint.

* Addressed PR comments.

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Removed binary sensor conditions (alarms, on/off sensor types) and added ability for multiple guard conditions

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Updated per comments in PR for Pump Type and removal of force_update().

* Update homeassistant/components/omnilogic/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/omnilogic/common.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Correctly asserting conditions for the login exception case.

* Update .coveragerc

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

Co-authored-by: Mike Hershberger <mike.hershberger@gmail.com>
Co-authored-by: Chad <54695185+chadlyy@users.noreply.github.com>
Co-authored-by: Tim Empringham <tim.empringham@live.ca>
Co-authored-by: djtimca <60706061+djtimca@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-09-25 17:55:10 +02:00
Joakim Plate 0fbeb3bf7b
Use HA constants for Rfxtrx units (#40562)
* Add more units and device classes

* Battery level is a value beteen 0 and 9 where 9 indicate full

Actual 0 battery can't occur since since then we would get to signal

* Adjust tests

* Add wind direction and adjust rain rate

* Adjust data types to be None rather than empty string

* Set counter values to count unit

* Forgotten unit
2020-09-25 08:27:38 -04:00
Joakim Sørensen 2d429ea678
Add modifications for snapshot uploads (#40503)
Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
2020-09-25 10:02:26 +02:00
Kevin Cathcart 371b589cb2
Fix bug in state trigger when using for: without to: (#40556) 2020-09-25 09:15:04 +02:00
Aaron Bach f82ca44aac
Bump pyairvisual to 5.0.2 (#40554)
* Bump pyairvisual to 5.0.2

* Fix tests
2020-09-24 15:31:47 -06:00
Dermot Duffy 0a656f13eb
Fix/Refactor Hyperion Integration (#39738) 2020-09-24 21:37:34 +02:00
J. Nick Koston 3880ac0b0d
Ensure group state is recalculated when re-adding on reload (#40497) 2020-09-23 20:55:32 +02:00
springstan 6c8e0e20fb
Add and use light lux constant in entire code base (#40171) 2020-09-23 20:48:01 +02:00
springstan 6a7caad8dc
Use content type json constant (#40312) 2020-09-23 20:21:55 +02:00
Philip Allgaier 9c1eb78a0f
Adjust safe_theme for better readability (#40223) 2020-09-23 18:57:35 +02:00
Franck Nijhof 7c61caf68e
Revert "Support learning different command types with remote" (#40486)
This reverts commit c6a48d3b61.
2020-09-23 12:39:27 +02:00
Anders Melchiorsen 7876cdb37a
Fix handling of quoted time_pattern values (#40470)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2020-09-23 09:21:57 +02:00
jjlawren df9634a41f
Refactor Plex tests using fixtures (#40260)
* Refactor Plex tests using fixtures

* Avoid unnecessary coroutine declaration
2020-09-22 22:14:41 -05:00
Felipe Martins Diel c6a48d3b61
Support learning different command types with remote (#39670) 2020-09-22 22:09:19 -05:00
springstan 06a133c3e9
Add and use length millimeters constant (#40116)
* Add and use length millimeters constant

* Fix pylint error

* Fix broken accuweather sensor test
2020-09-22 21:09:17 -05:00
Tom Schneider 6e8e4eedb5
Add binary_sensor for elevator states to hvv_departures (#36822)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-09-22 17:42:50 +02:00
J. Nick Koston 7029345b9d
Add support for selecting multiple entity ids from logbook (#40075) 2020-09-22 09:27:04 -05:00
J. Nick Koston f0f817c361
Serialize websocket event message once (#40453)
Since most of the json serialize work for the websocket was done
multiple times for the same message, we can avoid the overhead
of serializing the same message many times (once per websocket
client) with a cache.
2020-09-22 08:47:04 -05:00
Ville Skyttä 5e90a4d000
Use more state attribute name constants (#40428) 2020-09-21 23:03:39 +02:00
On Freund 447446c565
Fix handling of empty ws port (#40399) 2020-09-21 20:27:00 +02:00
Julien Tant 8b9c757fdc
Add zodiac integration (#38935)
* add zodiac sign integration

* add tests & refacto

* Apply suggestions from code review

Co-authored-by: Chris Talkington <chris@talkingtontech.com>

* fix indentation from suggested correction, fix quality scale and remove useless functions

* fix code formatting

* Create const.py

* Update sensor.py

* Update const.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update sensor.py

* Update test_sensor.py

* Update __init__.py

* Update sensor.py

* Update test_sensor.py

* Update sensor.py

* Update __init__.py

* Update test_sensor.py

* Update __init__.py

* Fix zodiac time patch

* Delete sensor.fr.json

* Update sensor.py

* Delete sensor.en.json

* Update test_sensor.py

* Apply suggestions from code review

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-09-21 10:41:30 -05:00
Chris Talkington 432911c994
Apply code review for canary config flow (#40355)
* apply code review for canary config flow

* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update camera.py

* Update camera.py

* Update test_config_flow.py

* Update test_config_flow.py

* Update test_config_flow.py

* Update test_config_flow.py

* Update test_config_flow.py

* Update __init__.py
2020-09-20 17:38:02 -05:00
springstan 0c077685b6
Use content type text plain constant (#40313) 2020-09-20 13:19:10 +02:00
Brett 4f5d3b4035
Rebuilt Splunk using custom library (#40123)
* Rebuilt Splunk using splunk_data_sender

* Fixing lint issues

* Apply suggestions from code review

Recommended Fixes

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Moved to single send queue and fixed ssl verify

* Using coroutine and Asyncio.lock

* Changed to custom library hass_splunk

* Fixed "use_ssl" parameter

* Better error catching

* Better error log

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-09-20 11:22:43 +02:00
Chris Talkington 6b317ced17
Update roku media browser classes (#40285)
* update roku media browser classes

this should allow proper icons to be shown vs plain directory

* Update test_media_player.py

* Update browse_media.py

* Update browse_media.py

* Update browse_media.py

* Update browse_media.py

* Update browse_media.py

* Update browse_media.py

* Update test_media_player.py
2020-09-19 18:02:15 +02:00
SukramJ e300cf3747
Add binary_sensor for cloud connectivity to HomematicIP Cloud (#39675)
* Add binary_sensor for cloud connectivity to HomematicIP Cloud

* Fix Test

* Remove device_class

* Switch from _device to _home

* Switch from _device to _home for sensor
2020-09-19 10:59:46 -05:00
springstan 7de1fe7416
Use percentage constant in more integrations (#40165) 2020-09-19 10:30:22 -05:00
Chris Talkington 0c8b530aa2
Add device info to canary camera and sensors (#40053)
* add device info to canary sensors

* Update test_sensor.py

* Update sensor.py

* Update sensor.py

* Update test_sensor.py

* Create const.py

* Update sensor.py

* Update test_sensor.py

* Update sensor.py

* Update test_sensor.py

* Update camera.py

* Update camera.py

* Update sensor.py

* Update camera.py

* Update camera.py
2020-09-19 10:09:40 -05:00
Tom 5832184304
Add port to plugwise (#40017) 2020-09-19 12:08:16 +02:00
springstan e330468a13
Use pressure constants in code base (#40262) 2020-09-19 09:26:08 +02:00
Chris Talkington f563068ce6
Add config flow to canary (#40055)
* Create config_flow.py

* Update config_flow.py

* work on config flow

* Update test_config_flow.py

* Update __init__.py

* Update camera.py

* Update test_config_flow.py

* Update test_config_flow.py

* Update config_flow.py

* Update conftest.py

* Update test_config_flow.py

* Update test_init.py

* Update test_init.py

* Apply suggestions from code review

* Update camera.py

* Update test_init.py

* Update camera.py

* Update __init__.py

* Update test_init.py

* Update test_init.py

* Update __init__.py

* Update __init__.py

* Apply suggestions from code review

* Update __init__.py

* Update test_init.py

* Update __init__.py

* Update __init__.py

* Update config_flow.py

* Update test_config_flow.py

* Update config_flow.py

* Update config_flow.py
2020-09-18 23:22:19 -05:00
twdkeule 052e8f0983
Add Influxdb precision option (#38454) 2020-09-19 04:42:03 +02:00
timkoers 46b86f4a2f
Add UniFi Uptime sensor (#40058)
* Added UniFi Uptime sensor

Added the UniFi uptime data as a sensor. Untested.

* Update sensor.py

Updated code as a result of the tests.

* Changed timestamp format and device class

Converted state to iso timestamp and changed device class to DEVICE_CLASS_TIMESTAMP.

* Updated unit of measurement to None

* Added import

* Update homeassistant/components/unifi/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Removed whitespace

* Added the uptime sensors option to the config flow

* All the unit tests should be there now

* Whoops

* Fixed translation

* Properly formatted the code

* Flake8 really has angel eyes

* Black should also be satisfied now

* Should have satisfied all static code analysis tools

* Fixed add uptime sensor function

* Fixed overintendation

* Fixed unit tests

* Made a spelling mistake during editing of unit tests

* Test verifies if utc time is correct

* Converted to iso format

* Converted unit test to iso format

* Unit test sensor json had the wrong uptime name

* Added options_updated handler

* Fixed remove sensors unit test

* Update homeassistant/components/unifi/sensor.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* Update homeassistant/components/unifi/sensor.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* Update test_device_tracker.py

Removed uptime from the devices

* Fixed black formatting issue

* I think the code coverage should be good now

* Trying to add the sensors again

* Using signals to hopefully trigger the controller to add them again

* Forgot import

* Sorted components

* fixed isort comments

* Removed CLASS and DEVICE_CLASS

* Added TYPE again

* Removed double underscores

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2020-09-18 19:33:37 +02:00
Felipe Martins Diel 2f7b6bfa2d
Fix RM mini 3 update manager (#40215) 2020-09-18 15:31:25 +02:00
Felipe Martins Diel 976d8f7abe
Handle an unsupported device in the Broadlink config flow (#40242) 2020-09-18 15:29:26 +02:00
Raman Gupta d0a5feda44
Fix Vizio async_unload_entry bug (#40210) 2020-09-18 13:18:56 +02:00
J. Nick Koston e9abb357e4
Log template listeners when debug logging is on (#40180) 2020-09-17 14:45:30 -05:00
J. Nick Koston 44952a94cf
Add missing conext preservation to bayesian and universal (#40178)
We already do this for template sensors, but it was
missing for bayesian and universal
2020-09-17 16:47:23 +02:00
Bram Kragten 95e998d25a
Fix editing tags only get isoformat from datetime (#40174)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-09-17 16:45:55 +02:00
Robert Van Gorkom 70173488a8
Add config support to zoneminder integration (#37060)
* Add config support to zoneminder integration.

* Fixing spelling issue.
Adding self to maintainers.
Updating config flows generated file.

* Maintain zoneminder functionality without breaking changes.

* Addressing lint feedback.
Updating code owners.

* Using non-blocking calls.

* Adding tests package file.

* Update service description.

Co-authored-by: Rohan Kapoor <rohan@rohankapoor.com>

* Resolving conflicts in requirements file.

* Resolving more conflicts.

* Addressing PR feedback.

* Merging from dev.

Co-authored-by: Rohan Kapoor <rohan@rohankapoor.com>
2020-09-16 22:58:51 -07:00
Ville Skyttä 271ffac4a9
Fix static/class async mocks on Python 3.8.0 and .1 (#40147)
* forked_daapd

* shelly

* simplipy
2020-09-17 08:20:00 +03:00