Mercurial > prosody-hg
annotate spec/util_jsonpointer_spec.lua @ 13069:45caa4e43775
mod_http: Fix reliance on previous tostring() format of util.set
a863e4237b91 unintentionally changed the format of HTTP CORS headers,
which were apparently relying on the output of tostring(), which it
shouldn't have.
Explicitly serializing it this time.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Mon, 10 Apr 2023 11:50:27 +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) |
