integration-0.1.0
Safe HaskellNone
LanguageGHC2021

Test.MLS

Synopsis

Documentation

testFirstCommitAllowsPartialAdds :: HasCallStack => App () Source #

FUTUREWORK: Don't allow partial adds, not even in the first commit

testRemoveClientsIncomplete :: HasCallStack => App () Source #

admin removes user from a conversation but doesn't list all clients

testBackendRemoveProposalTeamConv :: HasCallStack => App () Source #

Regression coverage for the conversation-enumeration order in rmUser. On user deletion, leaveTeams runs before goConvPages and strips the deleted user from every team conversation via deleteUserFromTeamConversations. Before this fix, that path had no MLS step. Both that removal and the subsequent conversation enumeration go through the conversation_member table, so by the time leaveLocalConversations would call removeUser, team conversations are no longer listed.

The non-team conversation is a control: it proves the deletion ran and that the backend signed a remove proposal in this run, which isolates the team-conversation path as the only difference between the two.