core/tests/components
Johan Bloemberg 64cfc4ff02 DSMR sensor (#4309)
* Initial implemenation of DSMR component.

* Fix linting

* Remove protocol V2.2 support until merged upstream.

* Generate requirements using script.

* Use updated dsmr-parser with protocol 2.2 support.

* Add tests.

* Isort and input validation.

* Add entities for gas and actual meter reading. Error handling. Use Throttle.

* Implement non-blocking serial reader.

* Improve logging.

* Merge entities into one, add icons, fix tests for asyncio.

* Add error logging for serial reader.

* Refactoring and documentation.

- refactor asyncio reader task to make sure it stops with HA
- document general principle of this component
- refactor entity reading to be more clear
- remove cruft from split entity implementation

* Use `port` configuration key.

* DSMR V2.2 seems to conflict in explaining which tariff is high and low.

http://www.netbeheernederland.nl/themas/hotspot/hotspot-documenten/?dossierid=11010056&title=Slimme%20meter&onderdeel=Documenten
> DSMR v2.2 Final P1
>> 6.1: table vs table note

    Meter Reading electricity delivered to client normal tariff) in 0,01 kWh - 1-0:1.8.1.255
    Meter Reading electricity delivered to client (low tariff) in 0,01 kWh - 1-0:1.8.2.255

    Note: Tariff code 1 is used for low tariff and tariff code 2 is used for normal tariff.

* Refactor to use asyncio.Protocol instead of loop+queue.

* Fix requirements

* Close transport when HA stops.

* Cleanup.

* Include as dependency for testing (until merged upstream.)

* Fix style.

* Update setup.cfg
2016-11-22 23:03:39 -08:00
..
alarm_control_panel Continue on invalid platforms and new setup_component unit tests (#3736) 2016-10-08 11:27:35 -07:00
automation More async tests (#4223) 2016-11-05 16:36:20 -07:00
binary_sensor Migrate callbacks to use schedule_update_ha_state (#4426) 2016-11-17 07:34:46 -08:00
calendar Disable broken google offset test (#4540) 2016-11-22 18:34:48 -08:00
camera Remove ThreadPool with async executor (#4154) 2016-11-05 09:27:55 -07:00
climate More async tests (#4223) 2016-11-05 16:36:20 -07:00
cover Lazy initialise the worker pool (#4110) 2016-10-31 08:47:29 -07:00
device_tracker Async migration device_tracker (#4406) 2016-11-18 23:35:08 +01:00
fan Use setup_component in tests (#3414) 2016-09-17 10:29:58 -07:00
light Add mqtt_template light component (#4233) 2016-11-06 09:09:01 -08:00
lock Async bootstrap / component init (#3991) 2016-10-27 00:16:23 -07:00
media_player Fix lint issues for 0.33 (#4451) 2016-11-18 23:05:03 +01:00
mqtt support for last will and birth message for mqtt (#4381) 2016-11-14 22:18:33 -08:00
notify Upgrade linter (#4461) 2016-11-18 21:47:59 -08:00
recorder Clean up tests (#4209) 2016-11-03 21:58:18 -07:00
sensor DSMR sensor (#4309) 2016-11-22 23:03:39 -08:00
switch Fix lint issues for 0.33 (#4451) 2016-11-18 23:05:03 +01:00
weather Update tests, rename variable, and change conversion (#3546) 2016-10-24 21:53:03 -07:00
__init__.py Fix PEP257 issues 2016-03-09 10:25:50 +01:00
test_alexa.py More async tests (#4223) 2016-11-05 16:36:20 -07:00
test_api.py More async tests (#4223) 2016-11-05 16:36:20 -07:00
test_configurator.py Disable too-many-* (#4107) 2016-10-30 22:18:53 +01:00
test_conversation.py More async tests (#4223) 2016-11-05 16:36:20 -07:00
test_demo.py Use setup_component in tests v1 (#3507) 2016-09-25 23:15:21 +02:00
test_device_sun_light_trigger.py Disable too-many-* (#4107) 2016-10-30 22:18:53 +01:00
test_emulated_hue.py Fix lint issues for 0.33 (#4451) 2016-11-18 23:05:03 +01:00
test_frontend.py Bugfix/frontend group urls (#4185) 2016-11-02 21:15:23 -07:00
test_google.py Mock call to google servers (#4532) 2016-11-22 18:19:32 -08:00
test_graphite.py Removing calls to mock.assert_called_once_with (#3896) 2016-10-16 16:13:27 -07:00
test_group.py Clean up tests (#4209) 2016-11-03 21:58:18 -07:00
test_history.py Disable too-many-* (#4107) 2016-10-30 22:18:53 +01:00
test_http.py http: reimplement X-Forwarded-For parsing (#4355) 2016-11-12 16:14:39 -08:00
test_influxdb.py Lazy initialise the worker pool (#4110) 2016-10-31 08:47:29 -07:00
test_init.py Disable too-many-* (#4107) 2016-10-30 22:18:53 +01:00
test_input_boolean.py Disable too-many-* (#4107) 2016-10-30 22:18:53 +01:00
test_input_select.py Disable too-many-* (#4107) 2016-10-30 22:18:53 +01:00
test_input_slider.py Disable too-many-* (#4107) 2016-10-30 22:18:53 +01:00
test_introduction.py Use setup_component in tests v1 (#3507) 2016-09-25 23:15:21 +02:00
test_logbook.py Clean up tests (#4209) 2016-11-03 21:58:18 -07:00
test_logentries.py Lazy initialise the worker pool (#4110) 2016-10-31 08:47:29 -07:00
test_logger.py Lazy initialise the worker pool (#4110) 2016-10-31 08:47:29 -07:00
test_mqtt_eventstream.py Clean up tests (#4209) 2016-11-03 21:58:18 -07:00
test_panel_custom.py Async bootstrap / component init (#3991) 2016-10-27 00:16:23 -07:00
test_panel_iframe.py Tweak panel parameters (#2746) 2016-08-07 21:56:17 -07:00
test_persistent_notification.py Use setup_component in tests v1 (#3507) 2016-09-25 23:15:21 +02:00
test_pilight.py Introduce a send_delay for pilight component (#4051) 2016-11-01 21:50:27 -07:00
test_proximity.py Migrate to voluptuous (#3293) [BREAKING CHANGE] 2016-10-11 00:26:11 -07:00
test_rfxtrx.py Clean up tests (#4209) 2016-11-03 21:58:18 -07:00
test_scene.py Use setup_component in tests (#3414) 2016-09-17 10:29:58 -07:00
test_script.py Convert script component to async (#4427) 2016-11-17 21:50:01 -08:00
test_shell_command.py Optimize template 2 (#3521) 2016-09-27 21:29:55 -07:00
test_sleepiq.py Async bootstrap / component init (#3991) 2016-10-27 00:16:23 -07:00
test_splunk.py Lazy initialise the worker pool (#4110) 2016-10-31 08:47:29 -07:00
test_statsd.py Lazy initialise the worker pool (#4110) 2016-10-31 08:47:29 -07:00
test_sun.py Disable too-many-* (#4107) 2016-10-30 22:18:53 +01:00
test_updater.py Minor updater... updates (#4020) 2016-10-24 00:01:56 -07:00
test_weblink.py Use setup_component in tests v2 (#3537) 2016-09-26 23:20:36 +02:00
test_zone.py Fix zone being setup twice 2016-09-24 00:04:03 -07:00