summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorRoman Smrž <roman.smrz@seznam.cz>2026-01-25 10:22:04 +0100
committerRoman Smrž <roman.smrz@seznam.cz>2026-01-27 19:45:23 +0100
commit66bfcd8ad4ef16dcd0e287004dc08f8948589bce (patch)
tree337a1658cc4ff76c14254a0d69aafd6c61765a14 /test
parent7e0685f049f8981c4f11c3c83caacf85bc855577 (diff)
Deferred object loading
Diffstat (limited to 'test')
-rw-r--r--test/deferred.et50
1 files changed, 50 insertions, 0 deletions
diff --git a/test/deferred.et b/test/deferred.et
new file mode 100644
index 0000000..c514577
--- /dev/null
+++ b/test/deferred.et
@@ -0,0 +1,50 @@
+module deferred
+
+import common
+
+test OnDemandLoad:
+ let services = "test"
+
+ spawn as p1
+ spawn as p2
+
+ send "create-identity Device1" to p1
+ send "create-identity Device2" to p2
+ send "start-server services $services" to p1
+ send "start-server services $services" to p2
+ expect from p1:
+ /peer 1 addr ${p2.node.ip} 29665/
+ /peer 1 id Device2/
+ expect from p2:
+ /peer 1 addr ${p1.node.ip} 29665/
+ /peer 1 id Device1/
+
+ with p1:
+ send "store blob"
+ send "test"
+ send ""
+ expect /store-done ($refpat)/ capture blob_ref
+
+ send "store ondemand"
+ send "12"
+ send "$blob_ref"
+ send ""
+ expect /store-done ($refpat)/ capture ondemand_ref
+
+ send "test-message-send 1 $ondemand_ref"
+ expect /test-message-send done/
+ with p2:
+ expect /test-message-received ondemand [0-9]+ $ondemand_ref/
+ expect /test-ondemand-received 0 [0-9]+ $blob_ref/
+
+ send "load-type $ondemand_ref"
+ expect /load-type ondemand/
+
+ send "load-type $blob_ref"
+ expect /load-type-failed/
+
+ send "load-deferred 0"
+ expect /load-deferred-done 0 blob [0-9]+/
+
+ send "load-type $blob_ref"
+ expect /load-type blob/