Coverage report: 84%

Files Functions Classes

coverage.py v7.8.2, created at 2025-08-12 14:35 +0000

File function statements missing excluded branches partial coverage
amqtt/__init__.py (no function) 1 0 0 0 0 100%
amqtt/adapters.py ReaderAdapter.read 1 0 0 0 0 100%
amqtt/adapters.py ReaderAdapter.feed_eof 1 0 0 0 0 100%
amqtt/adapters.py WriterAdapter.write 1 0 0 0 0 100%
amqtt/adapters.py WriterAdapter.drain 1 0 0 0 0 100%
amqtt/adapters.py WriterAdapter.get_peer_info 1 0 0 0 0 100%
amqtt/adapters.py WriterAdapter.get_ssl_info 1 1 0 0 0 0%
amqtt/adapters.py WriterAdapter.close 1 0 0 0 0 100%
amqtt/adapters.py WebSocketsReader.__init__ 2 0 0 0 0 100%
amqtt/adapters.py WebSocketsReader.read 2 0 0 0 0 100%
amqtt/adapters.py WebSocketsReader._feed_buffer 10 0 0 4 0 100%
amqtt/adapters.py WebSocketsReader.feed_eof 1 1 0 0 0 0%
amqtt/adapters.py WebSocketsWriter.__init__ 2 0 0 0 0 100%
amqtt/adapters.py WebSocketsWriter.write 1 0 0 0 0 100%
amqtt/adapters.py WebSocketsWriter.drain 4 0 0 2 1 83%
amqtt/adapters.py WebSocketsWriter.get_peer_info 2 0 0 0 0 100%
amqtt/adapters.py WebSocketsWriter.get_ssl_info 1 0 0 0 0 100%
amqtt/adapters.py WebSocketsWriter.close 1 0 0 0 0 100%
amqtt/adapters.py StreamReaderAdapter.__init__ 1 0 0 0 0 100%
amqtt/adapters.py StreamReaderAdapter.read 4 1 0 2 1 67%
amqtt/adapters.py StreamReaderAdapter.feed_eof 1 1 0 0 0 0%
amqtt/adapters.py StreamWriterAdapter.__init__ 3 0 0 0 0 100%
amqtt/adapters.py StreamWriterAdapter.write 2 0 0 2 1 75%
amqtt/adapters.py StreamWriterAdapter.drain 2 0 0 2 1 75%
amqtt/adapters.py StreamWriterAdapter.get_peer_info 2 0 0 0 0 100%
amqtt/adapters.py StreamWriterAdapter.get_ssl_info 1 0 0 0 0 100%
amqtt/adapters.py StreamWriterAdapter.close 8 0 0 4 0 100%
amqtt/adapters.py BufferReader.__init__ 1 0 0 0 0 100%
amqtt/adapters.py BufferReader.read 1 0 0 0 0 100%
amqtt/adapters.py BufferReader.feed_eof 1 1 0 0 0 0%
amqtt/adapters.py BufferWriter.get_ssl_info 1 1 0 0 0 0%
amqtt/adapters.py BufferWriter.__init__ 1 1 0 0 0 0%
amqtt/adapters.py BufferWriter.write 1 1 0 0 0 0%
amqtt/adapters.py BufferWriter.drain 1 1 0 0 0 0%
amqtt/adapters.py BufferWriter.get_buffer 1 1 0 0 0 0%
amqtt/adapters.py BufferWriter.get_peer_info 1 1 0 0 0 0%
amqtt/adapters.py BufferWriter.close 1 1 0 0 0 0%
amqtt/adapters.py (no function) 60 0 0 0 0 100%
amqtt/broker.py RetainedApplicationMessage.__init__ 5 0 0 0 0 100%
amqtt/broker.py Server.__init__ 6 0 0 0 0 100%
amqtt/broker.py Server.acquire_connection 4 0 0 2 0 100%
amqtt/broker.py Server.release_connection 4 0 0 2 0 100%
amqtt/broker.py Server.close_instance 3 0 0 2 1 80%
amqtt/broker.py ExternalServer.__init__ 1 0 0 0 0 100%
amqtt/broker.py ExternalServer.acquire_connection 1 0 0 0 0 100%
amqtt/broker.py ExternalServer.release_connection 1 0 0 0 0 100%
amqtt/broker.py ExternalServer.close_instance 1 1 0 0 0 0%
amqtt/broker.py BrokerContext.__init__ 3 0 0 0 0 100%
amqtt/broker.py BrokerContext.broadcast_message 1 0 0 0 0 100%
amqtt/broker.py BrokerContext.retain_message 1 0 0 0 0 100%
amqtt/broker.py BrokerContext.sessions 2 0 0 2 0 100%
amqtt/broker.py BrokerContext.get_session 1 0 0 0 0 100%
amqtt/broker.py BrokerContext.retained_messages 1 0 0 0 0 100%
amqtt/broker.py BrokerContext.subscriptions 1 0 0 0 0 100%
amqtt/broker.py BrokerContext.add_subscription 6 0 0 4 0 100%
amqtt/broker.py Broker.__init__ 21 0 0 2 0 100%
amqtt/broker.py Broker._init_states 8 0 0 0 0 100%
amqtt/broker.py Broker._log_state_change 1 0 0 0 0 100%
amqtt/broker.py Broker.start 23 9 0 0 0 61%
amqtt/broker.py Broker._start_listeners 17 5 0 6 1 74%
amqtt/broker.py Broker._create_ssl_context 11 6 0 0 0 45%
amqtt/broker.py Broker._create_server_instance 8 3 0 4 1 67%
amqtt/broker.py Broker._session_monitor 12 0 0 6 0 100%
amqtt/broker.py Broker.shutdown 19 0 0 10 1 97%
amqtt/broker.py Broker._cleanup_session 8 0 0 4 2 83%
amqtt/broker.py Broker.internal_message_broadcast 1 0 0 0 0 100%
amqtt/broker.py Broker.ws_connected 1 0 0 0 0 100%
amqtt/broker.py Broker.stream_connected 1 0 0 0 0 100%
amqtt/broker.py Broker.external_connected 1 0 0 0 0 100%
amqtt/broker.py Broker._client_connected 23 6 0 4 2 70%
amqtt/broker.py Broker._initialize_client_session 35 6 0 8 1 84%
amqtt/broker.py Broker.create_offline_session 5 0 0 0 0 100%
amqtt/broker.py Broker._handle_client_session 32 11 0 8 1 65%
amqtt/broker.py Broker._client_message_loop 29 3 0 12 0 93%
amqtt/broker.py Broker._handle_disconnect 13 0 0 6 0 100%
amqtt/broker.py Broker._handle_subscription 8 0 0 4 0 100%
amqtt/broker.py Broker._handle_unsubscription 6 0 0 2 0 100%
amqtt/broker.py Broker._handle_message_delivery 23 6 0 12 3 74%
amqtt/broker.py Broker._init_handler 3 3 0 0 0 0%
amqtt/broker.py Broker._stop_handler 4 2 0 0 0 50%
amqtt/broker.py Broker._authenticate 11 0 0 6 0 100%
amqtt/broker.py Broker.retain_message 10 0 0 4 0 100%
amqtt/broker.py Broker.add_subscription 17 2 0 12 2 86%
amqtt/broker.py Broker._topic_filtering 4 0 0 2 0 100%
amqtt/broker.py Broker._delete_session 8 0 0 2 0 100%
amqtt/broker.py Broker._del_all_subscriptions 7 0 0 8 0 100%
amqtt/broker.py Broker._del_subscription 12 0 0 4 0 100%
amqtt/broker.py Broker._broadcast_loop 21 2 0 6 0 93%
amqtt/broker.py Broker._run_broadcast 23 2 0 14 2 89%
amqtt/broker.py Broker._retain_broadcast_message 7 0 0 4 2 82%
amqtt/broker.py Broker._shutdown_broadcast_loop 9 2 0 4 1 77%
amqtt/broker.py Broker._broadcast_message 4 0 0 2 0 100%
amqtt/broker.py Broker._publish_session_retained_messages 9 0 0 6 1 93%
amqtt/broker.py Broker._publish_retained_messages_for_subscription 13 0 0 8 1 95%
amqtt/broker.py Broker._matches 9 0 0 6 0 100%
amqtt/broker.py Broker._get_handler 4 1 0 2 1 67%
amqtt/broker.py Broker._split_bindaddr_port 15 3 0 4 0 84%
amqtt/broker.py Broker._split_bindaddr_port._parse_port 4 0 0 2 0 100%
amqtt/broker.py Broker.subscriptions 1 0 0 0 0 100%
amqtt/broker.py Broker.retained_messages 1 0 0 0 0 100%
amqtt/broker.py Broker.sessions 1 0 0 0 0 100%
amqtt/broker.py (no function) 104 0 0 0 0 100%
amqtt/client.py ClientContext.__init__ 2 0 0 0 0 100%
amqtt/client.py mqtt_connected 3 0 0 0 0 100%
amqtt/client.py mqtt_connected.wrapper 9 7 0 6 1 20%
amqtt/client.py MQTTClient.__init__ 15 0 0 2 0 100%
amqtt/client.py MQTTClient.connect 14 3 0 2 1 75%
amqtt/client.py MQTTClient.disconnect 13 2 0 6 2 79%
amqtt/client.py MQTTClient.cancel_tasks 3 2 0 2 1 40%
amqtt/client.py MQTTClient.reconnect 28 10 0 6 3 62%
amqtt/client.py MQTTClient._do_connect 3 0 0 0 0 100%
amqtt/client.py MQTTClient.ping 7 5 0 6 1 23%
amqtt/client.py MQTTClient.publish 6 2 0 2 1 62%
amqtt/client.py MQTTClient.publish.get_retain_and_qos 14 2 0 6 1 85%
amqtt/client.py MQTTClient.subscribe 3 1 0 2 1 60%
amqtt/client.py MQTTClient.unsubscribe 2 0 0 2 1 75%
amqtt/client.py MQTTClient.deliver_message 17 3 0 8 3 76%
amqtt/client.py MQTTClient._connect_coro 65 5 0 24 4 90%
amqtt/client.py MQTTClient.handle_connection_close 21 5 0 6 2 74%
amqtt/client.py MQTTClient.handle_connection_close.cancel_tasks 5 3 0 4 1 33%
amqtt/client.py MQTTClient._init_session 29 4 0 14 3 84%
amqtt/client.py (no function) 44 0 2 0 0 100%
amqtt/codecs_amqtt.py bytes_to_hex_str 1 0 0 0 0 100%
amqtt/codecs_amqtt.py bytes_to_int 3 0 0 2 0 100%
amqtt/codecs_amqtt.py int_to_bytes 6 2 0 2 1 62%
amqtt/codecs_amqtt.py read_or_raise 8 0 0 2 0 100%
amqtt/codecs_amqtt.py decode_string 11 2 0 4 0 87%
amqtt/codecs_amqtt.py decode_data_with_length 5 1 0 2 1 71%
amqtt/codecs_amqtt.py encode_string 3 0 0 0 0 100%
amqtt/codecs_amqtt.py encode_data_with_length 2 0 0 0 0 100%
amqtt/codecs_amqtt.py decode_packet_id 4 0 0 0 0 100%
amqtt/codecs_amqtt.py int_to_bytes_str 1 0 0 0 0 100%
amqtt/codecs_amqtt.py float_to_bytes_str 3 0 0 0 0 100%
amqtt/codecs_amqtt.py (no function) 16 0 0 0 0 100%
amqtt/contexts.py BaseContext.__init__ 3 0 0 0 0 100%
amqtt/contexts.py ListenerType.__repr__ 1 1 0 0 0 0%
amqtt/contexts.py Dictable.__getitem__ 1 0 0 0 0 100%
amqtt/contexts.py Dictable.get 7 2 0 4 1 73%
amqtt/contexts.py Dictable.__contains__ 1 0 0 0 0 100%
amqtt/contexts.py Dictable.__iter__ 2 2 0 2 0 0%
amqtt/contexts.py Dictable.copy 1 0 0 0 0 100%
amqtt/contexts.py Dictable._coerce_lists 6 6 0 4 0 0%
amqtt/contexts.py ListenerConfig.__post_init__ 9 5 0 8 3 53%
amqtt/contexts.py ListenerConfig.apply 3 0 0 4 0 100%
amqtt/contexts.py default_listeners 1 0 0 0 0 100%
amqtt/contexts.py default_broker_plugins 1 0 0 0 0 100%
amqtt/contexts.py BrokerConfig.__post_init__ 17 0 0 14 0 100%
amqtt/contexts.py BrokerConfig.from_dict 8 1 0 6 1 86%
amqtt/contexts.py ConnectionConfig.__post__init__ 6 6 0 6 0 0%
amqtt/contexts.py TopicConfig.__post__init__ 3 3 0 2 0 0%
amqtt/contexts.py WillConfig.__post__init__ 3 3 0 2 0 0%
amqtt/contexts.py default_client_plugins 1 0 0 0 0 100%
amqtt/contexts.py ClientConfig.__post_init__ 9 4 0 6 2 60%
amqtt/contexts.py ClientConfig.from_dict 3 1 0 2 1 60%
amqtt/contexts.py (no function) 148 4 2 0 0 97%
amqtt/contrib/__init__.py DataClassListJSON.__init__ 5 2 0 2 1 57%
amqtt/contrib/__init__.py DataClassListJSON.process_bind_param 3 1 0 2 1 60%
amqtt/contrib/__init__.py DataClassListJSON.process_result_value 3 1 0 2 1 60%
amqtt/contrib/__init__.py DataClassListJSON.process_literal_param 1 1 0 0 0 0%
amqtt/contrib/__init__.py DataClassListJSON.python_type 1 1 0 0 0 0%
amqtt/contrib/__init__.py (no function) 13 0 0 0 0 100%
amqtt/contrib/auth_db/__init__.py db_connection_str 6 0 0 2 0 100%
amqtt/contrib/auth_db/__init__.py (no function) 21 4 0 0 0 81%
amqtt/contrib/auth_db/managers.py UserManager.__init__ 2 0 0 0 0 100%
amqtt/contrib/auth_db/managers.py UserManager.db_sync 2 0 0 0 0 100%
amqtt/contrib/auth_db/managers.py UserManager._get_auth_or_raise 7 0 0 2 0 100%
amqtt/contrib/auth_db/managers.py UserManager.get_user_auth 5 0 0 0 0 100%
amqtt/contrib/auth_db/managers.py UserManager.list_user_auths 8 3 0 2 1 60%
amqtt/contrib/auth_db/managers.py UserManager.create_user_auth 13 3 0 2 1 73%
amqtt/contrib/auth_db/managers.py UserManager.delete_user_auth 9 2 0 0 0 78%
amqtt/contrib/auth_db/managers.py UserManager.update_user_auth_password 6 0 0 0 0 100%
amqtt/contrib/auth_db/managers.py TopicManager.__init__ 2 0 0 0 0 100%
amqtt/contrib/auth_db/managers.py TopicManager.db_sync 2 0 0 0 0 100%
amqtt/contrib/auth_db/managers.py TopicManager._get_auth_or_raise 7 3 0 2 1 56%
amqtt/contrib/auth_db/managers.py TopicManager._field_name 1 0 0 0 0 100%
amqtt/contrib/auth_db/managers.py TopicManager.create_topic_auth 11 2 0 2 1 77%
amqtt/contrib/auth_db/managers.py TopicManager.get_topic_auth 5 2 0 0 0 60%
amqtt/contrib/auth_db/managers.py TopicManager.list_topic_auths 8 3 0 2 1 60%
amqtt/contrib/auth_db/managers.py TopicManager.add_allowed_topic 11 0 0 2 0 100%
amqtt/contrib/auth_db/managers.py TopicManager.remove_allowed_topic 12 0 0 2 0 100%
amqtt/contrib/auth_db/managers.py (no function) 30 0 0 0 0 100%
amqtt/contrib/auth_db/models.py AllowedTopic.__contains__ 1 0 0 0 0 100%
amqtt/contrib/auth_db/models.py AllowedTopic.__eq__ 6 2 0 4 1 70%
amqtt/contrib/auth_db/models.py AllowedTopic.__str__ 1 1 0 0 0 0%
amqtt/contrib/auth_db/models.py AllowedTopic.__repr__ 1 0 0 0 0 100%
amqtt/contrib/auth_db/models.py PasswordHasher.__init__ 2 0 0 2 0 100%
amqtt/contrib/auth_db/models.py PasswordHasher.__new__ 3 0 0 2 0 100%
amqtt/contrib/auth_db/models.py PasswordHasher.crypt_context 4 2 0 2 1 50%
amqtt/contrib/auth_db/models.py PasswordHasher.crypt_context 1 0 0 0 0 100%
amqtt/contrib/auth_db/models.py UserAuth.password 2 2 0 0 0 0%
amqtt/contrib/auth_db/models.py UserAuth._password_setter 1 0 0 0 0 100%
amqtt/contrib/auth_db/models.py UserAuth.verify_password 1 0 0 0 0 100%
amqtt/contrib/auth_db/models.py UserAuth.__str__ 1 0 0 0 0 100%
amqtt/contrib/auth_db/models.py TopicAuth.get_topic_list 1 0 0 0 0 100%
amqtt/contrib/auth_db/models.py TopicAuth.__str__ 1 0 0 0 0 100%
amqtt/contrib/auth_db/models.py (no function) 51 0 2 0 0 100%
amqtt/contrib/auth_db/plugin.py default_hash_scheme 1 0 0 0 0 100%
amqtt/contrib/auth_db/plugin.py UserAuthDBPlugin.__init__ 5 0 0 0 0 100%
amqtt/contrib/auth_db/plugin.py UserAuthDBPlugin.on_broker_pre_start 4 2 0 2 1 50%
amqtt/contrib/auth_db/plugin.py UserAuthDBPlugin.authenticate 6 2 0 4 2 60%
amqtt/contrib/auth_db/plugin.py TopicAuthDBPlugin.__init__ 3 0 0 0 0 100%
amqtt/contrib/auth_db/plugin.py TopicAuthDBPlugin.on_broker_pre_start 4 2 0 2 1 50%
amqtt/contrib/auth_db/plugin.py TopicAuthDBPlugin.topic_filtering 8 3 0 2 1 60%
amqtt/contrib/auth_db/plugin.py (no function) 35 0 0 0 0 100%
amqtt/contrib/auth_db/topic_mgr_cli.py main 9 2 0 6 1 80%
amqtt/contrib/auth_db/topic_mgr_cli.py db_sync 3 0 0 0 0 100%
amqtt/contrib/auth_db/topic_mgr_cli.py db_sync.run_sync 7 3 0 0 0 57%
amqtt/contrib/auth_db/topic_mgr_cli.py list_clients 2 0 0 0 0 100%
amqtt/contrib/auth_db/topic_mgr_cli.py list_clients.run_list 8 0 0 4 0 100%
amqtt/contrib/auth_db/topic_mgr_cli.py add_topic_allowance 2 0 0 0 0 100%
amqtt/contrib/auth_db/topic_mgr_cli.py add_topic_allowance.run_add 13 4 0 4 2 65%
amqtt/contrib/auth_db/topic_mgr_cli.py remove_topic_allowance 2 0 0 0 0 100%
amqtt/contrib/auth_db/topic_mgr_cli.py remove_topic_allowance.run_remove 15 5 0 4 1 68%
amqtt/contrib/auth_db/topic_mgr_cli.py (no function) 25 1 0 2 1 93%
amqtt/contrib/auth_db/user_mgr_cli.py main 9 2 0 6 1 80%
amqtt/contrib/auth_db/user_mgr_cli.py db_sync 3 0 0 0 0 100%
amqtt/contrib/auth_db/user_mgr_cli.py db_sync.run_sync 7 3 0 0 0 57%
amqtt/contrib/auth_db/user_mgr_cli.py list_user_auths 2 0 0 0 0 100%
amqtt/contrib/auth_db/user_mgr_cli.py list_user_auths.run_list 8 0 0 4 0 100%
amqtt/contrib/auth_db/user_mgr_cli.py create_user_auth 2 0 0 0 0 100%
amqtt/contrib/auth_db/user_mgr_cli.py create_user_auth.run_create 15 5 0 4 1 68%
amqtt/contrib/auth_db/user_mgr_cli.py remove_user_auth 2 0 0 0 0 100%
amqtt/contrib/auth_db/user_mgr_cli.py remove_user_auth.run_remove 13 2 0 6 1 84%
amqtt/contrib/auth_db/user_mgr_cli.py change_password 2 0 0 0 0 100%
amqtt/contrib/auth_db/user_mgr_cli.py change_password.run_password 8 0 0 2 0 100%
amqtt/contrib/auth_db/user_mgr_cli.py (no function) 27 1 0 2 1 93%
amqtt/contrib/cert.py UserAuthCertPlugin.authenticate 18 5 0 8 3 69%
amqtt/contrib/cert.py generate_root_creds 4 0 0 0 0 100%
amqtt/contrib/cert.py generate_server_csr 3 0 0 0 0 100%
amqtt/contrib/cert.py generate_device_csr 3 0 0 0 0 100%
amqtt/contrib/cert.py sign_csr 1 0 0 0 0 100%
amqtt/contrib/cert.py load_ca 5 0 0 0 0 100%
amqtt/contrib/cert.py write_key_and_crt 7 0 0 0 0 100%
amqtt/contrib/cert.py (no function) 32 3 0 0 0 91%
amqtt/contrib/http.py AuthHttpPlugin.__init__ 9 0 0 4 0 100%
amqtt/contrib/http.py AuthHttpPlugin.on_broker_pre_shutdown 1 0 0 0 0 100%
amqtt/contrib/http.py AuthHttpPlugin._is_2xx 1 0 0 0 0 100%
amqtt/contrib/http.py AuthHttpPlugin._is_4xx 1 0 0 0 0 100%
amqtt/contrib/http.py AuthHttpPlugin._get_params 11 0 0 4 0 100%
amqtt/contrib/http.py AuthHttpPlugin._send_request 18 1 0 10 1 93%
amqtt/contrib/http.py AuthHttpPlugin.get_url 1 0 0 0 0 100%
amqtt/contrib/http.py UserAuthHttpPlugin.authenticate 2 0 0 0 0 100%
amqtt/contrib/http.py TopicAuthHttpPlugin.topic_filtering 12 5 0 8 2 45%
amqtt/contrib/http.py (no function) 74 4 0 0 0 95%
amqtt/contrib/jwt.py UserAuthJwtPlugin.authenticate 11 4 0 2 1 62%
amqtt/contrib/jwt.py TopicAuthJwtPlugin.__init__ 2 0 0 0 0 100%
amqtt/contrib/jwt.py TopicAuthJwtPlugin.topic_filtering 14 8 0 4 2 44%
amqtt/contrib/jwt.py (no function) 58 4 0 0 0 93%
amqtt/contrib/ldap.py AuthLdapPlugin.__init__ 7 2 0 0 0 71%
amqtt/contrib/ldap.py UserAuthLdapPlugin.authenticate 19 7 0 2 1 62%
amqtt/contrib/ldap.py TopicAuthLdapPlugin.__init__ 2 0 0 0 0 100%
amqtt/contrib/ldap.py TopicAuthLdapPlugin.topic_filtering 17 6 0 6 3 61%
amqtt/contrib/ldap.py (no function) 41 0 0 0 0 100%
amqtt/contrib/persistence.py SessionDBPlugin.__init__ 6 2 0 2 1 62%
amqtt/contrib/persistence.py SessionDBPlugin._get_or_create_session 7 0 0 2 0 100%
amqtt/contrib/persistence.py SessionDBPlugin._get_or_create_message 7 0 0 2 1 89%
amqtt/contrib/persistence.py SessionDBPlugin.on_broker_client_connected 12 0 0 2 0 100%
amqtt/contrib/persistence.py SessionDBPlugin.on_broker_client_subscribed 10 3 0 4 2 64%
amqtt/contrib/persistence.py SessionDBPlugin.on_broker_client_unsubscribed 0 0 0 0 0 100%
amqtt/contrib/persistence.py SessionDBPlugin.on_broker_retained_message 19 2 0 6 1 88%
amqtt/contrib/persistence.py SessionDBPlugin.on_broker_pre_start 2 0 0 0 0 100%
amqtt/contrib/persistence.py SessionDBPlugin.on_broker_post_start 37 5 0 14 3 84%
amqtt/contrib/persistence.py SessionDBPlugin.on_broker_pre_shutdown 1 0 0 0 0 100%
amqtt/contrib/persistence.py SessionDBPlugin.on_broker_post_shutdown 2 1 0 2 1 50%
amqtt/contrib/persistence.py SessionDBPlugin.Config.__post_init__ 2 1 0 2 1 50%
amqtt/contrib/persistence.py (no function) 63 0 0 0 0 100%
amqtt/contrib/shadows/__init__.py (no function) 3 0 0 0 0 100%
amqtt/contrib/shadows/messages.py asdict_no_none 12 1 0 10 1 91%
amqtt/contrib/shadows/messages.py create_shadow_topic 1 0 0 0 0 100%
amqtt/contrib/shadows/messages.py ShadowMessage.to_message 1 0 0 0 0 100%
amqtt/contrib/shadows/messages.py GetAcceptedMessage.topic 1 0 0 0 0 100%
amqtt/contrib/shadows/messages.py GetRejectedMessage.topic 1 0 0 0 0 100%
amqtt/contrib/shadows/messages.py UpdateAcceptedMessage.topic 1 0 0 0 0 100%
amqtt/contrib/shadows/messages.py UpdateRejectedMessage.topic 1 1 0 0 0 0%
amqtt/contrib/shadows/messages.py UpdateDeltaMessage.topic 1 0 0 0 0 100%
amqtt/contrib/shadows/messages.py UpdateIotaMessage.topic 1 0 0 0 0 100%
amqtt/contrib/shadows/messages.py UpdateDocumentMessage.topic 1 0 0 0 0 100%
amqtt/contrib/shadows/messages.py (no function) 57 0 0 0 0 100%
amqtt/contrib/shadows/models.py ShadowUpdateError.__init__ 1 1 0 0 0 0%
amqtt/contrib/shadows/models.py sync_shadow_base 1 0 0 0 0 100%
amqtt/contrib/shadows/models.py default_state_document 1 1 0 0 0 0%
amqtt/contrib/shadows/models.py Shadow.state 3 0 0 2 0 100%
amqtt/contrib/shadows/models.py Shadow.state 1 0 0 0 0 100%
amqtt/contrib/shadows/models.py Shadow.latest_version 3 0 0 0 0 100%
amqtt/contrib/shadows/models.py Shadow.all 3 0 0 0 0 100%
amqtt/contrib/shadows/models.py assign_incremental_version 3 0 0 0 0 100%
amqtt/contrib/shadows/models.py prevent_update 1 1 0 0 0 0%
amqtt/contrib/shadows/models.py convert_update_to_insert 11 1 0 6 1 88%
amqtt/contrib/shadows/models.py (no function) 41 0 0 0 0 100%
amqtt/contrib/shadows/plugin.py shadow_dict 1 1 0 0 0 0%
amqtt/contrib/shadows/plugin.py ShadowPlugin.__init__ 4 0 0 0 0 100%
amqtt/contrib/shadows/plugin.py ShadowPlugin.on_broker_pre_start 2 0 0 0 0 100%
amqtt/contrib/shadows/plugin.py ShadowPlugin.shadow_topic_match 5 0 0 2 0 100%
amqtt/contrib/shadows/plugin.py ShadowPlugin._handle_get 8 0 0 2 0 100%
amqtt/contrib/shadows/plugin.py ShadowPlugin._handle_update 22 0 0 2 1 96%
amqtt/contrib/shadows/plugin.py ShadowPlugin.on_broker_message_received 10 2 0 8 3 72%
amqtt/contrib/shadows/plugin.py ShadowTopicAuthPlugin.topic_filtering 7 7 0 4 0 0%
amqtt/contrib/shadows/plugin.py (no function) 40 0 0 0 0 100%
amqtt/contrib/shadows/states.py StateError.__init__ 1 1 0 0 0 0%
amqtt/contrib/shadows/states.py MetaTimestamp.__eq__ 6 3 0 4 2 50%
amqtt/contrib/shadows/states.py MetaTimestamp.__abs__ 1 1 0 0 0 0%
amqtt/contrib/shadows/states.py MetaTimestamp.__add__ 1 1 0 0 0 0%
amqtt/contrib/shadows/states.py MetaTimestamp.__sub__ 1 0 0 0 0 100%
amqtt/contrib/shadows/states.py MetaTimestamp.__mul__ 1 1 0 0 0 0%
amqtt/contrib/shadows/states.py MetaTimestamp.__float__ 1 0 0 0 0 100%
amqtt/contrib/shadows/states.py MetaTimestamp.__int__ 1 1 0 0 0 0%
amqtt/contrib/shadows/states.py MetaTimestamp.__lt__ 1 1 0 0 0 0%
amqtt/contrib/shadows/states.py MetaTimestamp.__le__ 1 1 0 0 0 0%
amqtt/contrib/shadows/states.py MetaTimestamp.__gt__ 1 0 0 0 0 100%
amqtt/contrib/shadows/states.py MetaTimestamp.__ge__ 1 1 0 0 0 0%
amqtt/contrib/shadows/states.py create_metadata 8 1 0 6 1 86%
amqtt/contrib/shadows/states.py calculate_delta_update 16 6 0 16 3 59%
amqtt/contrib/shadows/states.py calculate_iota_update 5 0 0 4 0 100%
amqtt/contrib/shadows/states.py State.from_dict 1 0 0 0 0 100%
amqtt/contrib/shadows/states.py State.__bool__ 1 0 0 0 0 100%
amqtt/contrib/shadows/states.py State.__add__ 1 0 0 0 0 100%
amqtt/contrib/shadows/states.py StateDocument.from_dict 6 1 0 2 1 75%
amqtt/contrib/shadows/states.py StateDocument.__post_init__ 3 0 0 2 0 100%
amqtt/contrib/shadows/states.py StateDocument.__add__ 1 0 0 0 0 100%
amqtt/contrib/shadows/states.py (no function) 60 4 0 0 0 93%
amqtt/errors.py ZeroLengthReadError.__init__ 1 0 0 0 0 100%
amqtt/errors.py PluginInitError.__init__ 1 0 0 0 0 100%
amqtt/errors.py (no function) 18 0 0 0 0 100%
amqtt/events.py (no function) 23 4 0 0 0 83%
amqtt/mqtt/__init__.py packet_class 8 5 0 2 1 40%
amqtt/mqtt/__init__.py (no function) 21 0 0 0 0 100%
amqtt/mqtt/connack.py ConnackVariableHeader.__init__ 3 0 0 0 0 100%
amqtt/mqtt/connack.py ConnackVariableHeader.from_stream 4 0 0 0 0 100%
amqtt/mqtt/connack.py ConnackVariableHeader.to_bytes 4 0 0 0 0 100%
amqtt/mqtt/connack.py ConnackVariableHeader.__repr__ 1 0 0 0 0 100%
amqtt/mqtt/connack.py ConnackPacket.__init__ 7 0 0 4 0 100%
amqtt/mqtt/connack.py ConnackPacket.build 2 0 0 0 0 100%
amqtt/mqtt/connack.py ConnackPacket.return_code 4 0 0 2 0 100%
amqtt/mqtt/connack.py ConnackPacket.return_code 4 1 0 2 1 67%
amqtt/mqtt/connack.py ConnackPacket.session_parent 4 1 0 2 1 67%
amqtt/mqtt/connack.py ConnackPacket.session_parent 4 1 0 2 1 67%
amqtt/mqtt/connack.py (no function) 32 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.__init__ 5 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.__repr__ 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader._set_flag 3 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader._get_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.from_stream 8 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.to_bytes 6 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.username_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.username_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.password_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.password_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.will_retain_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.will_retain_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.will_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.will_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.clean_session_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.clean_session_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.reserved_flag 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.reserved_flag 1 1 0 0 0 0%
amqtt/mqtt/connect.py ConnectVariableHeader.will_qos 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectVariableHeader.will_qos 2 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectPayload.__init__ 7 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectPayload.__repr__ 1 0 0 0 0 100%
amqtt/mqtt/connect.py ConnectPayload.from_stream 26 0 0 8 0 100%
amqtt/mqtt/connect.py ConnectPayload.to_bytes 13 0 0 12 3 88%
amqtt/mqtt/connect.py ConnectPacket.__init__ 9 0 0 4 0 100%
amqtt/mqtt/connect.py ConnectPacket.proto_name 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.proto_name 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.proto_level 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.proto_level 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.username_flag 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.username_flag 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.password_flag 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.password_flag 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.clean_session_flag 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.clean_session_flag 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.will_retain_flag 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.will_retain_flag 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.will_qos 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.will_qos 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.will_flag 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.will_flag 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.reserved_flag 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.reserved_flag 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.client_id 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.client_id 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.client_id_is_random 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.client_id_is_random 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.will_topic 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.will_topic 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.will_message 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.will_message 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.username 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.username 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.password 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.password 4 1 0 2 1 67%
amqtt/mqtt/connect.py ConnectPacket.keep_alive 4 0 0 2 0 100%
amqtt/mqtt/connect.py ConnectPacket.keep_alive 4 1 0 2 1 67%
amqtt/mqtt/connect.py (no function) 126 0 0 0 0 100%
amqtt/mqtt/constants.py (no function) 3 0 0 0 0 100%
amqtt/mqtt/disconnect.py DisconnectPacket.__init__ 9 2 0 4 1 77%
amqtt/mqtt/disconnect.py (no function) 6 0 0 0 0 100%
amqtt/mqtt/packet.py MQTTFixedHeader.__init__ 3 0 0 0 0 100%
amqtt/mqtt/packet.py MQTTFixedHeader.to_bytes 8 3 0 0 0 62%
amqtt/mqtt/packet.py MQTTFixedHeader.to_bytes.encode_remaining_length 10 0 0 4 0 100%
amqtt/mqtt/packet.py MQTTFixedHeader.to_stream 1 1 0 0 0 0%
amqtt/mqtt/packet.py MQTTFixedHeader.bytes_length 1 1 0 0 0 0%
amqtt/mqtt/packet.py MQTTFixedHeader.from_stream 10 0 0 0 0 100%
amqtt/mqtt/packet.py MQTTFixedHeader.from_stream.decode_remaining_length 14 0 0 4 0 100%
amqtt/mqtt/packet.py MQTTFixedHeader.__repr__ 1 0 0 0 0 100%
amqtt/mqtt/packet.py MQTTVariableHeader.to_stream 2 2 0 0 0 0%
amqtt/mqtt/packet.py MQTTVariableHeader.to_bytes 0 0 0 0 0 100%
amqtt/mqtt/packet.py MQTTVariableHeader.bytes_length 1 0 0 0 0 100%
amqtt/mqtt/packet.py MQTTVariableHeader.from_stream 1 1 0 0 0 0%
amqtt/mqtt/packet.py PacketIdVariableHeader.__init__ 2 0 0 0 0 100%
amqtt/mqtt/packet.py PacketIdVariableHeader.to_bytes 1 0 0 0 0 100%
amqtt/mqtt/packet.py PacketIdVariableHeader.from_stream 2 0 0 0 0 100%
amqtt/mqtt/packet.py PacketIdVariableHeader.__repr__ 1 0 0 0 0 100%
amqtt/mqtt/packet.py MQTTPayload.to_stream 2 2 0 0 0 0%
amqtt/mqtt/packet.py MQTTPayload.to_bytes 1 1 0 0 0 0%
amqtt/mqtt/packet.py MQTTPayload.from_stream 1 0 0 0 0 100%
amqtt/mqtt/packet.py MQTTPacket.__init__ 4 0 0 0 0 100%
amqtt/mqtt/packet.py MQTTPacket.to_stream 3 0 0 0 0 100%
amqtt/mqtt/packet.py MQTTPacket.to_bytes 7 0 0 2 1 89%
amqtt/mqtt/packet.py MQTTPacket.from_stream 14 0 0 10 0 100%
amqtt/mqtt/packet.py MQTTPacket.bytes_length 1 0 0 0 0 100%
amqtt/mqtt/packet.py MQTTPacket.__repr__ 1 0 0 0 0 100%
amqtt/mqtt/packet.py (no function) 78 3 0 0 0 96%
amqtt/mqtt/pingreq.py PingReqPacket.__init__ 9 2 0 4 1 77%
amqtt/mqtt/pingreq.py (no function) 6 0 0 0 0 100%
amqtt/mqtt/pingresp.py PingRespPacket.__init__ 9 2 0 4 1 77%
amqtt/mqtt/pingresp.py PingRespPacket.build 1 0 0 0 0 100%
amqtt/mqtt/pingresp.py (no function) 9 0 0 0 0 100%
amqtt/mqtt/protocol/__init__.py (no function) 0 0 0 0 0 100%
amqtt/mqtt/protocol/broker_handler.py Subscription.__init__ 2 0 0 0 0 100%
amqtt/mqtt/protocol/broker_handler.py UnSubscription.__init__ 2 0 0 0 0 100%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.__init__ 4 0 0 0 0 100%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.start 3 0 0 2 1 80%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.stop 8 3 0 6 3 57%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.wait_disconnect 3 1 0 2 1 60%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.handle_write_timeout 1 1 0 0 0 0%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.handle_read_timeout 1 1 0 0 0 0%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.handle_disconnect 5 0 0 2 0 100%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.handle_connection_closed 1 0 0 0 0 100%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.handle_connect 3 3 0 2 0 0%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.handle_pingreq 1 0 0 0 0 100%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.handle_subscribe 8 4 0 4 2 50%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.handle_unsubscribe 8 4 0 4 2 50%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.get_next_pending_subscription 1 0 0 0 0 100%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.get_next_pending_unsubscription 1 0 0 0 0 100%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.mqtt_acknowledge_subscription 2 0 0 0 0 100%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.mqtt_acknowledge_unsubscription 2 0 0 0 0 100%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.mqtt_connack_authorize 5 2 0 2 1 57%
amqtt/mqtt/protocol/broker_handler.py BrokerProtocolHandler.init_from_connect 63 19 0 28 11 67%
amqtt/mqtt/protocol/broker_handler.py (no function) 44 0 2 0 0 100%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.__init__ 6 0 0 0 0 100%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.start 3 1 0 2 1 60%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.stop 6 1 0 4 1 80%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler._build_connect_packet 25 2 0 10 2 89%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.mqtt_connect 11 2 0 2 1 77%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.handle_write_timeout 8 4 0 2 0 60%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.handle_read_timeout 1 0 0 0 0 100%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.mqtt_subscribe 11 2 0 2 1 77%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.handle_suback 11 5 0 6 3 53%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.mqtt_unsubscribe 10 2 0 2 1 75%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.handle_unsuback 8 3 0 4 2 58%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.mqtt_disconnect 2 0 0 0 0 100%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.mqtt_ping 6 0 0 0 0 100%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.handle_pingresp 1 0 0 0 0 100%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.handle_connection_closed 3 0 0 2 0 100%
amqtt/mqtt/protocol/client_handler.py ClientProtocolHandler.wait_disconnect 2 0 0 2 1 75%
amqtt/mqtt/protocol/client_handler.py (no function) 33 0 2 0 0 100%
amqtt/mqtt/protocol/handler.py ProtocolHandler.__init__ 21 3 0 2 0 87%
amqtt/mqtt/protocol/handler.py ProtocolHandler._init_session 9 2 0 4 1 77%
amqtt/mqtt/protocol/handler.py ProtocolHandler.attach 6 2 0 2 1 62%
amqtt/mqtt/protocol/handler.py ProtocolHandler.detach 3 0 0 0 0 100%
amqtt/mqtt/protocol/handler.py ProtocolHandler._is_attached 1 0 0 0 0 100%
amqtt/mqtt/protocol/handler.py ProtocolHandler.start 12 2 0 4 1 81%
amqtt/mqtt/protocol/handler.py ProtocolHandler.stop 17 1 0 6 0 96%
amqtt/mqtt/protocol/handler.py ProtocolHandler._stop_waiters 9 2 0 4 1 77%
amqtt/mqtt/protocol/handler.py ProtocolHandler._retry_deliveries 10 2 0 4 1 79%
amqtt/mqtt/protocol/handler.py ProtocolHandler.mqtt_publish 14 5 0 8 3 64%
amqtt/mqtt/protocol/handler.py ProtocolHandler._handle_message_flow 11 4 0 8 2 68%
amqtt/mqtt/protocol/handler.py ProtocolHandler._handle_qos0_message_flow 20 9 0 10 4 57%
amqtt/mqtt/protocol/handler.py ProtocolHandler._handle_qos1_message_flow 36 11 0 16 5 69%
amqtt/mqtt/protocol/handler.py ProtocolHandler._handle_qos2_message_flow 67 15 0 26 10 73%
amqtt/mqtt/protocol/handler.py ProtocolHandler._reader_loop 85 15 0 50 8 81%
amqtt/mqtt/protocol/handler.py ProtocolHandler._send_packet 17 8 0 6 2 57%
amqtt/mqtt/protocol/handler.py ProtocolHandler.mqtt_deliver_next_message 15 3 0 8 2 78%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_write_timeout 4 4 0 2 0 0%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_read_timeout 4 4 0 2 0 0%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_connack 4 4 0 2 0 0%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_connect 4 4 0 2 0 0%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_subscribe 4 4 0 2 0 0%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_unsubscribe 4 4 0 2 0 0%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_suback 4 4 0 2 0 0%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_unsuback 4 4 0 2 0 0%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_pingresp 4 4 0 2 0 0%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_pingreq 4 4 0 2 0 0%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_disconnect 4 4 0 2 0 0%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_connection_closed 4 2 0 2 1 50%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_puback 11 4 0 2 1 62%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_pubrec 8 2 0 0 0 75%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_pubcomp 8 2 0 0 0 75%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_pubrel 8 2 0 0 0 75%
amqtt/mqtt/protocol/handler.py ProtocolHandler.handle_publish 8 1 0 2 1 80%
amqtt/mqtt/protocol/handler.py (no function) 73 7 0 0 0 90%
amqtt/mqtt/puback.py PubackPacket.packet_id 4 0 0 2 0 100%
amqtt/mqtt/puback.py PubackPacket.packet_id 4 1 0 2 1 67%
amqtt/mqtt/puback.py PubackPacket.__init__ 7 0 0 4 0 100%
amqtt/mqtt/puback.py PubackPacket.build 2 0 0 0 0 100%
amqtt/mqtt/puback.py (no function) 13 0 0 0 0 100%
amqtt/mqtt/pubcomp.py PubcompPacket.__init__ 9 0 0 4 0 100%
amqtt/mqtt/pubcomp.py PubcompPacket.build 2 0 0 0 0 100%
amqtt/mqtt/pubcomp.py PubcompPacket.packet_id 4 0 0 2 0 100%
amqtt/mqtt/pubcomp.py PubcompPacket.packet_id 4 1 0 2 1 67%
amqtt/mqtt/pubcomp.py (no function) 13 0 0 0 0 100%
amqtt/mqtt/publish.py PublishVariableHeader.__init__ 6 0 0 2 0 100%
amqtt/mqtt/publish.py PublishVariableHeader.__repr__ 1 0 0 0 0 100%
amqtt/mqtt/publish.py PublishVariableHeader.to_bytes 5 0 0 2 0 100%
amqtt/mqtt/publish.py PublishVariableHeader.from_stream 4 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPayload.__init__ 2 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPayload.to_bytes 1 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPayload.from_stream 11 2 0 4 1 80%
amqtt/mqtt/publish.py PublishPayload.__repr__ 1 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPacket.__init__ 9 0 0 4 0 100%
amqtt/mqtt/publish.py PublishPacket.build 7 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPacket.set_flags 3 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPacket._set_header_flag 3 0 0 2 0 100%
amqtt/mqtt/publish.py PublishPacket._get_header_flag 1 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPacket.dup_flag 1 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPacket.dup_flag 1 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPacket.retain_flag 1 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPacket.retain_flag 1 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPacket.qos 1 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPacket.qos 2 0 0 0 0 100%
amqtt/mqtt/publish.py PublishPacket.packet_id 4 0 0 2 0 100%
amqtt/mqtt/publish.py PublishPacket.packet_id 4 1 0 2 1 67%
amqtt/mqtt/publish.py PublishPacket.data 4 0 0 2 0 100%
amqtt/mqtt/publish.py PublishPacket.data 4 1 0 2 1 67%
amqtt/mqtt/publish.py PublishPacket.topic_name 4 0 0 2 0 100%
amqtt/mqtt/publish.py PublishPacket.topic_name 4 0 0 2 0 100%
amqtt/mqtt/publish.py (no function) 56 0 0 0 0 100%
amqtt/mqtt/pubrec.py PubrecPacket.__init__ 9 0 0 4 0 100%
amqtt/mqtt/pubrec.py PubrecPacket.build 2 0 0 0 0 100%
amqtt/mqtt/pubrec.py PubrecPacket.packet_id 4 0 0 2 0 100%
amqtt/mqtt/pubrec.py PubrecPacket.packet_id 4 1 0 2 1 67%
amqtt/mqtt/pubrec.py (no function) 13 0 0 0 0 100%
amqtt/mqtt/pubrel.py PubrelPacket.__init__ 9 0 0 4 0 100%
amqtt/mqtt/pubrel.py PubrelPacket.build 2 0 0 0 0 100%
amqtt/mqtt/pubrel.py PubrelPacket.packet_id 4 0 0 2 0 100%
amqtt/mqtt/pubrel.py PubrelPacket.packet_id 4 1 0 2 1 67%
amqtt/mqtt/pubrel.py (no function) 13 0 0 0 0 100%
amqtt/mqtt/suback.py SubackPayload.__init__ 2 0 0 0 0 100%
amqtt/mqtt/suback.py SubackPayload.__repr__ 1 0 0 0 0 100%
amqtt/mqtt/suback.py SubackPayload.to_bytes 4 0 0 2 0 100%
amqtt/mqtt/suback.py SubackPayload.from_stream 13 4 0 4 1 71%
amqtt/mqtt/suback.py SubackPacket.__init__ 9 2 0 4 1 77%
amqtt/mqtt/suback.py SubackPacket.build 3 0 0 0 0 100%
amqtt/mqtt/suback.py (no function) 23 0 0 0 0 100%
amqtt/mqtt/subscribe.py SubscribePayload.__init__ 2 0 0 0 0 100%
amqtt/mqtt/subscribe.py SubscribePayload.to_bytes 5 0 0 2 0 100%
amqtt/mqtt/subscribe.py SubscribePayload.from_stream 16 4 0 4 1 75%
amqtt/mqtt/subscribe.py SubscribePayload.__repr__ 1 0 0 0 0 100%
amqtt/mqtt/subscribe.py SubscribePacket.__init__ 9 2 0 4 1 77%
amqtt/mqtt/subscribe.py SubscribePacket.build 3 0 0 0 0 100%
amqtt/mqtt/subscribe.py (no function) 19 0 0 0 0 100%
amqtt/mqtt/unsuback.py UnsubackPacket.__init__ 9 2 0 4 1 77%
amqtt/mqtt/unsuback.py UnsubackPacket.build 2 0 0 0 0 100%
amqtt/mqtt/unsuback.py (no function) 9 0 0 0 0 100%
amqtt/mqtt/unsubscribe.py UnubscribePayload.__init__ 2 0 0 0 0 100%
amqtt/mqtt/unsubscribe.py UnubscribePayload.to_bytes 4 0 0 2 0 100%
amqtt/mqtt/unsubscribe.py UnubscribePayload.from_stream 14 4 0 4 1 72%
amqtt/mqtt/unsubscribe.py UnsubscribePacket.__init__ 9 2 0 4 1 77%
amqtt/mqtt/unsubscribe.py UnsubscribePacket.build 3 0 0 0 0 100%
amqtt/mqtt/unsubscribe.py (no function) 18 0 0 0 0 100%
amqtt/plugins/__init__.py TopicMatcher.__init__ 2 0 0 2 0 100%
amqtt/plugins/__init__.py TopicMatcher.__new__ 3 0 0 2 0 100%
amqtt/plugins/__init__.py TopicMatcher.is_topic_allowed 8 1 0 6 1 86%
amqtt/plugins/__init__.py TopicMatcher.are_topics_allowed 1 0 0 0 0 100%
amqtt/plugins/__init__.py (no function) 8 0 0 0 0 100%
amqtt/plugins/authentication.py AnonymousAuthPlugin.__init__ 2 0 0 0 0 100%
amqtt/plugins/authentication.py AnonymousAuthPlugin.authenticate 11 0 0 6 1 94%
amqtt/plugins/authentication.py FileAuthPlugin.__init__ 3 0 0 0 0 100%
amqtt/plugins/authentication.py FileAuthPlugin._read_password_file 26 8 0 10 2 72%
amqtt/plugins/authentication.py FileAuthPlugin.authenticate 17 2 0 10 2 85%
amqtt/plugins/authentication.py (no function) 23 0 0 0 0 100%
amqtt/plugins/base.py BasePlugin.__init__ 2 0 0 0 0 100%
amqtt/plugins/base.py BasePlugin._get_config_section 6 1 0 4 1 80%
amqtt/plugins/base.py BasePlugin._get_config_option 7 4 0 6 2 38%
amqtt/plugins/base.py BasePlugin.close 0 0 0 0 0 100%
amqtt/plugins/base.py BaseTopicPlugin.__init__ 4 0 0 2 0 100%
amqtt/plugins/base.py BaseTopicPlugin._get_config_option 7 0 0 6 0 100%
amqtt/plugins/base.py BaseTopicPlugin.topic_filtering 1 0 0 0 0 100%
amqtt/plugins/base.py BaseAuthPlugin._get_config_option 7 1 0 6 1 85%
amqtt/plugins/base.py BaseAuthPlugin.__init__ 4 0 0 2 0 100%
amqtt/plugins/base.py BaseAuthPlugin.authenticate 1 0 0 0 0 100%
amqtt/plugins/base.py (no function) 20 0 0 0 0 100%
amqtt/plugins/logging_amqtt.py EventLoggerPlugin.log_event 4 0 0 2 0 100%
amqtt/plugins/logging_amqtt.py EventLoggerPlugin.__getattr__ 4 0 0 2 0 100%
amqtt/plugins/logging_amqtt.py PacketLoggerPlugin.on_mqtt_packet_received 4 0 0 4 0 100%
amqtt/plugins/logging_amqtt.py PacketLoggerPlugin.on_mqtt_packet_sent 4 1 0 4 1 75%
amqtt/plugins/logging_amqtt.py (no function) 17 0 0 0 0 100%
amqtt/plugins/manager.py get_plugin_manager 1 1 0 0 0 0%
amqtt/plugins/manager.py safe_issubclass 4 2 0 0 0 50%
amqtt/plugins/manager.py PluginManager.__init__ 17 0 0 0 0 100%
amqtt/plugins/manager.py PluginManager.app_context 1 0 0 0 0 100%
amqtt/plugins/manager.py PluginManager._load_plugins 31 15 0 26 6 53%
amqtt/plugins/manager.py PluginManager._load_ep_plugins 21 2 0 16 2 84%
amqtt/plugins/manager.py PluginManager._load_ep_plugin 15 6 0 0 0 60%
amqtt/plugins/manager.py PluginManager._load_str_plugins 16 2 0 10 1 88%
amqtt/plugins/manager.py PluginManager._load_str_plugin 24 5 0 2 1 77%
amqtt/plugins/manager.py PluginManager.get_plugin 4 1 0 4 1 75%
amqtt/plugins/manager.py PluginManager.is_topic_filtering_enabled 4 0 0 2 0 100%
amqtt/plugins/manager.py PluginManager.close 4 1 0 2 1 67%
amqtt/plugins/manager.py PluginManager.plugins 1 1 0 0 0 0%
amqtt/plugins/manager.py PluginManager._schedule_coro 1 1 0 0 0 0%
amqtt/plugins/manager.py PluginManager._clean_fired_events 9 1 0 2 0 91%
amqtt/plugins/manager.py PluginManager.fire_event 12 0 0 6 0 100%
amqtt/plugins/manager.py PluginManager.fire_event.call_method 1 0 0 0 0 100%
amqtt/plugins/manager.py PluginManager._map_plugin_method 12 0 0 6 0 100%
amqtt/plugins/manager.py PluginManager._map_plugin_method.call_method 2 0 0 0 0 100%
amqtt/plugins/manager.py PluginManager.map_plugin_auth 1 0 0 0 0 100%
amqtt/plugins/manager.py PluginManager.map_plugin_topic 1 0 0 0 0 100%
amqtt/plugins/manager.py PluginManager.map_plugin_close 1 0 0 0 0 100%
amqtt/plugins/manager.py (no function) 51 0 0 0 0 100%
amqtt/plugins/persistence.py SQLitePlugin.__init__ 2 0 0 0 0 100%
amqtt/plugins/persistence.py (no function) 5 0 0 0 0 100%
amqtt/plugins/sys/__init__.py (no function) 0 0 0 0 0 100%
amqtt/plugins/sys/broker.py val_to_bytes_str 10 3 0 6 1 75%
amqtt/plugins/sys/broker.py BrokerSysPlugin.__init__ 5 0 0 0 0 100%
amqtt/plugins/sys/broker.py BrokerSysPlugin._clear_stats 2 0 0 2 0 100%
amqtt/plugins/sys/broker.py BrokerSysPlugin._broadcast_sys_topic 1 0 0 0 0 100%
amqtt/plugins/sys/broker.py BrokerSysPlugin.schedule_broadcast_sys_topic 1 0 0 0 0 100%
amqtt/plugins/sys/broker.py BrokerSysPlugin.on_broker_pre_start 1 0 0 0 0 100%
amqtt/plugins/sys/broker.py BrokerSysPlugin.on_broker_post_start 13 1 0 4 0 94%
amqtt/plugins/sys/broker.py BrokerSysPlugin.on_broker_pre_shutdown 2 0 0 2 0 100%
amqtt/plugins/sys/broker.py BrokerSysPlugin.broadcast_dollar_sys_topics 27 1 0 6 1 94%
amqtt/plugins/sys/broker.py BrokerSysPlugin.on_mqtt_packet_received 6 0 0 4 1 90%
amqtt/plugins/sys/broker.py BrokerSysPlugin.on_mqtt_packet_sent 6 0 0 4 1 90%
amqtt/plugins/sys/broker.py BrokerSysPlugin.on_broker_client_connected 2 0 0 0 0 100%
amqtt/plugins/sys/broker.py BrokerSysPlugin.on_broker_client_disconnected 2 0 0 0 0 100%
amqtt/plugins/sys/broker.py (no function) 55 8 0 0 0 85%
amqtt/plugins/topic_checking.py TopicTabooPlugin.__init__ 2 0 0 0 0 100%
amqtt/plugins/topic_checking.py TopicTabooPlugin.topic_filtering 6 0 0 4 0 100%
amqtt/plugins/topic_checking.py TopicAccessControlListPlugin.__init__ 6 2 0 4 1 70%
amqtt/plugins/topic_checking.py TopicAccessControlListPlugin.topic_ac 17 0 0 6 0 100%
amqtt/plugins/topic_checking.py TopicAccessControlListPlugin.topic_filtering 28 3 0 18 1 91%
amqtt/plugins/topic_checking.py (no function) 19 0 0 0 0 100%
amqtt/session.py ApplicationMessage.__init__ 20 0 0 0 0 100%
amqtt/session.py ApplicationMessage.build_publish_packet 1 0 0 0 0 100%
amqtt/session.py ApplicationMessage.__eq__ 3 1 0 2 1 60%
amqtt/session.py IncomingApplicationMessage.__init__ 2 0 0 0 0 100%
amqtt/session.py OutgoingApplicationMessage.__init__ 2 0 0 0 0 100%
amqtt/session.py Session.__init__ 28 0 0 0 0 100%
amqtt/session.py Session._init_states 8 0 0 0 0 100%
amqtt/session.py Session._on_enter_connected 5 0 0 2 0 100%
amqtt/session.py Session._on_enter_disconnected 4 0 0 2 0 100%
amqtt/session.py Session.next_packet_id 8 4 0 4 1 42%
amqtt/session.py Session.inflight_in_count 1 0 0 0 0 100%
amqtt/session.py Session.inflight_out_count 1 0 0 0 0 100%
amqtt/session.py Session.retained_messages_count 1 0 0 0 0 100%
amqtt/session.py Session.__repr__ 1 0 0 0 0 100%
amqtt/session.py Session.__getstate__ 4 4 0 0 0 0%
amqtt/session.py Session.__setstate__ 3 3 0 0 0 0%
amqtt/session.py Session.clear_queues 4 1 0 4 1 75%
amqtt/session.py Session.__eq__ 3 1 0 2 1 60%
amqtt/session.py (no function) 42 0 2 0 0 100%
amqtt/utils.py format_client_message 5 0 0 4 0 100%
amqtt/utils.py gen_client_id 4 0 0 0 0 100%
amqtt/utils.py read_yaml_config 7 3 0 0 0 57%
amqtt/utils.py cached_import 5 1 0 4 1 78%
amqtt/utils.py import_string 10 5 0 0 0 50%
amqtt/utils.py (no function) 18 1 0 2 1 90%
Total   5637 740 12 1364 278 84%

No items found using the specified filter.