mirror of
https://github.com/bjc/prosody.git
synced 2025-04-01 20:27:39 +03:00
util.jsonpointer: Add basic tests
Example values from RFC 6901
This commit is contained in:
parent
aad451c07e
commit
11638f57e2
1 changed files with 38 additions and 0 deletions
38
spec/util_jsonpointer_spec.lua
Normal file
38
spec/util_jsonpointer_spec.lua
Normal file
|
@ -0,0 +1,38 @@
|
|||
describe("util.jsonpointer", function()
|
||||
local json, jp;
|
||||
setup(function()
|
||||
json = require "util.json";
|
||||
jp = require "util.jsonpointer";
|
||||
end)
|
||||
describe("resolve()", function()
|
||||
local example;
|
||||
setup(function()
|
||||
example = json.decode([[{
|
||||
"foo": ["bar", "baz"],
|
||||
"": 0,
|
||||
"a/b": 1,
|
||||
"c%d": 2,
|
||||
"e^f": 3,
|
||||
"g|h": 4,
|
||||
"i\\j": 5,
|
||||
"k\"l": 6,
|
||||
" ": 7,
|
||||
"m~n": 8
|
||||
}]])
|
||||
end)
|
||||
it("works", function()
|
||||
assert.same(example, jp.resolve(example, ""));
|
||||
assert.same({ "bar", "baz" }, jp.resolve(example, "/foo"));
|
||||
assert.same("bar", jp.resolve(example, "/foo/0"));
|
||||
assert.same(0, jp.resolve(example, "/"));
|
||||
assert.same(1, jp.resolve(example, "/a~1b"));
|
||||
assert.same(2, jp.resolve(example, "/c%d"));
|
||||
assert.same(3, jp.resolve(example, "/e^f"));
|
||||
assert.same(4, jp.resolve(example, "/g|h"));
|
||||
assert.same(5, jp.resolve(example, "/i\\j"));
|
||||
assert.same(6, jp.resolve(example, "/k\"l"));
|
||||
assert.same(7, jp.resolve(example, "/ "));
|
||||
assert.same(8, jp.resolve(example, "/m~0n"));
|
||||
end)
|
||||
end)
|
||||
end)
|
Loading…
Add table
Add a link
Reference in a new issue