Coverage report: 91%

Files Functions Classes

coverage.py v7.10.6, created at 2025-11-21 23:31 +0000

File function statements missing excluded coverage
custom_components/supernotify/__init__.py (no function) 194 0 0 100%
custom_components/supernotify/archive.py ArchivableObject.base_filename 1 1 0 0%
custom_components/supernotify/archive.py ArchivableObject.contents 1 1 0 0%
custom_components/supernotify/archive.py ArchiveTopic.__init__ 6 0 0 100%
custom_components/supernotify/archive.py ArchiveTopic.initialize 3 0 0 100%
custom_components/supernotify/archive.py ArchiveTopic.archive 11 3 0 73%
custom_components/supernotify/archive.py ArchiveDirectory.__init__ 6 0 0 100%
custom_components/supernotify/archive.py ArchiveDirectory.initialize 16 5 0 69%
custom_components/supernotify/archive.py ArchiveDirectory.archive 19 6 0 68%
custom_components/supernotify/archive.py ArchiveDirectory.size 4 1 0 75%
custom_components/supernotify/archive.py ArchiveDirectory.cleanup 21 4 0 81%
custom_components/supernotify/archive.py NotificationArchive.__init__ 11 0 0 100%
custom_components/supernotify/archive.py NotificationArchive.initialize 10 0 0 100%
custom_components/supernotify/archive.py NotificationArchive.size 1 0 0 100%
custom_components/supernotify/archive.py NotificationArchive.cleanup 2 0 0 100%
custom_components/supernotify/archive.py NotificationArchive.archive 8 0 0 100%
custom_components/supernotify/archive.py (no function) 38 0 0 100%
custom_components/supernotify/common.py safe_get 2 0 0 100%
custom_components/supernotify/common.py safe_extend 9 0 0 100%
custom_components/supernotify/common.py ensure_list 7 0 0 100%
custom_components/supernotify/common.py ensure_dict 7 0 0 100%
custom_components/supernotify/common.py CallRecord.contents 8 1 0 88%
custom_components/supernotify/common.py (no function) 17 0 0 100%
custom_components/supernotify/context.py Context.__init__ 15 0 0 100%
custom_components/supernotify/context.py Context.initialize 13 4 0 69%
custom_components/supernotify/context.py Context.configure_for_tests 1 0 0 100%
custom_components/supernotify/context.py (no function) 13 0 10 100%
custom_components/supernotify/delivery.py Delivery.__init__ 11 0 0 100%
custom_components/supernotify/delivery.py Delivery.validate 22 0 0 100%
custom_components/supernotify/delivery.py Delivery.select_targets 5 0 0 100%
custom_components/supernotify/delivery.py Delivery.select_targets.selected 5 0 0 100%
custom_components/supernotify/delivery.py Delivery.evaluate_conditions 5 1 0 80%
custom_components/supernotify/delivery.py Delivery.option 7 0 0 100%
custom_components/supernotify/delivery.py Delivery.option_bool 1 0 0 100%
custom_components/supernotify/delivery.py Delivery.option_str 1 0 0 100%
custom_components/supernotify/delivery.py Delivery.as_dict 3 0 0 100%
custom_components/supernotify/delivery.py Delivery.attributes 4 0 0 100%
custom_components/supernotify/delivery.py DeliveryRegistry.__init__ 9 0 0 100%
custom_components/supernotify/delivery.py DeliveryRegistry.initialize 3 0 0 100%
custom_components/supernotify/delivery.py DeliveryRegistry.initialize_deliveries 8 0 0 100%
custom_components/supernotify/delivery.py DeliveryRegistry.fallback_by_default_deliveries 1 0 0 100%
custom_components/supernotify/delivery.py DeliveryRegistry.fallback_on_error_deliveries 1 0 0 100%
custom_components/supernotify/delivery.py DeliveryRegistry.implicit_deliveries 1 0 0 100%
custom_components/supernotify/delivery.py DeliveryRegistry.initialize_transports 17 0 0 100%
custom_components/supernotify/delivery.py DeliveryRegistry.initialize_transport_deliveries 9 0 0 100%
custom_components/supernotify/delivery.py DeliveryRegistry.autogenerate_deliveries 14 0 0 100%
custom_components/supernotify/delivery.py (no function) 33 0 0 100%
custom_components/supernotify/envelope.py Envelope.__init__ 34 0 0 100%
custom_components/supernotify/envelope.py Envelope.grab_image 4 0 0 100%
custom_components/supernotify/envelope.py Envelope.core_action_data 8 0 0 100%
custom_components/supernotify/envelope.py Envelope.contents 7 1 0 86%
custom_components/supernotify/envelope.py Envelope.__eq__ 3 1 0 67%
custom_components/supernotify/envelope.py Envelope.__repr__ 1 0 0 100%
custom_components/supernotify/envelope.py (no function) 17 0 4 100%
custom_components/supernotify/hass_api.py HomeAssistantAPI.__init__ 7 0 0 100%
custom_components/supernotify/hass_api.py HomeAssistantAPI.initialize 16 0 0 100%
custom_components/supernotify/hass_api.py HomeAssistantAPI.in_hass_loop 1 0 0 100%
custom_components/supernotify/hass_api.py HomeAssistantAPI.get_state 3 1 0 67%
custom_components/supernotify/hass_api.py HomeAssistantAPI.set_state 5 2 0 60%
custom_components/supernotify/hass_api.py HomeAssistantAPI.has_service 3 0 0 100%
custom_components/supernotify/hass_api.py HomeAssistantAPI.call_service 23 1 0 96%
custom_components/supernotify/hass_api.py HomeAssistantAPI.expand_group 3 1 0 67%
custom_components/supernotify/hass_api.py HomeAssistantAPI.template 1 0 0 100%
custom_components/supernotify/hass_api.py HomeAssistantAPI.trace_condition 12 0 0 100%
custom_components/supernotify/hass_api.py HomeAssistantAPI.evaluate_condition 14 1 0 93%
custom_components/supernotify/hass_api.py HomeAssistantAPI.abs_url 8 3 0 62%
custom_components/supernotify/hass_api.py HomeAssistantAPI.raise_issue 3 1 0 67%
custom_components/supernotify/hass_api.py HomeAssistantAPI.discover_devices 20 3 0 85%
custom_components/supernotify/hass_api.py HomeAssistantAPI.domain_for_device 10 2 0 80%
custom_components/supernotify/hass_api.py HomeAssistantAPI.entity_registry 8 2 0 75%
custom_components/supernotify/hass_api.py HomeAssistantAPI.device_registry 8 2 0 75%
custom_components/supernotify/hass_api.py HomeAssistantAPI.mqtt_available 8 5 0 38%
custom_components/supernotify/hass_api.py HomeAssistantAPI.mqtt_publish 7 7 0 0%
custom_components/supernotify/hass_api.py force_strict_template_mode 7 0 0 100%
custom_components/supernotify/hass_api.py force_strict_template_mode.TemplateWrapper.__init__ 1 0 0 100%
custom_components/supernotify/hass_api.py force_strict_template_mode.TemplateWrapper.__getattr__ 3 1 0 67%
custom_components/supernotify/hass_api.py force_strict_template_mode.TemplateWrapper.__setattr__ 1 0 0 100%
custom_components/supernotify/hass_api.py force_strict_template_mode.wrap_template 7 2 0 71%
custom_components/supernotify/hass_api.py trace_action 10 4 0 60%
custom_components/supernotify/hass_api.py (no function) 48 0 9 100%
custom_components/supernotify/media_grab.py snapshot_from_url 41 6 0 85%
custom_components/supernotify/media_grab.py move_camera_to_ptz_preset 9 3 0 67%
custom_components/supernotify/media_grab.py snap_image 27 6 0 78%
custom_components/supernotify/media_grab.py snap_camera 20 6 0 70%
custom_components/supernotify/media_grab.py select_avail_camera 27 2 0 93%
custom_components/supernotify/media_grab.py grab_image 38 9 0 76%
custom_components/supernotify/media_grab.py (no function) 24 0 2 100%
custom_components/supernotify/model.py Target.__init__ 50 2 0 96%
custom_components/supernotify/model.py Target.email 1 0 0 100%
custom_components/supernotify/model.py Target.entity_ids 1 0 0 100%
custom_components/supernotify/model.py Target.person_ids 1 0 0 100%
custom_components/supernotify/model.py Target.device_ids 1 0 0 100%
custom_components/supernotify/model.py Target.phone 1 0 0 100%
custom_components/supernotify/model.py Target.mobile_app_ids 1 0 0 100%
custom_components/supernotify/model.py Target.custom_ids 1 0 0 100%
custom_components/supernotify/model.py Target.area_ids 1 0 0 100%
custom_components/supernotify/model.py Target.floor_ids 1 0 0 100%
custom_components/supernotify/model.py Target.label_ids 1 0 0 100%
custom_components/supernotify/model.py Target.is_device_id 1 0 0 100%
custom_components/supernotify/model.py Target.is_entity_id 1 0 0 100%
custom_components/supernotify/model.py Target.is_person_id 1 0 0 100%
custom_components/supernotify/model.py Target.is_phone 1 0 0 100%
custom_components/supernotify/model.py Target.is_mobile_app_id 1 0 0 100%
custom_components/supernotify/model.py Target.is_email 1 0 0 100%
custom_components/supernotify/model.py Target.has_targets 1 0 0 100%
custom_components/supernotify/model.py Target.has_resolved_target 1 0 0 100%
custom_components/supernotify/model.py Target.for_category 1 0 0 100%
custom_components/supernotify/model.py Target.direct_categories 1 0 0 100%
custom_components/supernotify/model.py Target.direct 4 1 0 75%
custom_components/supernotify/model.py Target.extend 3 0 0 100%
custom_components/supernotify/model.py Target.remove 3 0 0 100%
custom_components/supernotify/model.py Target.safe_copy 3 0 0 100%
custom_components/supernotify/model.py Target.split_by_target_data 27 0 0 100%
custom_components/supernotify/model.py Target.__len__ 1 0 0 100%
custom_components/supernotify/model.py Target.__add__ 16 1 0 94%
custom_components/supernotify/model.py Target.__sub__ 9 1 0 89%
custom_components/supernotify/model.py Target.__eq__ 11 3 0 73%
custom_components/supernotify/model.py Target.as_dict 1 0 0 100%
custom_components/supernotify/model.py TransportConfig.__init__ 12 0 0 100%
custom_components/supernotify/model.py DeliveryConfig.__init__ 24 0 0 100%
custom_components/supernotify/model.py DeliveryConfig.as_dict 1 0 0 100%
custom_components/supernotify/model.py DeliveryConfig.__repr__ 1 0 0 100%
custom_components/supernotify/model.py ConditionVariables.__init__ 16 1 0 94%
custom_components/supernotify/model.py ConditionVariables.as_dict 1 0 0 100%
custom_components/supernotify/model.py TargetRequired._missing_ 5 1 0 80%
custom_components/supernotify/model.py (no function) 118 0 0 100%
custom_components/supernotify/notification.py Notification.__init__ 45 0 0 100%
custom_components/supernotify/notification.py Notification.initialize 26 3 0 88%
custom_components/supernotify/notification.py Notification.validate_action_data 8 5 0 38%
custom_components/supernotify/notification.py Notification.apply_enabled_scenarios 8 2 0 75%
custom_components/supernotify/notification.py Notification.select_deliveries 31 0 0 100%
custom_components/supernotify/notification.py Notification.default_media_from_actions 12 7 0 42%
custom_components/supernotify/notification.py Notification._render_scenario_templates 15 2 0 87%
custom_components/supernotify/notification.py Notification.message 20 0 0 100%
custom_components/supernotify/notification.py Notification.title 14 0 0 100%
custom_components/supernotify/notification.py Notification.suppress 2 0 0 100%
custom_components/supernotify/notification.py Notification.deliver 19 4 0 79%
custom_components/supernotify/notification.py Notification.call_transport 36 4 0 89%
custom_components/supernotify/notification.py Notification.hash 2 0 0 100%
custom_components/supernotify/notification.py Notification.hash.alphaize 1 0 0 100%
custom_components/supernotify/notification.py Notification.contents 15 1 0 93%
custom_components/supernotify/notification.py Notification.base_filename 1 0 0 100%
custom_components/supernotify/notification.py Notification.delivery_data 2 0 0 100%
custom_components/supernotify/notification.py Notification.delivery_scenarios 1 1 0 0%
custom_components/supernotify/notification.py Notification.select_scenarios 1 0 0 100%
custom_components/supernotify/notification.py Notification.merge 8 0 0 100%
custom_components/supernotify/notification.py Notification.filter_people_by_occupancy 21 3 0 86%
custom_components/supernotify/notification.py Notification.generate_recipients 59 4 0 93%
custom_components/supernotify/notification.py Notification.default_person_ids 3 0 0 100%
custom_components/supernotify/notification.py Notification.resolve_indirect_targets 17 0 0 100%
custom_components/supernotify/notification.py Notification.generate_envelopes 11 0 0 100%
custom_components/supernotify/notification.py DebugTrace.__init__ 7 0 0 100%
custom_components/supernotify/notification.py DebugTrace.contents 1 0 0 100%
custom_components/supernotify/notification.py DebugTrace.record_target 14 0 0 100%
custom_components/supernotify/notification.py DebugTrace.record_delivery_selection 1 0 0 100%
custom_components/supernotify/notification.py (no function) 51 0 4 100%
custom_components/supernotify/notify.py async_get_service 31 0 0 100%
custom_components/supernotify/notify.py async_get_service.supplemental_action_refresh_entities 1 1 0 0%
custom_components/supernotify/notify.py async_get_service.supplemental_action_enquire_implicit_deliveries 1 0 0 100%
custom_components/supernotify/notify.py async_get_service.supplemental_action_enquire_deliveries_by_scenario 1 0 0 100%
custom_components/supernotify/notify.py async_get_service.supplemental_action_enquire_last_notification 1 0 0 100%
custom_components/supernotify/notify.py async_get_service.supplemental_action_enquire_active_scenarios 5 0 0 100%
custom_components/supernotify/notify.py async_get_service.supplemental_action_enquire_scenarios 1 1 0 0%
custom_components/supernotify/notify.py async_get_service.supplemental_action_enquire_occupancy 1 1 0 0%
custom_components/supernotify/notify.py async_get_service.supplemental_action_enquire_snoozes 1 1 0 0%
custom_components/supernotify/notify.py async_get_service.supplemental_action_clear_snoozes 1 1 0 0%
custom_components/supernotify/notify.py async_get_service.supplemental_action_enquire_people 1 0 0 100%
custom_components/supernotify/notify.py async_get_service.supplemental_action_purge_archive 6 1 0 83%
custom_components/supernotify/notify.py SupernotifyEntity.__init__ 3 3 0 0%
custom_components/supernotify/notify.py SupernotifyEntity.async_send_message 1 1 0 0%
custom_components/supernotify/notify.py SupernotifyAction.__init__ 11 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.initialize 14 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.async_shutdown 2 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.async_unregister_services 3 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.shutdown 7 2 0 71%
custom_components/supernotify/notify.py SupernotifyAction.async_send_message 24 6 0 75%
custom_components/supernotify/notify.py SupernotifyAction._entity_state_change_listener 47 7 0 85%
custom_components/supernotify/notify.py SupernotifyAction.expose_entities 9 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.dupe_check 13 1 0 92%
custom_components/supernotify/notify.py SupernotifyAction.enquire_implicit_deliveries 7 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.enquire_deliveries_by_scenario 1 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.enquire_occupancy 1 1 0 0%
custom_components/supernotify/notify.py SupernotifyAction.enquire_active_scenarios 3 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.trace_active_scenarios 11 1 0 91%
custom_components/supernotify/notify.py SupernotifyAction.trace_active_scenarios.safe_json 1 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.enquire_scenarios 1 1 0 0%
custom_components/supernotify/notify.py SupernotifyAction.enquire_snoozes 1 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.clear_snoozes 1 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.enquire_people 5 0 0 100%
custom_components/supernotify/notify.py SupernotifyAction.on_mobile_action 4 1 0 75%
custom_components/supernotify/notify.py SupernotifyAction.async_nightly_tasks 4 4 0 0%
custom_components/supernotify/notify.py (no function) 72 0 3 100%
custom_components/supernotify/people.py PeopleRegistry.__init__ 5 0 0 100%
custom_components/supernotify/people.py PeopleRegistry.initialize 22 2 0 91%
custom_components/supernotify/people.py PeopleRegistry.refresh_tracker_state 8 2 0 75%
custom_components/supernotify/people.py PeopleRegistry.determine_occupancy 7 0 0 100%
custom_components/supernotify/people.py PeopleRegistry.mobile_devices_for_person 20 3 0 85%
custom_components/supernotify/people.py (no function) 16 0 4 100%
custom_components/supernotify/scenario.py ScenarioRegistry.__init__ 4 0 0 100%
custom_components/supernotify/scenario.py ScenarioRegistry.initialize 5 0 0 100%
custom_components/supernotify/scenario.py ScenarioRegistry.refresh 20 0 0 100%
custom_components/supernotify/scenario.py Scenario.__init__ 12 0 0 100%
custom_components/supernotify/scenario.py Scenario.validate 32 2 0 94%
custom_components/supernotify/scenario.py Scenario.attributes 8 1 0 88%
custom_components/supernotify/scenario.py Scenario.contents 1 0 0 100%
custom_components/supernotify/scenario.py Scenario.evaluate 9 3 0 67%
custom_components/supernotify/scenario.py Scenario.trace 7 0 0 100%
custom_components/supernotify/scenario.py trace_action 10 10 0 0%
custom_components/supernotify/scenario.py (no function) 32 0 3 100%
custom_components/supernotify/snoozer.py Snooze.__init__ 9 0 0 100%
custom_components/supernotify/snoozer.py Snooze.std_recipient 1 0 0 100%
custom_components/supernotify/snoozer.py Snooze.short_key 2 0 0 100%
custom_components/supernotify/snoozer.py Snooze.__eq__ 3 1 0 67%
custom_components/supernotify/snoozer.py Snooze.__repr__ 1 1 0 0%
custom_components/supernotify/snoozer.py Snooze.active 1 0 0 100%
custom_components/supernotify/snoozer.py Snooze.export 1 0 0 100%
custom_components/supernotify/snoozer.py Snoozer.__init__ 2 0 0 100%
custom_components/supernotify/snoozer.py Snoozer.handle_command_event 45 16 0 64%
custom_components/supernotify/snoozer.py Snoozer.register_snooze 12 1 0 92%
custom_components/supernotify/snoozer.py Snoozer.purge_snoozes 3 3 0 0%
custom_components/supernotify/snoozer.py Snoozer.clear 3 0 0 100%
custom_components/supernotify/snoozer.py Snoozer.export 1 0 0 100%
custom_components/supernotify/snoozer.py Snoozer.current_snoozes 25 5 0 80%
custom_components/supernotify/snoozer.py Snoozer.is_global_snooze 9 0 0 100%
custom_components/supernotify/snoozer.py Snoozer.filter_recipients 19 0 0 100%
custom_components/supernotify/snoozer.py (no function) 37 0 0 100%
custom_components/supernotify/transport.py Transport.__init__ 15 0 0 100%
custom_components/supernotify/transport.py Transport.initialize 15 1 0 93%
custom_components/supernotify/transport.py Transport.targets 1 0 0 100%
custom_components/supernotify/transport.py Transport.default_config 1 1 0 0%
custom_components/supernotify/transport.py Transport.auto_configure 1 0 0 100%
custom_components/supernotify/transport.py Transport.validate_action 1 0 0 100%
custom_components/supernotify/transport.py Transport.attributes 9 4 0 56%
custom_components/supernotify/transport.py Transport.deliver 0 0 0 100%
custom_components/supernotify/transport.py Transport.set_action_data 3 3 0 0%
custom_components/supernotify/transport.py Transport.call_action 27 2 0 93%
custom_components/supernotify/transport.py Transport.record_error 4 0 0 100%
custom_components/supernotify/transport.py Transport.simplify 8 0 0 100%
custom_components/supernotify/transport.py (no function) 34 0 5 100%
custom_components/supernotify/transports/__init__.py (no function) 0 0 0 100%
custom_components/supernotify/transports/alexa_devices.py AlexaDevicesTransport.__init__ 1 0 0 100%
custom_components/supernotify/transports/alexa_devices.py AlexaDevicesTransport.default_config 6 0 0 100%
custom_components/supernotify/transports/alexa_devices.py AlexaDevicesTransport.deliver 8 2 0 75%
custom_components/supernotify/transports/alexa_devices.py (no function) 15 0 0 100%
custom_components/supernotify/transports/alexa_media_player.py AlexaMediaPlayerTransport.__init__ 1 0 0 100%
custom_components/supernotify/transports/alexa_media_player.py AlexaMediaPlayerTransport.default_config 5 0 0 100%
custom_components/supernotify/transports/alexa_media_player.py AlexaMediaPlayerTransport.validate_action 1 0 0 100%
custom_components/supernotify/transports/alexa_media_player.py AlexaMediaPlayerTransport.deliver 9 3 0 67%
custom_components/supernotify/transports/alexa_media_player.py (no function) 17 0 0 100%
custom_components/supernotify/transports/chime.py ChimeTargetConfig.__init__ 15 2 0 87%
custom_components/supernotify/transports/chime.py ChimeTargetConfig.__repr__ 3 3 0 0%
custom_components/supernotify/transports/chime.py ChimeTransport.__init__ 1 0 0 100%
custom_components/supernotify/transports/chime.py ChimeTransport.default_config 6 0 0 100%
custom_components/supernotify/transports/chime.py ChimeTransport.chime_aliases 1 0 0 100%
custom_components/supernotify/transports/chime.py ChimeTransport.validate_action 1 0 0 100%
custom_components/supernotify/transports/chime.py ChimeTransport.deliver 28 2 0 93%
custom_components/supernotify/transports/chime.py ChimeTransport.prune_data 7 0 0 100%
custom_components/supernotify/transports/chime.py ChimeTransport.analyze_target 55 5 0 91%
custom_components/supernotify/transports/chime.py ChimeTransport.resolve_tune 22 0 0 100%
custom_components/supernotify/transports/chime.py (no function) 27 0 0 100%
custom_components/supernotify/transports/email.py EmailTransport.__init__ 9 0 0 100%
custom_components/supernotify/transports/email.py EmailTransport.validate_action 1 0 0 100%
custom_components/supernotify/transports/email.py EmailTransport.default_config 3 0 0 100%
custom_components/supernotify/transports/email.py EmailTransport.deliver 37 4 0 89%
custom_components/supernotify/transports/email.py EmailTransport.render_template 15 6 0 60%
custom_components/supernotify/transports/email.py (no function) 20 0 2 100%
custom_components/supernotify/transports/generic.py GenericTransport.__init__ 1 0 0 100%
custom_components/supernotify/transports/generic.py GenericTransport.default_config 4 0 0 100%
custom_components/supernotify/transports/generic.py GenericTransport.validate_action 4 0 0 100%
custom_components/supernotify/transports/generic.py GenericTransport.deliver 16 0 0 100%
custom_components/supernotify/transports/generic.py (no function) 17 0 0 100%
custom_components/supernotify/transports/media_player.py MediaPlayerTransport.__init__ 1 0 0 100%
custom_components/supernotify/transports/media_player.py MediaPlayerTransport.default_config 4 0 0 100%
custom_components/supernotify/transports/media_player.py MediaPlayerTransport.deliver 16 3 0 81%
custom_components/supernotify/transports/media_player.py (no function) 16 0 0 100%
custom_components/supernotify/transports/mobile_push.py MobilePushTransport.__init__ 2 0 0 100%
custom_components/supernotify/transports/mobile_push.py MobilePushTransport.default_config 4 0 0 100%
custom_components/supernotify/transports/mobile_push.py MobilePushTransport.validate_action 1 0 0 100%
custom_components/supernotify/transports/mobile_push.py MobilePushTransport.action_title 12 0 0 100%
custom_components/supernotify/transports/mobile_push.py MobilePushTransport.deliver 68 7 0 90%
custom_components/supernotify/transports/mobile_push.py (no function) 20 0 0 100%
custom_components/supernotify/transports/mqtt.py MQTTTransport.__init__ 1 0 0 100%
custom_components/supernotify/transports/mqtt.py MQTTTransport.default_config 5 0 0 100%
custom_components/supernotify/transports/mqtt.py MQTTTransport.validate_action 1 0 0 100%
custom_components/supernotify/transports/mqtt.py MQTTTransport.recipient_target 1 1 0 0%
custom_components/supernotify/transports/mqtt.py MQTTTransport.deliver 7 1 0 86%
custom_components/supernotify/transports/mqtt.py (no function) 18 0 0 100%
custom_components/supernotify/transports/notify_entity.py NotifyEntityTransport.__init__ 1 0 0 100%
custom_components/supernotify/transports/notify_entity.py NotifyEntityTransport.default_config 5 0 0 100%
custom_components/supernotify/transports/notify_entity.py NotifyEntityTransport.auto_configure 1 0 0 100%
custom_components/supernotify/transports/notify_entity.py NotifyEntityTransport.deliver 7 1 0 86%
custom_components/supernotify/transports/notify_entity.py (no function) 18 0 0 100%
custom_components/supernotify/transports/persistent.py PersistentTransport.__init__ 1 0 0 100%
custom_components/supernotify/transports/persistent.py PersistentTransport.default_config 4 0 0 100%
custom_components/supernotify/transports/persistent.py PersistentTransport.deliver 5 0 0 100%
custom_components/supernotify/transports/persistent.py (no function) 13 0 0 100%
custom_components/supernotify/transports/sms.py SMSTransport.__init__ 1 0 0 100%
custom_components/supernotify/transports/sms.py SMSTransport.default_config 3 0 0 100%
custom_components/supernotify/transports/sms.py SMSTransport.validate_action 1 0 0 100%
custom_components/supernotify/transports/sms.py SMSTransport.deliver 13 4 0 69%
custom_components/supernotify/transports/sms.py (no function) 17 0 0 100%
Total   3310 284 46 91%

No items found using the specified filter.