Coverage report: 81%

Files Functions Classes

coverage.py v7.11.3, created at 2025-11-26 19:34 +0000

File class statements missing excluded coverage
slidge/__init__.py (no class) 25 3 0 88%
slidge/__main__.py (no class) 2 2 0 0%
slidge/command/__init__.py (no class) 3 0 0 100%
slidge/command/adhoc.py AdhocProvider 123 18 0 85%
slidge/command/adhoc.py (no class) 35 1 3 97%
slidge/command/admin.py AdminCommand 0 0 0 100%
slidge/command/admin.py ListUsers 9 9 0 0%
slidge/command/admin.py SlidgeInfo 27 27 0 0%
slidge/command/admin.py DeleteUser 12 12 0 0%
slidge/command/admin.py ChangeLoglevel 2 2 0 0%
slidge/command/admin.py Exec 10 10 0 0%
slidge/command/admin.py (no class) 54 0 0 100%
slidge/command/base.py TableResult 8 0 0 100%
slidge/command/base.py SearchResult 0 0 0 100%
slidge/command/base.py Confirmation 5 0 0 100%
slidge/command/base.py Form 12 0 0 100%
slidge/command/base.py CommandAccess 0 0 0 100%
slidge/command/base.py Option 0 0 0 100%
slidge/command/base.py FormField 49 12 0 76%
slidge/command/base.py Command 23 2 0 91%
slidge/command/base.py (no class) 109 0 4 100%
slidge/command/categories.py CommandCategory 0 0 0 100%
slidge/command/categories.py (no class) 8 0 0 100%
slidge/command/chat_command.py ChatCommandProvider 150 78 0 48%
slidge/command/chat_command.py (no class) 33 1 2 97%
slidge/command/register.py RegistrationType 0 0 0 100%
slidge/command/register.py TwoFactorNotRequired 0 0 0 100%
slidge/command/register.py Register 48 48 0 0%
slidge/command/register.py (no class) 36 0 0 100%
slidge/command/user.py Search 10 10 0 0%
slidge/command/user.py SyncContacts 28 28 0 0%
slidge/command/user.py ListContacts 4 4 0 0%
slidge/command/user.py ListGroups 4 4 0 0%
slidge/command/user.py Login 14 14 0 0%
slidge/command/user.py CreateGroup 8 8 0 0%
slidge/command/user.py Preferences 20 20 0 0%
slidge/command/user.py Unregister 4 4 0 0%
slidge/command/user.py LeaveGroup 8 8 0 0%
slidge/command/user.py InviteInGroups 5 5 0 0%
slidge/command/user.py (no class) 92 0 2 100%
slidge/contact/__init__.py (no class) 3 0 0 100%
slidge/contact/contact.py LegacyContact 194 41 0 79%
slidge/contact/contact.py (no class) 88 1 3 99%
slidge/contact/roster.py ContactIsUser 0 0 0 100%
slidge/contact/roster.py LegacyRoster 89 30 0 66%
slidge/contact/roster.py (no class) 38 0 2 100%
slidge/core/__init__.py (no class) 2 0 0 100%
slidge/core/config.py _Categories 0 0 0 100%
slidge/core/config.py (no class) 111 0 0 100%
slidge/core/dispatcher/__init__.py (no class) 2 0 0 100%
slidge/core/dispatcher/caps.py CapsMixin 35 4 0 89%
slidge/core/dispatcher/caps.py (no class) 11 0 2 100%
slidge/core/dispatcher/disco.py DiscoMixin 25 2 0 92%
slidge/core/dispatcher/disco.py (no class) 14 0 2 100%
slidge/core/dispatcher/message/__init__.py MessageMixin 0 0 0 100%
slidge/core/dispatcher/message/__init__.py (no class) 6 0 0 100%
slidge/core/dispatcher/message/chat_state.py ChatStateMixin 23 11 0 52%
slidge/core/dispatcher/message/chat_state.py (no class) 16 0 0 100%
slidge/core/dispatcher/message/marker.py MarkerMixin 31 8 0 74%
slidge/core/dispatcher/message/marker.py (no class) 12 0 0 100%
slidge/core/dispatcher/message/message.py MessageContentMixin 198 44 0 78%
slidge/core/dispatcher/message/message.py (no class) 35 1 0 97%
slidge/core/dispatcher/muc/__init__.py MucMixin 0 0 0 100%
slidge/core/dispatcher/muc/__init__.py (no class) 8 0 0 100%
slidge/core/dispatcher/muc/admin.py MucAdminMixin 39 3 0 92%
slidge/core/dispatcher/muc/admin.py (no class) 13 0 0 100%
slidge/core/dispatcher/muc/mam.py MamMixin 36 4 0 89%
slidge/core/dispatcher/muc/mam.py (no class) 16 0 2 100%
slidge/core/dispatcher/muc/misc.py MucMiscMixin 54 5 0 91%
slidge/core/dispatcher/muc/misc.py (no class) 20 0 0 100%
slidge/core/dispatcher/muc/owner.py MucOwnerMixin 39 1 0 97%
slidge/core/dispatcher/muc/owner.py (no class) 12 0 0 100%
slidge/core/dispatcher/muc/ping.py PingMixin 24 10 0 58%
slidge/core/dispatcher/muc/ping.py (no class) 12 0 2 100%
slidge/core/dispatcher/presence.py _IsDirectedAtComponent 1 0 0 100%
slidge/core/dispatcher/presence.py PresenceHandlerMixin 103 23 0 78%
slidge/core/dispatcher/presence.py (no class) 29 0 0 100%
slidge/core/dispatcher/registration.py RegistrationMixin 41 17 0 59%
slidge/core/dispatcher/registration.py (no class) 18 0 2 100%
slidge/core/dispatcher/search.py SearchMixin 44 22 0 50%
slidge/core/dispatcher/search.py (no class) 11 0 2 100%
slidge/core/dispatcher/session_dispatcher.py SessionDispatcher 40 9 0 78%
slidge/core/dispatcher/session_dispatcher.py (no class) 22 0 2 100%
slidge/core/dispatcher/util.py Ignore 0 0 0 100%
slidge/core/dispatcher/util.py DispatcherMixin 56 10 0 82%
slidge/core/dispatcher/util.py (no class) 57 0 3 100%
slidge/core/dispatcher/vcard.py VCardMixin 81 11 0 86%
slidge/core/dispatcher/vcard.py (no class) 20 0 0 100%
slidge/core/gateway.py BaseGateway 330 172 3 48%
slidge/core/gateway.py (no class) 123 0 2 100%
slidge/core/mixins/__init__.py FullMixin 0 0 0 100%
slidge/core/mixins/__init__.py FullCarbonMixin 0 0 0 100%
slidge/core/mixins/__init__.py (no class) 9 0 0 100%
slidge/core/mixins/attachment.py AttachmentMixin 296 55 0 81%
slidge/core/mixins/attachment.py (no class) 67 1 0 99%
slidge/core/mixins/avatar.py AvatarMixin 72 10 1 86%
slidge/core/mixins/avatar.py (no class) 32 0 2 100%
slidge/core/mixins/base.py MetaBase 0 0 0 100%
slidge/core/mixins/base.py Base 2 2 0 0%
slidge/core/mixins/base.py BaseSender 0 0 1 100%
slidge/core/mixins/base.py (no class) 18 0 3 100%
slidge/core/mixins/db.py DBMixin 10 0 0 100%
slidge/core/mixins/db.py UpdateInfoMixin 27 6 0 78%
slidge/core/mixins/db.py (no class) 24 0 2 100%
slidge/core/mixins/disco.py BaseDiscoMixin 17 3 0 82%
slidge/core/mixins/disco.py ChatterDiscoMixin 28 0 0 100%
slidge/core/mixins/disco.py ContactAccountDiscoMixin 9 0 0 100%
slidge/core/mixins/disco.py (no class) 33 0 0 100%
slidge/core/mixins/message.py ChatStateMixin 13 11 0 15%
slidge/core/mixins/message.py MarkerMixin 28 4 0 86%
slidge/core/mixins/message.py ContentMessageMixin 0 0 0 100%
slidge/core/mixins/message.py CarbonMessageMixin 10 0 0 100%
slidge/core/mixins/message.py InviteMixin 7 1 0 86%
slidge/core/mixins/message.py MessageMixin 0 0 0 100%
slidge/core/mixins/message.py MessageCarbonMixin 0 0 0 100%
slidge/core/mixins/message.py (no class) 42 0 2 100%
slidge/core/mixins/message_maker.py MessageMaker 82 9 0 89%
slidge/core/mixins/message_maker.py (no class) 25 0 2 100%
slidge/core/mixins/message_text.py TextMessageMixin 60 8 0 87%
slidge/core/mixins/message_text.py (no class) 17 0 0 100%
slidge/core/mixins/presence.py _NoChange 0 0 0 100%
slidge/core/mixins/presence.py PresenceMixin 89 16 0 82%
slidge/core/mixins/presence.py (no class) 53 8 2 85%
slidge/core/mixins/recipient.py ReactionRecipientMixin 12 0 0 100%
slidge/core/mixins/recipient.py ThreadRecipientMixin 1 0 0 100%
slidge/core/mixins/recipient.py (no class) 10 0 2 100%
slidge/core/pubsub.py PepAvatar 13 0 0 100%
slidge/core/pubsub.py PubSubComponent 141 36 0 74%
slidge/core/pubsub.py (no class) 53 0 3 100%
slidge/core/session.py CachedPresence 0 0 0 100%
slidge/core/session.py BaseSession 139 41 21 71%
slidge/core/session.py (no class) 117 0 4 100%
slidge/db/__init__.py (no class) 3 0 0 100%
slidge/db/alembic/__init__.py (no class) 0 0 0 100%
slidge/db/alembic/env.py (no class) 22 22 0 0%
slidge/db/avatar.py CachedAvatar 10 4 0 60%
slidge/db/avatar.py NotModified 0 0 0 100%
slidge/db/avatar.py AvatarCache 96 12 0 88%
slidge/db/avatar.py (no class) 59 0 0 100%
slidge/db/meta.py JIDType 6 1 0 83%
slidge/db/meta.py JSONEncodedDict 6 0 0 100%
slidge/db/meta.py Base 0 0 0 100%
slidge/db/meta.py (no class) 28 6 0 79%
slidge/db/models.py ArchivedMessageSource 0 0 0 100%
slidge/db/models.py GatewayUser 4 4 0 0%
slidge/db/models.py Avatar 0 0 0 100%
slidge/db/models.py Contact 0 0 0 100%
slidge/db/models.py ContactSent 0 0 0 100%
slidge/db/models.py Room 0 0 0 100%
slidge/db/models.py ArchivedMessage 0 0 0 100%
slidge/db/models.py _LegacyToXmppIdsBase 0 0 0 100%
slidge/db/models.py DirectMessages 0 0 0 100%
slidge/db/models.py GroupMessages 0 0 0 100%
slidge/db/models.py GroupMessagesOrigin 0 0 0 100%
slidge/db/models.py DirectThreads 0 0 0 100%
slidge/db/models.py GroupThreads 0 0 0 100%
slidge/db/models.py Attachment 0 0 0 100%
slidge/db/models.py Participant 3 0 0 100%
slidge/db/models.py Bob 0 0 0 100%
slidge/db/models.py (no class) 176 0 0 100%
slidge/db/store.py UpdatedMixin 3 0 0 100%
slidge/db/store.py SlidgeStore 12 0 0 100%
slidge/db/store.py UserStore 9 2 0 78%
slidge/db/store.py AvatarStore 1 0 0 100%
slidge/db/store.py IdMapStore 21 0 0 100%
slidge/db/store.py ContactStore 17 3 0 82%
slidge/db/store.py MAMStore 73 4 0 95%
slidge/db/store.py RoomStore 3 1 0 67%
slidge/db/store.py ParticipantStore 5 1 0 80%
slidge/db/store.py BobStore 63 27 0 57%
slidge/db/store.py (no class) 108 0 0 100%
slidge/group/__init__.py (no class) 5 0 0 100%
slidge/group/archive.py MessageArchive 48 2 0 96%
slidge/group/archive.py (no class) 39 0 2 100%
slidge/group/bookmarks.py LegacyBookmarks 72 12 1 83%
slidge/group/bookmarks.py (no class) 37 0 2 100%
slidge/group/participant.py LegacyParticipant 265 37 0 86%
slidge/group/participant.py (no class) 101 5 2 95%
slidge/group/room.py LegacyMUC 520 75 9 86%
slidge/group/room.py (no class) 189 3 2 98%
slidge/main.py MainConfig 7 2 0 71%
slidge/main.py SigTermInterrupt 0 0 0 100%
slidge/main.py (no class) 107 69 0 36%
slidge/migration.py (no class) 27 16 0 41%
slidge/slixfix/__init__.py (no class) 60 8 0 87%
slidge/slixfix/delivery_receipt.py DeliveryReceipt 12 0 0 100%
slidge/slixfix/delivery_receipt.py (no class) 8 0 2 100%
slidge/slixfix/link_preview/__init__.py (no class) 3 0 0 100%
slidge/slixfix/link_preview/link_preview.py LinkPreview 1 0 0 100%
slidge/slixfix/link_preview/link_preview.py (no class) 8 0 0 100%
slidge/slixfix/link_preview/stanza.py LinkPreview 19 1 0 95%
slidge/slixfix/link_preview/stanza.py OpenGraphMixin 0 0 0 100%
slidge/slixfix/link_preview/stanza.py Title 0 0 0 100%
slidge/slixfix/link_preview/stanza.py Description 0 0 0 100%
slidge/slixfix/link_preview/stanza.py Url 0 0 0 100%
slidge/slixfix/link_preview/stanza.py Image 0 0 0 100%
slidge/slixfix/link_preview/stanza.py Type_ 0 0 0 100%
slidge/slixfix/link_preview/stanza.py SiteName 0 0 0 100%
slidge/slixfix/link_preview/stanza.py (no class) 42 0 0 100%
slidge/slixfix/roster.py YesSet 2 2 0 0%
slidge/slixfix/roster.py RosterBackend 7 1 0 86%
slidge/slixfix/roster.py (no class) 13 0 2 100%
slidge/slixfix/xep_0077/__init__.py (no class) 4 0 0 100%
slidge/slixfix/xep_0077/register.py XEP_0077 114 79 0 31%
slidge/slixfix/xep_0077/register.py (no class) 42 8 0 81%
slidge/slixfix/xep_0077/stanza.py Register 21 4 0 81%
slidge/slixfix/xep_0077/stanza.py RegisterFeature 0 0 0 100%
slidge/slixfix/xep_0077/stanza.py (no class) 23 0 0 100%
slidge/slixfix/xep_0100/__init__.py (no class) 3 0 0 100%
slidge/slixfix/xep_0100/gateway.py XEP_0100 41 22 0 46%
slidge/slixfix/xep_0100/gateway.py (no class) 22 0 0 100%
slidge/slixfix/xep_0100/stanza.py Gateway 0 0 0 100%
slidge/slixfix/xep_0100/stanza.py (no class) 7 0 0 100%
slidge/slixfix/xep_0153/__init__.py (no class) 3 0 0 100%
slidge/slixfix/xep_0153/vcard_avatar.py XEP_0153 1 0 0 100%
slidge/slixfix/xep_0153/vcard_avatar.py (no class) 10 0 0 100%
slidge/slixfix/xep_0292/__init__.py (no class) 3 0 0 100%
slidge/slixfix/xep_0292/vcard4.py VCard4Provider 1 0 0 100%
slidge/slixfix/xep_0292/vcard4.py (no class) 8 0 0 100%
slidge/util/__init__.py (no class) 2 0 0 100%
slidge/util/archive_msg.py HistoryMessage 22 0 0 100%
slidge/util/archive_msg.py (no class) 19 1 0 95%
slidge/util/conf.py Option 39 1 0 97%
slidge/util/conf.py ConfigModule 61 3 0 95%
slidge/util/conf.py (no class) 46 0 0 100%
slidge/util/jid_escaping.py (no class) 19 6 0 68%
slidge/util/lock.py NamedLockMixin 16 0 0 100%
slidge/util/lock.py (no class) 10 0 0 100%
slidge/util/lottie.py (no class) 69 69 0 0%
slidge/util/test.py SlixTestPlus 60 13 0 78%
slidge/util/test.py SlidgeTest 73 4 0 95%
slidge/util/test.py SlidgeTest.Config 0 0 0 100%
slidge/util/test.py (no class) 75 5 0 93%
slidge/util/types.py MessageReference 0 0 0 100%
slidge/util/types.py LegacyAttachment 16 7 0 56%
slidge/util/types.py MucType 0 0 0 100%
slidge/util/types.py LinkPreview 0 0 0 100%
slidge/util/types.py Mention 0 0 0 100%
slidge/util/types.py Hat 0 0 0 100%
slidge/util/types.py UserPreferences 0 0 0 100%
slidge/util/types.py MamMetadata 0 0 0 100%
slidge/util/types.py HoleBound 0 0 0 100%
slidge/util/types.py CachedPresence 0 0 0 100%
slidge/util/types.py Sticker 0 0 0 100%
slidge/util/types.py Avatar 0 0 0 100%
slidge/util/types.py (no class) 96 0 6 100%
slidge/util/util.py SubclassableOnce 20 0 0 100%
slidge/util/util.py ABCSubclassableOnceAtMost 0 0 0 100%
slidge/util/util.py SlidgeLogger 1 1 0 0%
slidge/util/util.py (no class) 149 36 2 76%
Total   8134 1549 113 81%

No items found using the specified filter.