Coverage report: 83%

Files Functions Classes

coverage.py v7.15.0, created at 2026-07-09 03:59 +0000

File class   statements missing excluded   coverage
slidge/__init__.py (no class)   24 4 0   83%
slidge/__main__.py (no class)   2 2 0   0%
slidge/command/__init__.py (no class)   3 0 0   100%
slidge/command/adhoc.py AdhocProvider   160 29 0   82%
slidge/command/adhoc.py (no class)   43 1 2   98%
slidge/command/admin.py AdminCommand   0 0 0   100%
slidge/command/admin.py ListUsers   7 7 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 2   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 ConfirmationSession   0 0 0   100%
slidge/command/base.py ConfirmationRecipient   0 0 0   100%
slidge/command/base.py Form   12 0 0   100%
slidge/command/base.py FormSession   0 0 0   100%
slidge/command/base.py FormRecipient   0 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 10 0   80%
slidge/command/base.py _CommandMixin   0 0 0   100%
slidge/command/base.py Command   22 2 0   91%
slidge/command/base.py _RecipientCommand   0 0 1   100%
slidge/command/base.py ContactCommand   2 0 0   100%
slidge/command/base.py MUCCommand   2 0 0   100%
slidge/command/base.py (no class)   135 0 3   100%
slidge/command/categories.py CommandCategory   0 0 0   100%
slidge/command/categories.py (no class)   9 0 0   100%
slidge/command/chat_command.py ChatCommandProvider   189 65 0   66%
slidge/command/chat_command.py (no class)   43 1 2   98%
slidge/command/register.py RegistrationType   0 0 0   100%
slidge/command/register.py TwoFactorNotRequired   0 0 0   100%
slidge/command/register.py Register   50 50 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 ListSpaces   3 3 0   0%
slidge/command/user.py ListRoomsInSpace   13 13 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   19 19 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)   123 2 0   98%
slidge/contact/__init__.py (no class)   3 0 0   100%
slidge/contact/contact.py LegacyContact   194 38 0   80%
slidge/contact/contact.py (no class)   93 1 3   99%
slidge/contact/roster.py ContactIsUser   0 0 0   100%
slidge/contact/roster.py LegacyRoster   90 31 0   66%
slidge/contact/roster.py (no class)   36 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)   107 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   72 8 0   89%
slidge/core/dispatcher/disco.py (no class)   24 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   7 0 0   100%
slidge/core/dispatcher/message/chat_state.py (no class)   9 0 2   100%
slidge/core/dispatcher/message/marker.py MarkerMixin   30 4 0   87%
slidge/core/dispatcher/message/marker.py (no class)   14 0 2   100%
slidge/core/dispatcher/message/message.py _IncomingAttachment   0 0 0   100%
slidge/core/dispatcher/message/message.py MessageContentMixin   223 40 0   82%
slidge/core/dispatcher/message/message.py (no class)   58 3 2   95%
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   43 4 0   91%
slidge/core/dispatcher/muc/admin.py (no class)   14 0 2   100%
slidge/core/dispatcher/muc/mam.py MamMixin   36 4 0   89%
slidge/core/dispatcher/muc/mam.py (no class)   16 0 3   100%
slidge/core/dispatcher/muc/misc.py MucMiscMixin   55 5 0   91%
slidge/core/dispatcher/muc/misc.py (no class)   21 0 2   100%
slidge/core/dispatcher/muc/owner.py MucOwnerMixin   39 1 0   97%
slidge/core/dispatcher/muc/owner.py (no class)   13 0 2   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   106 22 0   79%
slidge/core/dispatcher/presence.py (no class)   32 0 2   100%
slidge/core/dispatcher/pubsub.py PubSubMixin   109 6 0   94%
slidge/core/dispatcher/pubsub.py (no class)   24 0 0   100%
slidge/core/dispatcher/registration.py RegistrationMixin   55 31 0   44%
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)   25 0 2   100%
slidge/core/dispatcher/util.py Ignore   0 0 0   100%
slidge/core/dispatcher/util.py DispatcherMixin   50 5 0   90%
slidge/core/dispatcher/util.py (no class)   62 1 2   98%
slidge/core/dispatcher/vcard.py VCardMixin   80 11 0   86%
slidge/core/dispatcher/vcard.py (no class)   20 0 2   100%
slidge/core/gateway.py BaseGateway   332 164 3   51%
slidge/core/gateway.py (no class)   122 0 0   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   286 28 0   90%
slidge/core/mixins/attachment.py _AttachmentWithName   0 0 0   100%
slidge/core/mixins/attachment.py _AttachmentWithMetadata   0 0 0   100%
slidge/core/mixins/attachment.py (no class)   138 20 0   86%
slidge/core/mixins/avatar.py AvatarMixin   74 12 1   84%
slidge/core/mixins/avatar.py (no class)   33 0 2   100%
slidge/core/mixins/base.py Base   2 1 0   50%
slidge/core/mixins/base.py BaseSender   0 0 1   100%
slidge/core/mixins/base.py (no class)   16 0 2   100%
slidge/core/mixins/db.py DBMixin   9 0 0   100%
slidge/core/mixins/db.py UpdateInfoMixin   28 2 0   93%
slidge/core/mixins/db.py (no class)   25 0 2   100%
slidge/core/mixins/disco.py BaseDiscoMixin   28 4 0   86%
slidge/core/mixins/disco.py ChatterDiscoMixin   30 0 0   100%
slidge/core/mixins/disco.py ContactAccountDiscoMixin   9 0 0   100%
slidge/core/mixins/disco.py (no class)   38 0 2   100%
slidge/core/mixins/message.py ChatStateMixin   13 11 0   15%
slidge/core/mixins/message.py MarkerMixin   35 2 0   94%
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)   41 0 0   100%
slidge/core/mixins/message_maker.py MessageMaker   101 15 0   85%
slidge/core/mixins/message_maker.py (no class)   35 0 0   100%
slidge/core/mixins/message_text.py TextMessageMixin   63 10 0   84%
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   79 6 0   92%
slidge/core/mixins/presence.py (no class)   52 6 2   88%
slidge/core/mixins/recipient.py ReactionMixin   12 0 0   100%
slidge/core/mixins/recipient.py ThreadMixin   1 0 0   100%
slidge/core/mixins/recipient.py MessageMixin   0 0 6   100%
slidge/core/mixins/recipient.py RecipientMixin   1 0 0   100%
slidge/core/mixins/recipient.py (no class)   24 0 0   100%
slidge/core/pubsub.py PepAvatar   13 0 0   100%
slidge/core/pubsub.py PubSubComponent   171 38 0   78%
slidge/core/pubsub.py (no class)   58 0 0   100%
slidge/core/session.py CachedPresence   0 0 0   100%
slidge/core/session.py BaseSession   142 38 8   73%
slidge/core/session.py (no class)   87 0 2   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   100 12 0   88%
slidge/db/avatar.py (no class)   58 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 Space   0 0 0   100%
slidge/db/models.py (no class)   200 0 0   100%
slidge/db/store.py UpdatedMixin   4 0 0   100%
slidge/db/store.py SlidgeStore   13 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   86 4 0   95%
slidge/db/store.py RoomStore   5 2 0   60%
slidge/db/store.py ParticipantStore   6 1 0   83%
slidge/db/store.py BobStore   69 28 0   59%
slidge/db/store.py SpaceStore   18 0 0   100%
slidge/db/store.py (no class)   139 0 0   100%
slidge/group/__init__.py (no class)   5 0 0   100%
slidge/group/archive.py MessageArchive   52 3 0   94%
slidge/group/archive.py (no class)   37 0 0   100%
slidge/group/bookmarks.py LegacyBookmarks   125 15 2   88%
slidge/group/bookmarks.py (no class)   46 0 0   100%
slidge/group/participant.py LegacyParticipant   264 42 2   84%
slidge/group/participant.py (no class)   108 5 2   95%
slidge/group/room.py LegacyMUC   674 97 9   86%
slidge/group/room.py (no class)   238 6 3   97%
slidge/main.py MainConfig   7 2 0   71%
slidge/main.py SigTermInterrupt   0 0 0   100%
slidge/main.py (no class)   112 73 0   35%
slidge/migration.py (no class)   27 16 0   41%
slidge/slixfix/__init__.py (no class)   34 1 0   97%
slidge/slixfix/delivery_receipt.py DeliveryReceipt   12 0 0   100%
slidge/slixfix/delivery_receipt.py (no class)   10 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)   15 0 0   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 20 0   51%
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)   3 0 0   100%
slidge/util/archive_msg.py HistoryMessage   23 1 0   96%
slidge/util/archive_msg.py (no class)   17 0 0   100%
slidge/util/conf.py Option   39 1 0   97%
slidge/util/conf.py ConfigModule   60 3 0   95%
slidge/util/conf.py (no class)   47 0 0   100%
slidge/util/jid_escaping.py EscapeMixin   2 0 0   100%
slidge/util/jid_escaping.py (no class)   8 0 0   100%
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)   67 67 0   0%
slidge/util/test.py SlixTestPlus   10 0 0   100%
slidge/util/test.py SlidgeTest   94 2 0   98%
slidge/util/test.py SlidgeTest.Config   0 0 0   100%
slidge/util/test.py (no class)   72 3 0   96%
slidge/util/types.py MessageReference   0 0 0   100%
slidge/util/types.py LegacyAttachment   24 7 0   71%
slidge/util/types.py MucType   0 0 0   100%
slidge/util/types.py LinkPreview   1 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 Avatar   0 0 0   100%
slidge/util/types.py SpaceMetadata   0 0 0   100%
slidge/util/types.py Reply   3 0 0   100%
slidge/util/types.py XMPPAttachment   2 0 0   100%
slidge/util/types.py _AbstractXMPPMessage   0 0 0   100%
slidge/util/types.py XMPPAttachmentMessage   0 0 0   100%
slidge/util/types.py XMPPTextMessage   0 0 0   100%
slidge/util/types.py Sticker   0 0 0   100%
slidge/util/types.py (no class)   156 0 6   100%
slidge/util/util.py SubclassableOnce   21 1 0   95%
slidge/util/util.py SlidgeLogger   1 1 0   0%
slidge/util/util.py HasLogger   0 0 0   100%
slidge/util/util.py (no class)   157 32 0   80%
Total     9003 1543 103   83%

No items found using the specified filter.