Software / code / prosody
Annotate
spec/util_jsonpointer_spec.lua @ 13345:a74251a790ed
mod_blocklist: Remove weak cache (and increase default LRU cache size)
Weak tables are said to have suboptimal performance, so we might as well
get replace it with an increased default LRU cache size.
Sorry about the 'and'
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Sun, 26 Nov 2023 17:41:38 +0100 |
| parent | 12777:4d5549de27e6 |
| 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) |