Mercurial > prosody-hg
annotate spec/util_jsonpointer_spec.lua @ 13144:033ea8b46d6a
mod_storage_sql: Compose a keyval+ store out of keyval and map store methods
Removes the need for the shim in storagemanager.
The methods only really access the 'store' property of the first (self)
argument, so this is safe.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Sat, 10 Jun 2023 16:39:48 +0200 |
| parents | 4d5549de27e6 |
| children |
| rev | line source |
|---|---|
| 12495 | 1 describe("util.jsonpointer", function() |
| 2 local json, jp; | |
| 3 setup(function() | |
| 4 json = require "util.json"; | |
| 5 jp = require "util.jsonpointer"; | |
| 6 end) | |
| 7 describe("resolve()", function() | |
| 8 local example; | |
| 9 setup(function() | |
| 10 example = json.decode([[{ | |
| 11 "foo": ["bar", "baz"], | |
| 12 "": 0, | |
| 13 "a/b": 1, | |
| 14 "c%d": 2, | |
| 15 "e^f": 3, | |
| 16 "g|h": 4, | |
| 17 "i\\j": 5, | |
| 18 "k\"l": 6, | |
| 19 " ": 7, | |
| 20 "m~n": 8 | |
| 21 }]]) | |
| 22 end) | |
| 23 it("works", function() | |
|
12777
4d5549de27e6
util.jsonpointer: Improve tests
Kim Alvefur <zash@zash.se>
parents:
12495
diff
changeset
|
24 assert.is_nil(jp.resolve("string", "/string")) |
| 12495 | 25 assert.same(example, jp.resolve(example, "")); |
| 26 assert.same({ "bar", "baz" }, jp.resolve(example, "/foo")); | |
| 27 assert.same("bar", jp.resolve(example, "/foo/0")); | |
|
12777
4d5549de27e6
util.jsonpointer: Improve tests
Kim Alvefur <zash@zash.se>
parents:
12495
diff
changeset
|
28 assert.same(nil, jp.resolve(example, "/foo/-")); |
| 12495 | 29 assert.same(0, jp.resolve(example, "/")); |
| 30 assert.same(1, jp.resolve(example, "/a~1b")); | |
| 31 assert.same(2, jp.resolve(example, "/c%d")); | |
| 32 assert.same(3, jp.resolve(example, "/e^f")); | |
| 33 assert.same(4, jp.resolve(example, "/g|h")); | |
| 34 assert.same(5, jp.resolve(example, "/i\\j")); | |
| 35 assert.same(6, jp.resolve(example, "/k\"l")); | |
| 36 assert.same(7, jp.resolve(example, "/ ")); | |
| 37 assert.same(8, jp.resolve(example, "/m~0n")); | |
| 38 end) | |
| 39 end) | |
| 40 end) |
