From 5bfe403526ce557ddcffb4ec5c47e977a44b228c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roman=20Smr=C5=BE?= Date: Sun, 10 May 2026 11:51:44 +0200 Subject: (test) Dir object type and parsing Changelog: Support for `dir` object type. --- storage.et | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/storage.et b/storage.et index 45e8ce1..ee19e6e 100644 --- a/storage.et +++ b/storage.et @@ -685,3 +685,54 @@ test ObjectFormat: send "load-type $r" expect /load-type (.*)/ capture type guard (type == "unknown chunked") + + # Empty dir object + local: + send "store-raw EOF" + send "dir 0\n" + send "EOF" + expect /store-done ($refpat)/ capture r + + send "load-type $r" + expect /load-type (.*)/ capture type + guard (type == "dir") + + # Small dir object + local: + send: + "store dir" + "$blob_test_ref $empty_rec_ref some_file" + "$blob_test_ref $empty_rec_ref some file" + "$blob_test_ref $empty_rec_ref some file\n\twith\n\tnewlines" + "$blob_test_ref $empty_rec_ref special chars !@#\$%^&*()\\/=?+" + "$blob_test_ref $empty_rec_ref last file" + "" + expect /store-done ($refpat)/ capture r + + send "load-type $r" + expect /load-type (.*)/ capture type + guard (type == "dir") + + # Invalid dir object + local: + send: + "store dir" + "$blob_test_ref some_file" + "" + expect /store-done ($refpat)/ capture r + + send "load-type $r" + expect /load-type (.*)/ capture type + guard (type == "unknown dir") + + # Invalid dir object + local: + send: + "store dir" + "0" + "" + expect /store-done ($refpat)/ capture r + + send "load-type $r" + expect /load-type (.*)/ capture type + guard (type == "unknown dir") -- cgit v1.2.3