[run]
source = homeassistant

omit =
    homeassistant/__main__.py
    homeassistant/scripts/*.py
    homeassistant/helpers/typing.py

    # omit pieces of code that rely on external devices being present
    homeassistant/components/apcupsd.py
    homeassistant/components/*/apcupsd.py

    homeassistant/components/arduino.py
    homeassistant/components/*/arduino.py

    homeassistant/components/bbb_gpio.py
    homeassistant/components/*/bbb_gpio.py

    homeassistant/components/bloomsky.py
    homeassistant/components/*/bloomsky.py

    homeassistant/components/digital_ocean.py
    homeassistant/components/*/digital_ocean.py

    homeassistant/components/dweet.py
    homeassistant/components/*/dweet.py

    homeassistant/components/ecobee.py
    homeassistant/components/*/ecobee.py

    homeassistant/components/envisalink.py
    homeassistant/components/*/envisalink.py

    homeassistant/components/google.py
    homeassistant/components/*/google.py

    homeassistant/components/insteon_hub.py
    homeassistant/components/*/insteon_hub.py

    homeassistant/components/insteon_local.py
    homeassistant/components/*/insteon_local.py

    homeassistant/components/ios.py
    homeassistant/components/*/ios.py

    homeassistant/components/isy994.py
    homeassistant/components/*/isy994.py

    homeassistant/components/modbus.py
    homeassistant/components/*/modbus.py

    homeassistant/components/mysensors.py
    homeassistant/components/*/mysensors.py

    homeassistant/components/nest.py
    homeassistant/components/*/nest.py

    homeassistant/components/octoprint.py
    homeassistant/components/*/octoprint.py

    homeassistant/components/qwikswitch.py
    homeassistant/components/*/qwikswitch.py

    homeassistant/components/rfxtrx.py
    homeassistant/components/*/rfxtrx.py

    homeassistant/components/rpi_gpio.py
    homeassistant/components/*/rpi_gpio.py

    homeassistant/components/scsgate.py
    homeassistant/components/*/scsgate.py

    homeassistant/components/tellduslive.py
    homeassistant/components/*/tellduslive.py

    homeassistant/components/tellstick.py
    homeassistant/components/*/tellstick.py

    homeassistant/components/*/thinkingcleaner.py

    homeassistant/components/vera.py
    homeassistant/components/*/vera.py

    homeassistant/components/verisure.py
    homeassistant/components/*/verisure.py

    homeassistant/components/*/webostv.py

    homeassistant/components/wemo.py
    homeassistant/components/*/wemo.py

    homeassistant/components/wink.py
    homeassistant/components/*/wink.py

    homeassistant/components/zigbee.py
    homeassistant/components/*/zigbee.py

    homeassistant/components/zwave/*
    homeassistant/components/*/zwave.py

    homeassistant/components/enocean.py
    homeassistant/components/*/enocean.py

    homeassistant/components/netatmo.py
    homeassistant/components/*/netatmo.py

    homeassistant/components/neato.py
    homeassistant/components/*/neato.py

    homeassistant/components/homematic.py
    homeassistant/components/*/homematic.py

    homeassistant/components/knx.py
    homeassistant/components/*/knx.py

    homeassistant/components/ffmpeg.py
    homeassistant/components/*/ffmpeg.py

    homeassistant/components/zoneminder.py
    homeassistant/components/*/zoneminder.py

    homeassistant/components/mochad.py
    homeassistant/components/*/mochad.py

    homeassistant/components/zabbix.py
    homeassistant/components/*/zabbix.py

    homeassistant/components/alarm_control_panel/alarmdotcom.py
    homeassistant/components/alarm_control_panel/concord232.py
    homeassistant/components/alarm_control_panel/nx584.py
    homeassistant/components/alarm_control_panel/simplisafe.py
    homeassistant/components/binary_sensor/arest.py
    homeassistant/components/binary_sensor/concord232.py
    homeassistant/components/binary_sensor/flic.py
    homeassistant/components/binary_sensor/hikvision.py
    homeassistant/components/binary_sensor/rest.py
    homeassistant/components/browser.py
    homeassistant/components/camera/amcrest.py
    homeassistant/components/camera/bloomsky.py
    homeassistant/components/camera/foscam.py
    homeassistant/components/camera/mjpeg.py
    homeassistant/components/camera/rpi_camera.py
    homeassistant/components/camera/synology.py
    homeassistant/components/climate/eq3btsmart.py
    homeassistant/components/climate/heatmiser.py
    homeassistant/components/climate/homematic.py
    homeassistant/components/climate/knx.py
    homeassistant/components/climate/proliphix.py
    homeassistant/components/climate/radiotherm.py
    homeassistant/components/cover/garadget.py
    homeassistant/components/cover/homematic.py
    homeassistant/components/cover/rpi_gpio.py
    homeassistant/components/cover/scsgate.py
    homeassistant/components/cover/wink.py
    homeassistant/components/device_tracker/actiontec.py
    homeassistant/components/device_tracker/aruba.py
    homeassistant/components/device_tracker/asuswrt.py
    homeassistant/components/device_tracker/bbox.py
    homeassistant/components/device_tracker/bluetooth_le_tracker.py
    homeassistant/components/device_tracker/bluetooth_tracker.py
    homeassistant/components/device_tracker/bt_home_hub_5.py
    homeassistant/components/device_tracker/cisco_ios.py
    homeassistant/components/device_tracker/fritz.py
    homeassistant/components/device_tracker/gpslogger.py
    homeassistant/components/device_tracker/icloud.py
    homeassistant/components/device_tracker/luci.py
    homeassistant/components/device_tracker/netgear.py
    homeassistant/components/device_tracker/nmap_tracker.py
    homeassistant/components/device_tracker/ping.py
    homeassistant/components/device_tracker/snmp.py
    homeassistant/components/device_tracker/swisscom.py
    homeassistant/components/device_tracker/thomson.py
    homeassistant/components/device_tracker/tomato.py
    homeassistant/components/device_tracker/tado.py
    homeassistant/components/device_tracker/tplink.py
    homeassistant/components/device_tracker/trackr.py
    homeassistant/components/device_tracker/ubus.py
    homeassistant/components/device_tracker/volvooncall.py
    homeassistant/components/device_tracker/xiaomi.py
    homeassistant/components/discovery.py
    homeassistant/components/downloader.py
    homeassistant/components/emoncms_history.py
    homeassistant/components/emulated_hue/upnp.py
    homeassistant/components/fan/mqtt.py
    homeassistant/components/feedreader.py
    homeassistant/components/foursquare.py
    homeassistant/components/hdmi_cec.py
    homeassistant/components/ifttt.py
    homeassistant/components/joaoapps_join.py
    homeassistant/components/keyboard.py
    homeassistant/components/keyboard_remote.py
    homeassistant/components/light/avion.py
    homeassistant/components/light/blinksticklight.py
    homeassistant/components/light/decora.py
    homeassistant/components/light/flux_led.py
    homeassistant/components/light/hue.py
    homeassistant/components/light/hyperion.py
    homeassistant/components/light/lifx.py
    homeassistant/components/light/limitlessled.py
    homeassistant/components/light/osramlightify.py
    homeassistant/components/light/tikteck.py
    homeassistant/components/light/x10.py
    homeassistant/components/light/yeelight.py
    homeassistant/components/light/zengge.py
    homeassistant/components/lirc.py
    homeassistant/components/media_player/anthemav.py
    homeassistant/components/media_player/aquostv.py
    homeassistant/components/media_player/braviatv.py
    homeassistant/components/media_player/cast.py
    homeassistant/components/media_player/cmus.py
    homeassistant/components/media_player/denon.py
    homeassistant/components/media_player/denonavr.py
    homeassistant/components/media_player/directv.py
    homeassistant/components/media_player/dunehd.py
    homeassistant/components/media_player/emby.py
    homeassistant/components/media_player/firetv.py
    homeassistant/components/media_player/gpmdp.py
    homeassistant/components/media_player/hdmi_cec.py
    homeassistant/components/media_player/itunes.py
    homeassistant/components/media_player/kodi.py
    homeassistant/components/media_player/lg_netcast.py
    homeassistant/components/media_player/mpchc.py
    homeassistant/components/media_player/mpd.py
    homeassistant/components/media_player/nad.py
    homeassistant/components/media_player/onkyo.py
    homeassistant/components/media_player/panasonic_viera.py
    homeassistant/components/media_player/pandora.py
    homeassistant/components/media_player/philips_js.py
    homeassistant/components/media_player/pioneer.py
    homeassistant/components/media_player/plex.py
    homeassistant/components/media_player/roku.py
    homeassistant/components/media_player/russound_rnet.py
    homeassistant/components/media_player/samsungtv.py
    homeassistant/components/media_player/snapcast.py
    homeassistant/components/media_player/sonos.py
    homeassistant/components/media_player/squeezebox.py
    homeassistant/components/media_player/vlc.py
    homeassistant/components/media_player/yamaha.py
    homeassistant/components/notify/aws_lambda.py
    homeassistant/components/notify/aws_sns.py
    homeassistant/components/notify/aws_sqs.py
    homeassistant/components/notify/discord.py
    homeassistant/components/notify/facebook.py
    homeassistant/components/notify/free_mobile.py
    homeassistant/components/notify/gntp.py
    homeassistant/components/notify/group.py
    homeassistant/components/notify/instapush.py
    homeassistant/components/notify/joaoapps_join.py
    homeassistant/components/notify/kodi.py
    homeassistant/components/notify/lannouncer.py
    homeassistant/components/notify/llamalab_automate.py
    homeassistant/components/notify/matrix.py
    homeassistant/components/notify/message_bird.py
    homeassistant/components/notify/nfandroidtv.py
    homeassistant/components/notify/nma.py
    homeassistant/components/notify/pushbullet.py
    homeassistant/components/notify/pushetta.py
    homeassistant/components/notify/pushover.py
    homeassistant/components/notify/rest.py
    homeassistant/components/notify/sendgrid.py
    homeassistant/components/notify/simplepush.py
    homeassistant/components/notify/slack.py
    homeassistant/components/notify/smtp.py
    homeassistant/components/notify/syslog.py
    homeassistant/components/notify/telegram.py
    homeassistant/components/notify/telstra.py
    homeassistant/components/notify/twilio_sms.py
    homeassistant/components/notify/twitter.py
    homeassistant/components/notify/xmpp.py
    homeassistant/components/nuimo_controller.py
    homeassistant/components/remote/harmony.py
    homeassistant/components/scene/hunterdouglas_powerview.py
    homeassistant/components/sensor/amcrest.py
    homeassistant/components/sensor/arest.py
    homeassistant/components/sensor/arwn.py
    homeassistant/components/sensor/bbox.py
    homeassistant/components/sensor/bitcoin.py
    homeassistant/components/sensor/bom.py
    homeassistant/components/sensor/broadlink.py
    homeassistant/components/sensor/dublin_bus_transport.py
    homeassistant/components/sensor/coinmarketcap.py
    homeassistant/components/sensor/cpuspeed.py
    homeassistant/components/sensor/cups.py
    homeassistant/components/sensor/currencylayer.py
    homeassistant/components/sensor/darksky.py
    homeassistant/components/sensor/deutsche_bahn.py
    homeassistant/components/sensor/dht.py
    homeassistant/components/sensor/dovado.py
    homeassistant/components/sensor/dte_energy_bridge.py
    homeassistant/components/sensor/efergy.py
    homeassistant/components/sensor/eliqonline.py
    homeassistant/components/sensor/emoncms.py
    homeassistant/components/sensor/fastdotcom.py
    homeassistant/components/sensor/fitbit.py
    homeassistant/components/sensor/fixer.py
    homeassistant/components/sensor/fritzbox_callmonitor.py
    homeassistant/components/sensor/glances.py
    homeassistant/components/sensor/google_travel_time.py
    homeassistant/components/sensor/gpsd.py
    homeassistant/components/sensor/gtfs.py
    homeassistant/components/sensor/haveibeenpwned.py
    homeassistant/components/sensor/hddtemp.py
    homeassistant/components/sensor/hp_ilo.py
    homeassistant/components/sensor/hydroquebec.py
    homeassistant/components/sensor/iss.py
    homeassistant/components/sensor/imap.py
    homeassistant/components/sensor/imap_email_content.py
    homeassistant/components/sensor/influxdb.py
    homeassistant/components/sensor/lastfm.py
    homeassistant/components/sensor/linux_battery.py
    homeassistant/components/sensor/loopenergy.py
    homeassistant/components/sensor/mhz19.py
    homeassistant/components/sensor/miflora.py
    homeassistant/components/sensor/mqtt_room.py
    homeassistant/components/sensor/netdata.py
    homeassistant/components/sensor/neurio_energy.py
    homeassistant/components/sensor/nut.py
    homeassistant/components/sensor/nzbget.py
    homeassistant/components/sensor/ohmconnect.py
    homeassistant/components/sensor/onewire.py
    homeassistant/components/sensor/openexchangerates.py
    homeassistant/components/sensor/openweathermap.py
    homeassistant/components/sensor/pi_hole.py
    homeassistant/components/sensor/plex.py
    homeassistant/components/sensor/pvoutput.py
    homeassistant/components/sensor/sabnzbd.py
    homeassistant/components/sensor/scrape.py
    homeassistant/components/sensor/sensehat.py
    homeassistant/components/sensor/serial_pm.py
    homeassistant/components/sensor/skybeacon.py
    homeassistant/components/sensor/sma.py
    homeassistant/components/sensor/snmp.py
    homeassistant/components/sensor/sonarr.py
    homeassistant/components/sensor/speedtest.py
    homeassistant/components/sensor/steam_online.py
    homeassistant/components/sensor/supervisord.py
    homeassistant/components/sensor/swiss_hydrological_data.py
    homeassistant/components/sensor/swiss_public_transport.py
    homeassistant/components/sensor/synologydsm.py
    homeassistant/components/sensor/systemmonitor.py
    homeassistant/components/sensor/ted5000.py
    homeassistant/components/sensor/temper.py
    homeassistant/components/sensor/time_date.py
    homeassistant/components/sensor/torque.py
    homeassistant/components/sensor/transmission.py
    homeassistant/components/sensor/twitch.py
    homeassistant/components/sensor/uber.py
    homeassistant/components/sensor/usps.py
    homeassistant/components/sensor/vasttrafik.py
    homeassistant/components/sensor/waqi.py
    homeassistant/components/sensor/xbox_live.py
    homeassistant/components/sensor/yweather.py
    homeassistant/components/sensor/zamg.py
    homeassistant/components/switch/acer_projector.py
    homeassistant/components/switch/anel_pwrctrl.py
    homeassistant/components/switch/arest.py
    homeassistant/components/switch/broadlink.py
    homeassistant/components/switch/digitalloggers.py
    homeassistant/components/switch/dlink.py
    homeassistant/components/switch/edimax.py
    homeassistant/components/switch/hdmi_cec.py
    homeassistant/components/switch/hikvisioncam.py
    homeassistant/components/switch/hook.py
    homeassistant/components/switch/kankun.py
    homeassistant/components/switch/mystrom.py
    homeassistant/components/switch/netio.py
    homeassistant/components/switch/orvibo.py
    homeassistant/components/switch/pilight.py
    homeassistant/components/switch/pulseaudio_loopback.py
    homeassistant/components/switch/rest.py
    homeassistant/components/switch/rpi_rf.py
    homeassistant/components/switch/tplink.py
    homeassistant/components/switch/transmission.py
    homeassistant/components/switch/wake_on_lan.py
    homeassistant/components/thingspeak.py
    homeassistant/components/tts/picotts.py
    homeassistant/components/upnp.py
    homeassistant/components/weather/bom.py
    homeassistant/components/weather/openweathermap.py
    homeassistant/components/zeroconf.py


[report]
# Regexes for lines to exclude from consideration
exclude_lines =
    # Have to re-enable the standard pragma
    pragma: no cover

    # Don't complain about missing debug-only code:
    def __repr__

    # Don't complain if tests don't hit defensive assertion code:
    raise AssertionError
    raise NotImplementedError
