This section is very much a work in progress.
There are three buckets of tests, please feel free to add as appropriate.
- PyDreo Unit Tests
- These tests ensure that the PyDreo library can parse the JSONs correctly for each device we support.
- Dreo Unit Tests - That do not talk to PyDreo
- These tests ensure that the Dreo HA code correctly talks to PyDreo. For these we mock PyDreo.
- Dreo Integration Tests - That do talk to PyDreo
- These integration tests ensure that the Dreo HA code gets what we expect from the device JSON files.
As of a recent release, Dreo seems to have removed certificate pinning, at least for iOS. That makes all this a bunch easier.
- Use Fiddler Classic (http://www.fiddlertool.com) to get a network trace to see what the Dreo app is doing. I won't document here how to setup Fiddler as a proxy or do SSL decryption; Fiddler documentation is pretty good.