mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2025-06-29 20:59:53 +00:00
core: create new group with incognito membership (#3277)
This commit is contained in:
parent
f8332bac7f
commit
239765e482
8 changed files with 95 additions and 30 deletions
|
@ -23,6 +23,7 @@ chatGroupTests = do
|
|||
describe "chat groups" $ do
|
||||
it "add contacts, create group and send/receive messages" testGroup
|
||||
it "add contacts, create group and send/receive messages, check messages" testGroupCheckMessages
|
||||
it "create group with incognito membership" testNewGroupIncognito
|
||||
it "create and join group with 4 members" testGroup2
|
||||
it "create and delete group" testGroupDelete
|
||||
it "create group with the same displayName" testGroupSameName
|
||||
|
@ -277,6 +278,56 @@ testGroupShared alice bob cath checkMessages = do
|
|||
alice #$> ("/_unread chat #1 on", id, "ok")
|
||||
alice #$> ("/_unread chat #1 off", id, "ok")
|
||||
|
||||
testNewGroupIncognito :: HasCallStack => FilePath -> IO ()
|
||||
testNewGroupIncognito =
|
||||
testChat2 aliceProfile bobProfile $
|
||||
\alice bob -> do
|
||||
connectUsers alice bob
|
||||
|
||||
-- alice creates group with incognito membership
|
||||
alice ##> "/g i team"
|
||||
aliceIncognito <- getTermLine alice
|
||||
alice <## ("group #team is created, your incognito profile for this group is " <> aliceIncognito)
|
||||
alice <## "to add members use /create link #team"
|
||||
|
||||
-- alice invites bob
|
||||
alice ##> "/a team bob"
|
||||
alice <## "you are using an incognito profile for this group - prohibited to invite contacts"
|
||||
|
||||
alice ##> "/create link #team"
|
||||
gLink <- getGroupLink alice "team" GRMember True
|
||||
bob ##> ("/c " <> gLink)
|
||||
bob <## "connection request sent!"
|
||||
alice <## "bob_1 (Bob): accepting request to join group #team..."
|
||||
_ <- getTermLine alice
|
||||
concurrentlyN_
|
||||
[ do
|
||||
alice <## ("bob_1 (Bob): contact is connected, your incognito profile for this contact is " <> aliceIncognito)
|
||||
alice <## "use /i bob_1 to print out this incognito profile again"
|
||||
alice <## "bob_1 invited to group #team via your group link"
|
||||
alice <## "#team: bob_1 joined the group",
|
||||
do
|
||||
bob <## (aliceIncognito <> ": contact is connected")
|
||||
bob <## "#team: you joined the group"
|
||||
]
|
||||
|
||||
alice <##> bob
|
||||
|
||||
alice ?#> "@bob_1 hi, I'm incognito"
|
||||
bob <# (aliceIncognito <> "> hi, I'm incognito")
|
||||
bob #> ("@" <> aliceIncognito <> " hey, I'm bob")
|
||||
alice ?<# "bob_1> hey, I'm bob"
|
||||
|
||||
alice ?#> "#team hello"
|
||||
bob <# ("#team " <> aliceIncognito <> "> hello")
|
||||
bob #> "#team hi there"
|
||||
alice ?<# "#team bob_1> hi there"
|
||||
|
||||
alice ##> "/gs"
|
||||
alice <## "i #team (2 members)"
|
||||
bob ##> "/gs"
|
||||
bob <## "#team (2 members)"
|
||||
|
||||
testGroup2 :: HasCallStack => FilePath -> IO ()
|
||||
testGroup2 =
|
||||
testChatCfg4 testCfgCreateGroupDirect aliceProfile bobProfile cathProfile danProfile $
|
||||
|
|
|
@ -1085,7 +1085,7 @@ testJoinGroupIncognito =
|
|||
]
|
||||
-- cath cannot invite to the group because her membership is incognito
|
||||
cath ##> "/a secret_club dan"
|
||||
cath <## "you've connected to this group using an incognito profile - prohibited to invite contacts"
|
||||
cath <## "you are using an incognito profile for this group - prohibited to invite contacts"
|
||||
-- alice invites dan
|
||||
alice ##> "/a secret_club dan admin"
|
||||
concurrentlyN_
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue