diff spec/core_storagemanager_spec.lua @ 13402:6877786d73d7

mod_storage_internal, tests: Fix before/after combined with the 'reverse' flag
author Matthew Wild <mwild1@gmail.com>
date Tue, 12 Dec 2023 13:41:14 +0000
parents 2902c54f45a6
children 97bbe60336bc
line wrap: on
line diff
--- a/spec/core_storagemanager_spec.lua	Sat Dec 09 21:01:49 2023 +0100
+++ b/spec/core_storagemanager_spec.lua	Tue Dec 12 13:41:14 2023 +0000
@@ -560,6 +560,30 @@
 
 					end);
 
+					-- This tests combines the reverse flag with 'before' and 'after' to
+					-- ensure behaviour remains correct
+					it("by id (before and after) in reverse #full_id_range", function ()
+						assert.truthy(archive.caps and archive.caps.full_id_range, "full ID range support")
+						local data, err = archive:find("user", {
+								["after"] = test_data[1][1];
+								["before"] = test_data[4][1];
+								reverse = true;
+							});
+						assert.truthy(data, err);
+						local count = 0;
+						for id, item in data do
+							count = count + 1;
+							assert.truthy(id);
+							assert.equal(test_data[4-count][1], id);
+							assert(st.is_stanza(item));
+							assert.equal("test", item.name);
+							assert.equal("urn:example:foo", item.attr.xmlns);
+							assert.equal(2, #item.tags);
+						end
+						assert.equal(2, count);
+					end);
+
+
 
 				end);