Commit Graph

58 Commits (0f5efca76b6cbec9a0237b2229d5e01894e7431b)

Author SHA1 Message Date
Erik Montnemery 78b21b1ad1
Update tests a-b to use async_get() instead of async_get_registry() (#47651) 2021-03-09 14:24:34 +01:00
Ville Skyttä dc880118a4
Lint suppression cleanups (#47248)
* Unused pylint suppression cleanups

* Remove outdated pylint bug references

* Add flake8-noqa config and note to run it every now and then

* Add codes to noqa's

* Unused noqa cleanups
2021-03-02 09:02:04 +01:00
Robert Svensson 94ecb792ec
Use async_update_entry rather than updating config_entry.data directly in Axis (#46078)
Don't step version in migrate_entry to support rollbacking
2021-02-06 13:17:52 +01:00
Robert Svensson b69d9860b6
Improve Axis tests following late review in SSDP PR (#45489) 2021-01-24 14:14:49 +01:00
Robert Svensson 1e7e5220a3
Add SSDP discovery support to Axis integration (#45474)
* Add SSDP discovery support to Axis integration

* Remove unnecessary f-string

* Remove the last of the f-string...
2021-01-23 23:51:49 +01:00
Robert Svensson 03fb73c0ae
Option to select what video source Axis camera should use (#45268)
* Fully working proposal of config option to select what video source camera entity should use

* Bump dependency to v43
Reflect dependency changes in how image sources is now a dict

* Fix bdracos comment
2021-01-23 00:15:58 +01:00
Robert Svensson b601e7e497
Introduce reauthentication flow to Axis integration (#45307) 2021-01-21 12:56:04 +01:00
Robert Svensson 8e0addd216
Fix error with Axis light events without representation in light control (#45277) 2021-01-18 15:00:27 +01:00
Robert Svensson 3cc45697cb
Prettier Zeroconf discovery name for Axis devices (#45216)
* Change zeroconf name to be based of prettier name rather than hostname to help user understand what device is discovered
Have a full zeroconf discovery message in tests
Clean up unusued globals

* Use non-formatted serial number for config entry title as well
2021-01-16 18:59:57 +01:00
Robert Svensson 2044b33eb6
Add DHCP discovery support to Axis integration (#45167) 2021-01-16 11:03:56 +01:00
Robert Svensson 598a0d19b1
Normalise unique ID in Axis integration (#45203)
* Move adding unique id to config entry from setup_entry to migrate_entry

* Normalise unique ID

* MQTT subscribe should still use the serial number in the way the device itself expects
2021-01-16 01:01:14 +01:00
Robert Svensson 6325bc8bfe
Follow Axis library changes and improve tests (#44126) 2021-01-13 14:03:54 +01:00
Franck Nijhof 65cf2fcb6f
Drop asynctest (#44746) 2021-01-01 22:31:56 +01:00
Robert Svensson 20c3fdfe14
Fix ignored Axis config entries doesn't break set up of new entries (#44062) 2020-12-09 17:48:16 +01:00
Paulus Schoutsen 5dac3883b0
Stub light profiles (#42232) 2020-10-23 16:28:21 +02:00
Robert Svensson e54f4aa9ed
Improve Axis tests (#42183) 2020-10-22 09:29:53 +02:00
Robert Svensson 1303d20064
Adapt Axis integration to async HTTPx calls (#42095) 2020-10-20 09:31:04 +02:00
Robert Svensson de98168211
Axis lib migrates to httpx (#42054)
* Clean up some parameter naming

* Bump lib

* Bump to v39
2020-10-19 20:01:25 +02:00
Dave T 33e69fe4bf
Update axis to use common strings (#41164)
* Update axis to use common strings

* Update common str device_unavailable to cannot_connect

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2020-10-06 16:54:18 +02:00
Robert Svensson 41abc08d63
Axis - Improve naming of some events (#39699)
* Add support for events from Loitering guard and Motion guard
* Improve naming of events originating from applications Fence guard and VMD4 (Loitering guard and motion guard also benefit from this)
2020-09-06 23:26:06 +02:00
Franck Nijhof 1c2ebdf307
Upgrade black to 20.8b1 (#39287) 2020-08-27 13:56:20 +02:00
J. Nick Koston 74c23c3e96
Add support for reload_on_update to _abort_if_unique_id_configured (#38638)
* Add support for reload_on_update to _abort_if_unique_id_configured

async_update_entry now avoids firing update listeners and writing
the storage if there are no actual changes.

* Actually add the tests

* collapse branch

* Update homeassistant/config_entries.py

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

* handle entries that lack the ability to reload

* reduce

* adjust konnected tests

* update axis tests

* fix blocking

* more mocking

* config flow tests outside of test_config_flow

* reduce

* volumio

* Update homeassistant/config_entries.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* set reload_on_update=False for integrations that implement self._abort_if_unique_id_configured(updates= and a reload listen

* get rid of copy

* revert test change

Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-08-08 13:23:56 -05:00
Erik Montnemery 280f49540e
Drop use of async_mock_mqtt_component (#37011) 2020-06-22 23:59:50 +02:00
Robert Svensson 02e03340df
Light control support to Axis devices (#36611)
* IR light support to Axis devices

* Change how to read light state

* Add tests

* Bump dependency to v32

* Assert variables passed to set_intensity
2020-06-18 23:27:08 +02:00
Robert Svensson 99318b7b11
Remove Axis option to enable/disable camera (#36420) 2020-06-04 14:25:50 +02:00
Robert Svensson 770b622a6e
Axis - Add device class property to binary sensors (#36384)
* Add device class property to binary sensors

* Update tests
2020-06-02 20:12:19 +02:00
Robert Svensson cf6043fc2d
Support Axis stream profile and configuring it through options flow (#36322)
* Support stream profile and configuring it through options flow

* Options flow test

* Allow configuration of not using a stream profile

* Shorten default stream profile string
2020-06-01 18:45:38 +02:00
Robert Svensson 01d9366299
Improve Axis integration (#36205)
* Improve configuration

* Read new properties for basic device information
Improve tests by mocking less improving stability of tests

* Clean up in device tests

* Support new port management api

* Improve initializing data

* Bump dependency to v28
2020-05-31 20:00:15 +02:00
Robert Svensson 376e0e0e93
Add Axis MQTT support (#36015)
* Working PoC

* Store

* Handle subscribing to MQTT and stopping stream when first telegram arrives

* Improve naming

* Now with test

* Better strings

* Fix Martins comments

* Improve mock device patching

* Bump dependency to v27
Add MQTT as after dependency
2020-05-25 23:13:34 +02:00
Robert Svensson 714047f789
Axis - Streamline setup and teardown of integration (#35675)
* Streamline setup and teardown of integration

* Dont remove integration twice
2020-05-15 23:56:09 +02:00
Robert Svensson e6c58c9795
Axis - Code improvements (#35592)
* Adapt library improvements
Clean up integration and tests and make them more like latest changes in UniFi integration

* Bump dependency to v26
2020-05-14 10:49:27 +02:00
Paulus Schoutsen 2af984917e
Use asynctest-mock in most places (#35109)
* Use asynctest-mock in most places

* Fix broken patch in pilight
2020-05-03 11:27:19 -07:00
Paulus Schoutsen ec47216388
Use built-in test helpers on 3.8 (#34901) 2020-04-30 13:29:50 -07:00
Paulus Schoutsen 0d700f6a63
Fix tests for Python 3.8 (#34672) 2020-04-25 14:32:55 -07:00
Paulus Schoutsen 0b90ebf91e
Allow async_setup changes to config entry data be taken into a… (#34166)
* Allow async_setup changes to config entry data be taken into account

* Fix tests

* Limit scope try…finally

* Update tests/test_config_entries.py

Co-Authored-By: Martin Hjelmare <marhje52@gmail.com>

* Fix import

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-04-14 18:46:41 -07:00
Paulus Schoutsen d4615fd432
Freeze config entry data (#32615)
* Freeze config entry data

* Fix mutating entry.data

* Fix config entry options tests
2020-03-09 14:07:50 -07:00
Robert Svensson 44f0728c60
Axis - Use core to start component tests (#31328)
* Fix test according to Martins comment in 31286

* Use core features rather than integration specific

* Fix populate options test
2020-01-31 20:23:51 +01:00
Robert Svensson 56657fa859
Axis - config flow use new helper functions (#31286)
* Make use of new config flow helpers
Simplify Axis entry config to work with config flow helpers

* Keep old device data for rollback purposes
2020-01-30 22:20:30 +01:00
Robert Svensson 35e19eec18
Axis - Allow manual configuration to update existing configuration (#30467)
* Allow manual configuration to update existing configuration

* Harmonize tests

* Understand what Elupus means...
2020-01-05 10:11:17 +01:00
Robert Svensson 63347ebeb5
Make Axis integration use config entry unique id (#30461)
* Make Axis integration use config entry unique id
2020-01-04 08:58:18 +01:00
Robert Svensson bb55606d29 Axis - Remove manual configuration and legacy config file import (#30365)
* Remove manual configuration and legacy config file import

* Remove unused imports in tests after rebase
2020-01-03 14:25:31 -06:00
Robert Svensson b57da2f862 Axis - Improve tests based on feedback (#30430)
* Use MockConfigEntry, add_to_hass and hass.config_entries.async_setup

* Mock method instead of handling paths
2020-01-03 13:27:14 +01:00
Robert Svensson 9b961632af
Axis - Improve tests (#30415) 2020-01-03 00:02:59 +01:00
Bas Nijholt b0d0060643 sort imports according to PEP8 for axis (#29621) 2019-12-08 15:44:03 +01:00
Robert Svensson 6ffc520b1c
Axis - Improve discovery title by adding placeholder support (#27663)
* Improve discovery title by adding placeholder support
2019-10-16 20:45:03 +02:00
Robert Svensson a2589f56e1 Add system options to config entries (#25926)
* Add system options to config entries

* For feedback

* Follow most of balloobs comments

* Fix balloobs comments

* Improvements

* Fix second round of Balloobs comments

* Fix third round

* Add system options to mock config entry

* Fix integration tests

* Fix the last failing tests

* Fix disabled string

* Fix failing disabled_by tests

* New tests

* Config entry WS API tests

* Fix comments
2019-08-17 21:34:11 -07:00
Paulus Schoutsen 6f357cb23e First pass fixing tests that raise exceptions caught by asyncio.gather (#25860)
* First pass fixing tests that raise exceptions caught by asyncio.gather

* Fix demo test

* lint
2019-08-12 16:42:12 +02:00
Paulus Schoutsen 4de97abc3a Black 2019-07-31 12:25:30 -07:00
Robert Svensson 34e3d2f997 Axis discovery MAC filter (#24442)
* Make sure to abort if the MAC is not from Axis

* Fix tests

* Andrew Sayre suggestion

Co-Authored-By: Andrew Sayre <6730289+andrewsayre@users.noreply.github.com>
2019-06-10 09:12:17 -07:00
Robert Svensson 636077c74d Zeroconf discovery for config entries (#23919)
* Proof of concept

* Follow comments

* Fix line length and bad imports

* Move imports to top

* Exception handling for unicode decoding
Create debug print for new service types
Add empty test files

* First try at a test

* Add type and name to service info
Fix static check

* Add aiozeroconf to test dependencies
2019-05-21 15:36:26 -07:00