|
|
- {
- "Level 1 Examples" :
- {
- "level": 1,
- "variables": {
- "var" : "value",
- "hello" : "Hello World!"
- },
- "testcases" : [
- ["{var}", "value"],
- ["{hello}", "Hello%20World%21"]
- ]
- },
- "Level 2 Examples" :
- {
- "level": 2,
- "variables": {
- "var" : "value",
- "hello" : "Hello World!",
- "path" : "/foo/bar"
- },
- "testcases" : [
- ["{+var}", "value"],
- ["{+hello}", "Hello%20World!"],
- ["{+path}/here", "/foo/bar/here"],
- ["here?ref={+path}", "here?ref=/foo/bar"]
- ]
- },
- "Level 3 Examples" :
- {
- "level": 3,
- "variables": {
- "var" : "value",
- "hello" : "Hello World!",
- "empty" : "",
- "path" : "/foo/bar",
- "x" : "1024",
- "y" : "768"
- },
- "testcases" : [
- ["map?{x,y}", "map?1024,768"],
- ["{x,hello,y}", "1024,Hello%20World%21,768"],
- ["{+x,hello,y}", "1024,Hello%20World!,768"],
- ["{+path,x}/here", "/foo/bar,1024/here"],
- ["{#x,hello,y}", "#1024,Hello%20World!,768"],
- ["{#path,x}/here", "#/foo/bar,1024/here"],
- ["X{.var}", "X.value"],
- ["X{.x,y}", "X.1024.768"],
- ["{/var}", "/value"],
- ["{/var,x}/here", "/value/1024/here"],
- ["{;x,y}", ";x=1024;y=768"],
- ["{;x,y,empty}", ";x=1024;y=768;empty"],
- ["{?x,y}", "?x=1024&y=768"],
- ["{?x,y,empty}", "?x=1024&y=768&empty="],
- ["?fixed=yes{&x}", "?fixed=yes&x=1024"],
- ["{&x,y,empty}", "&x=1024&y=768&empty="]
- ]
- },
- "Level 4 Examples" :
- {
- "level": 4,
- "variables": {
- "var": "value",
- "hello": "Hello World!",
- "path": "/foo/bar",
- "list": ["red", "green", "blue"],
- "keys": {"semi": ";", "dot": ".", "comma":","}
- },
- "testcases": [
- ["{var:3}", "val"],
- ["{var:30}", "value"],
- ["{list}", "red,green,blue"],
- ["{list*}", "red,green,blue"],
- ["{keys}", [
- "comma,%2C,dot,.,semi,%3B",
- "comma,%2C,semi,%3B,dot,.",
- "dot,.,comma,%2C,semi,%3B",
- "dot,.,semi,%3B,comma,%2C",
- "semi,%3B,comma,%2C,dot,.",
- "semi,%3B,dot,.,comma,%2C"
- ]],
- ["{keys*}", [
- "comma=%2C,dot=.,semi=%3B",
- "comma=%2C,semi=%3B,dot=.",
- "dot=.,comma=%2C,semi=%3B",
- "dot=.,semi=%3B,comma=%2C",
- "semi=%3B,comma=%2C,dot=.",
- "semi=%3B,dot=.,comma=%2C"
- ]],
- ["{+path:6}/here", "/foo/b/here"],
- ["{+list}", "red,green,blue"],
- ["{+list*}", "red,green,blue"],
- ["{+keys}", [
- "comma,,,dot,.,semi,;",
- "comma,,,semi,;,dot,.",
- "dot,.,comma,,,semi,;",
- "dot,.,semi,;,comma,,",
- "semi,;,comma,,,dot,.",
- "semi,;,dot,.,comma,,"
- ]],
- ["{+keys*}", [
- "comma=,,dot=.,semi=;",
- "comma=,,semi=;,dot=.",
- "dot=.,comma=,,semi=;",
- "dot=.,semi=;,comma=,",
- "semi=;,comma=,,dot=.",
- "semi=;,dot=.,comma=,"
- ]],
- ["{#path:6}/here", "#/foo/b/here"],
- ["{#list}", "#red,green,blue"],
- ["{#list*}", "#red,green,blue"],
- ["{#keys}", [
- "#comma,,,dot,.,semi,;",
- "#comma,,,semi,;,dot,.",
- "#dot,.,comma,,,semi,;",
- "#dot,.,semi,;,comma,,",
- "#semi,;,comma,,,dot,.",
- "#semi,;,dot,.,comma,,"
- ]],
- ["{#keys*}", [
- "#comma=,,dot=.,semi=;",
- "#comma=,,semi=;,dot=.",
- "#dot=.,comma=,,semi=;",
- "#dot=.,semi=;,comma=,",
- "#semi=;,comma=,,dot=.",
- "#semi=;,dot=.,comma=,"
- ]],
- ["X{.var:3}", "X.val"],
- ["X{.list}", "X.red,green,blue"],
- ["X{.list*}", "X.red.green.blue"],
- ["X{.keys}", [
- "X.comma,%2C,dot,.,semi,%3B",
- "X.comma,%2C,semi,%3B,dot,.",
- "X.dot,.,comma,%2C,semi,%3B",
- "X.dot,.,semi,%3B,comma,%2C",
- "X.semi,%3B,comma,%2C,dot,.",
- "X.semi,%3B,dot,.,comma,%2C"
- ]],
- ["{/var:1,var}", "/v/value"],
- ["{/list}", "/red,green,blue"],
- ["{/list*}", "/red/green/blue"],
- ["{/list*,path:4}", "/red/green/blue/%2Ffoo"],
- ["{/keys}", [
- "/comma,%2C,dot,.,semi,%3B",
- "/comma,%2C,semi,%3B,dot,.",
- "/dot,.,comma,%2C,semi,%3B",
- "/dot,.,semi,%3B,comma,%2C",
- "/semi,%3B,comma,%2C,dot,.",
- "/semi,%3B,dot,.,comma,%2C"
- ]],
- ["{/keys*}", [
- "/comma=%2C/dot=./semi=%3B",
- "/comma=%2C/semi=%3B/dot=.",
- "/dot=./comma=%2C/semi=%3B",
- "/dot=./semi=%3B/comma=%2C",
- "/semi=%3B/comma=%2C/dot=.",
- "/semi=%3B/dot=./comma=%2C"
- ]],
- ["{;hello:5}", ";hello=Hello"],
- ["{;list}", ";list=red,green,blue"],
- ["{;list*}", ";list=red;list=green;list=blue"],
- ["{;keys}", [
- ";keys=comma,%2C,dot,.,semi,%3B",
- ";keys=comma,%2C,semi,%3B,dot,.",
- ";keys=dot,.,comma,%2C,semi,%3B",
- ";keys=dot,.,semi,%3B,comma,%2C",
- ";keys=semi,%3B,comma,%2C,dot,.",
- ";keys=semi,%3B,dot,.,comma,%2C"
- ]],
- ["{;keys*}", [
- ";comma=%2C;dot=.;semi=%3B",
- ";comma=%2C;semi=%3B;dot=.",
- ";dot=.;comma=%2C;semi=%3B",
- ";dot=.;semi=%3B;comma=%2C",
- ";semi=%3B;comma=%2C;dot=.",
- ";semi=%3B;dot=.;comma=%2C"
- ]],
- ["{?var:3}", "?var=val"],
- ["{?list}", "?list=red,green,blue"],
- ["{?list*}", "?list=red&list=green&list=blue"],
- ["{?keys}", [
- "?keys=comma,%2C,dot,.,semi,%3B",
- "?keys=comma,%2C,semi,%3B,dot,.",
- "?keys=dot,.,comma,%2C,semi,%3B",
- "?keys=dot,.,semi,%3B,comma,%2C",
- "?keys=semi,%3B,comma,%2C,dot,.",
- "?keys=semi,%3B,dot,.,comma,%2C"
- ]],
- ["{?keys*}", [
- "?comma=%2C&dot=.&semi=%3B",
- "?comma=%2C&semi=%3B&dot=.",
- "?dot=.&comma=%2C&semi=%3B",
- "?dot=.&semi=%3B&comma=%2C",
- "?semi=%3B&comma=%2C&dot=.",
- "?semi=%3B&dot=.&comma=%2C"
- ]],
- ["{&var:3}", "&var=val"],
- ["{&list}", "&list=red,green,blue"],
- ["{&list*}", "&list=red&list=green&list=blue"],
- ["{&keys}", [
- "&keys=comma,%2C,dot,.,semi,%3B",
- "&keys=comma,%2C,semi,%3B,dot,.",
- "&keys=dot,.,comma,%2C,semi,%3B",
- "&keys=dot,.,semi,%3B,comma,%2C",
- "&keys=semi,%3B,comma,%2C,dot,.",
- "&keys=semi,%3B,dot,.,comma,%2C"
- ]],
- ["{&keys*}", [
- "&comma=%2C&dot=.&semi=%3B",
- "&comma=%2C&semi=%3B&dot=.",
- "&dot=.&comma=%2C&semi=%3B",
- "&dot=.&semi=%3B&comma=%2C",
- "&semi=%3B&comma=%2C&dot=.",
- "&semi=%3B&dot=.&comma=%2C"
- ]]
- ]
- }
- }
|