summaryrefslogtreecommitdiff
path: root/storage.et
diff options
context:
space:
mode:
authorRoman Smrž <roman.smrz@seznam.cz>2026-05-10 10:33:48 +0200
committerRoman Smrž <roman.smrz@seznam.cz>2026-05-10 10:33:48 +0200
commite803ea0cc5a5db01dfba8de597550d7f3316560b (patch)
treeb8ae29ff1b26dd97618e4e76d0d42c6664a00b84 /storage.et
parent59af8514f3699ed5aa54aba5609bf5f00cc2aee3 (diff)
(test) Chunked object type and parsing
Changelog: Support for `chunked` object type.
Diffstat (limited to 'storage.et')
-rw-r--r--storage.et60
1 files changed, 60 insertions, 0 deletions
diff --git a/storage.et b/storage.et
index 16b66e2..45e8ce1 100644
--- a/storage.et
+++ b/storage.et
@@ -625,3 +625,63 @@ test ObjectFormat:
send "load-type $r"
expect /load-type (.*)/ capture type
guard (type == "ondemand")
+
+ # Empty chunked object
+ local:
+ send "store-raw EOF"
+ send "chunked 2\n0\n"
+ send "EOF"
+ expect /store-done ($refpat)/ capture r
+
+ send "load-type $r"
+ expect /load-type (.*)/ capture type
+ guard (type == "chunked")
+
+ send "store blob"
+ send "test"
+ send ""
+ expect /store-done ($refpat)/ capture blob_test_ref
+
+ # Chunked object
+ local:
+ send "store-raw EOF"
+ send "chunked 146\n8\n$blob_test_ref\n$blob_test_ref\n"
+ send "EOF"
+ expect /store-done ($refpat)/ capture r
+
+ send "load-type $r"
+ expect /load-type (.*)/ capture type
+ guard (type == "chunked")
+
+ # Invalid chunked object (missing last newline)
+ local:
+ send "store-raw EOF"
+ send "chunked 145\n8\n$blob_test_ref\n$blob_test_ref"
+ send "EOF"
+ expect /store-done ($refpat)/ capture r
+
+ send "load-type $r"
+ expect /load-type (.*)/ capture type
+ guard (type == "unknown chunked")
+
+ # Invalid chunked object (missing size)
+ local:
+ send "store-raw EOF"
+ send "chunked 144\n$blob_test_ref\n$blob_test_ref\n"
+ send "EOF"
+ expect /store-done ($refpat)/ capture r
+
+ send "load-type $r"
+ expect /load-type (.*)/ capture type
+ guard (type == "unknown chunked")
+
+ # Invalid chunked object (invalid ref)
+ local:
+ send "store-raw EOF"
+ send "chunked 78\n8\nabc\n$blob_test_ref\n"
+ send "EOF"
+ expect /store-done ($refpat)/ capture r
+
+ send "load-type $r"
+ expect /load-type (.*)/ capture type
+ guard (type == "unknown chunked")