summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorRoman Smrž <roman.smrz@seznam.cz>2025-10-18 22:45:29 +0200
committerRoman Smrž <roman.smrz@seznam.cz>2025-11-05 00:18:56 +0100
commit497c11fd3636f3befd1e8dce4cd9dff8b3c63844 (patch)
tree5175acadff34699b5f0da9721d14461845726cba /test
parentd13a6d4c4c857dbb830d3c9dbc3785b4cd0ee84d (diff)
Invite service and shared state
Changelog: New service and shared state for invites
Diffstat (limited to 'test')
-rw-r--r--test/invite.et73
1 files changed, 73 insertions, 0 deletions
diff --git a/test/invite.et b/test/invite.et
new file mode 100644
index 0000000..bf1a45a
--- /dev/null
+++ b/test/invite.et
@@ -0,0 +1,73 @@
+module invite
+
+import common
+
+test InviteContact:
+ let services = "contact,invite"
+
+ spawn as p1
+ spawn as p2
+
+ send "create-identity Device1 Owner1" to p1
+ expect /create-identity-done ref ($refpat)/ from p1 capture p1id
+ send "identity-info $p1id" to p1
+ expect /identity-info ref $p1id base ($refpat) owner ($refpat).*/ from p1 capture p1base, p1owner
+ send "identity-info $p1owner" to p1
+ expect /identity-info ref $p1owner base ($refpat).*/ from p1 capture p1obase
+
+ send "create-identity Device2 Owner2" to p2
+ expect /create-identity-done ref ($refpat)/ from p2 capture p2id
+
+ send "start-server services $services" to p1
+ send "start-server services $services" to p2
+
+ expect from p1:
+ /peer ([0-9]+) addr ${p2.node.ip} 29665/ capture peer1_2
+ /peer $peer1_2 id Device2 Owner2/
+
+ expect from p2:
+ /peer ([0-9]+) addr ${p1.node.ip} 29665/ capture peer2_1
+ /peer $peer2_1 id Device1 Owner1/
+
+ send "invite-contact-create Contact2" to p1
+ expect from p1 /invite-contact-create-done ([^ ]+)/ capture token
+
+ with p2:
+ send "invite-accept 00 $p1obase"
+ expect /invite-accept-done 00 invalid/
+
+ send "contact-list"
+ expect:
+ /contact-list-(.*)/ capture done
+ guard (done == "done")
+
+ with p2:
+ send "invite-accept $token $p1obase"
+ expect /invite-accept-done $token contact/
+
+ send "contact-list"
+ expect:
+ /contact-list-item [a-z0-9#]+ Owner1 Owner1/
+ /contact-list-(.*)/ capture done
+ guard (done == "done")
+
+ with p2:
+ send "invite-accept $token $p1obase"
+ expect /invite-accept-done $token invalid/
+
+ send "contact-list"
+ expect:
+ /contact-list-item [a-z0-9#]+ Owner1 Owner1/
+ /contact-list-(.*)/ capture done
+ guard (done == "done")
+
+ with p1:
+ expect /invite-accepted 00 $p2id/
+ expect /invite-accepted $token $p2id/
+ expect /invite-accepted $token $p2id/
+
+ send "contact-list"
+ expect:
+ /contact-list-item [a-z0-9#]+ Contact2 Owner2/
+ /contact-list-(.*)/ capture done
+ guard (done == "done")