Commit graph

54 commits

Author SHA1 Message Date
jjlawren
c1213857ce
Fix Plex reauth with multiple available servers () 2022-10-18 11:51:43 +02:00
J. Nick Koston
eeb9a9f058
Make sure all discovery flows are using the helper () 2022-08-12 09:25:23 -04:00
jjlawren
9cd9d06bcc
Avoid network activity during Plex tests () 2022-05-27 09:46:22 +02:00
jjlawren
10195dc700
Improve server selection for Plex config flows () 2022-01-05 22:20:33 +01:00
Robert Hillis
75e8a2ec77
Use platform enums in plex tests () 2021-12-22 07:59:54 -05:00
Ville Skyttä
380cff167e
Use HTTPStatus in components/[nop]* () 2021-10-23 20:56:30 +02:00
Paulus Schoutsen
a4d9019ffc
Refactor persistent notification to no longer route all data via a service ()
* 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>
2021-10-07 12:58:00 +02:00
Erik Montnemery
acdddabe1f
Use hass_client_no_auth test fixture in integrations h-p () 2021-09-02 14:49:40 +02:00
jjlawren
d5fe7e0e5a
Fallback to try all known Plex servers if none marked present () 2021-08-24 12:05:24 +02:00
jjlawren
225732d00e
Remove I/O in Plex tests () 2021-07-19 18:50:04 +02:00
Ville Skyttä
19d25cd901
Change config entry state to an enum ()
* Change config entry state to an enum

* Allow but deprecate EntryState str equality comparison

* Test fixes

* Rename to ConfigEntryState

* Remove str comparability backcompat

* Update new occurrences of strs cropped up during review
2021-05-20 19:19:20 +02:00
jjlawren
37e8571fe8
Use header URI in Plex config flow () 2021-04-30 23:15:59 +02:00
Ville Skyttä
153d6e891e
Use config_entries.SOURCE_* constants () 2021-04-25 11:27:40 +02:00
jjlawren
d62297a28b
Add Plex library count sensors () 2021-03-31 13:57:16 +02:00
jjlawren
2f1dba74d1
Use Plex server URL as config entry title () 2021-02-24 20:57:02 +01:00
jjlawren
0426b211f6
Rewrite Plex tests to use mocked payloads () 2021-01-07 19:56:52 +01:00
Franck Nijhof
65cf2fcb6f
Drop asynctest () 2021-01-01 22:31:56 +01:00
jjlawren
f2f935506e
Use Plex websocket payloads to reduce overhead ()
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-12-02 19:00:13 +01:00
jjlawren
c63c253b7f
Discover Plex clients using GDM () 2020-10-14 15:46:52 +02:00
jjlawren
3596eb39f2
Add support to reauthorize expired Plex tokens () 2020-09-28 16:14:54 +02:00
jjlawren
df9634a41f
Refactor Plex tests using fixtures ()
* Refactor Plex tests using fixtures

* Avoid unnecessary coroutine declaration
2020-09-22 22:14:41 -05:00
Franck Nijhof
1c2ebdf307
Upgrade black to 20.8b1 () 2020-08-27 13:56:20 +02:00
jjlawren
7128092139
Fix missing Plex account mocks in tests () 2020-07-06 22:58:43 -07:00
J. Nick Koston
bea3d841d2
Mock setup in plex test to prevent CI failure () 2020-07-06 17:25:22 -07:00
jjlawren
ec13eecc59
Update Plex tests to mock websockets ()
* Update Plex tests to mock websockets

* Avoid unnecessary class mock
2020-06-27 10:03:51 +02:00
jjlawren
40573bf393
Plex tests cleanup and additions () 2020-06-25 23:24:58 -07:00
jjlawren
fd1a8dd96c
Fix Plex when using local tokenless authentication () 2020-06-25 17:10:40 -07:00
jjlawren
d5cc3208af
Discover controllable Plex clients using plex.tv () 2020-06-17 12:04:47 -07:00
jjlawren
d4d233536f
Fix missing options in Plex config entry () 2020-06-11 15:45:00 -07:00
jjlawren
9aac8482d5
Remove deprecated Plex YAML config () 2020-06-03 09:20:21 -07:00
jjlawren
44d7169642
Fix flaky Plex test () 2020-06-02 17:37:10 -05:00
jjlawren
c12f8bed43
Plex discovery on demand ()
* Allow Plex discovery on demand

* Add new discovery source

* Add tests
2020-05-13 09:11:00 -04:00
jjlawren
ad419911bc
Add config option to ignore Plex Web clients () 2020-05-08 09:49:15 -07:00
Franck Nijhof
2223592486
Add get_url helper, deprecate base_url () 2020-05-08 02:29:47 +02:00
jjlawren
dfe2a457c0
Handle config with a limited Plex account () 2020-05-06 18:46:00 -07:00
jjlawren
740d9c575e
Add manual config flow for Plex () 2020-05-05 15:42:21 -07:00
Paulus Schoutsen
ec47216388
Use built-in test helpers on 3.8 () 2020-04-30 13:29:50 -07:00
jjlawren
42ca566e05
Improve Plex debounce/throttle logic ()
* Improve Plex debounce/throttle logic

* Use Debouncer helper, rewrite affected tests

* Mock storage so files aren't left behind

* Don't bother with wrapper method, store debouncer call during init

* Test cleanup from review

* Don't patch own code in tests
2020-04-10 00:49:09 +02:00
jjlawren
42353282d4
Debounce calls to Plex server ()
* Debounce calls to Plex server

* Simplify debounce by recommendation

* Update tests to handle debounce

* Test debouncer, fix & optimize tests

* Use property instead
2020-04-03 22:34:42 -07:00
jjlawren
44c7743351
Rewrite and add Plex tests ()
* Rewrite and add Plex tests

* Remove unnecessary mocks

* Explicitly import constants for readability
2020-03-11 09:37:02 -07:00
Paulus Schoutsen
4717d072c9
Remove discovery and legacy config file loading for Plex () 2020-03-05 12:36:18 -08:00
Paulus Schoutsen
1615a5ee81
Use unique_id in Plex config entries () 2020-03-04 21:42:48 -08:00
Paulus Schoutsen
dd7d8d4792
Remove 'show all controls' option for Plex () 2020-03-04 14:42:50 -08:00
jjlawren
0213f43f10
Add options to ignore shared/managed Plex clients ()
* Add option to ignore shared/managed Plex clients

* Start to allow user selection

* hass object not ready during init

* Don't bother sorting

* Plex account multi-select, handle new users not matching config

* Fix/add tests

* Lint simplifications

* Review cleanup

* Oops

* Rename options attributes, fix/add tests
2020-02-18 16:46:45 -08:00
Jc2k
fdfedd086b Rework FlowManager to use inheritance ()
* Pull async_finish_flow/async_create_flow out of ConfigEntries

* Towards refactoring

* mypy fixes

* Mark Flow manager with abc.* annotations

* Flake8 fixes

* Mypy fixes

* Blacken data_entry_flow

* Blacken longer signatures caused by mypy changes

* test fixes

* Test fixes

* Fix typo

* Avoid protected member lint (W0212) in config_entries

* More protected member fixes

* Missing await
2020-01-03 11:52:01 +01:00
Bas Nijholt
e6eed4755f Sort imports according to PEP8 for plex () 2019-12-08 23:31:55 +01:00
jjlawren
6a02c6540e Stop Plex config flow imports where more user input needed ()
* Abort imports that require user interaction, update logs and tests

* Disable lint
2019-11-30 22:07:12 -08:00
jjlawren
fc8920646b Fix Plex test timeouts ()
* Ensure mocked calls are inside patch

* Avoid filesytem I/O
2019-10-21 16:29:04 -07:00
jjlawren
cf76f22c89 Rewrite Plex tests () 2019-10-13 21:59:25 -07:00
jjlawren
a3c98440e0 Remove manual config flow step () 2019-10-07 11:29:12 -07:00