ref.json revision 263646
1263646Sbapt[ 2263646Sbapt { 3263646Sbapt "description": "root pointer ref", 4263646Sbapt "schema": { 5263646Sbapt "properties": { 6263646Sbapt "foo": {"$ref": "#"} 7263646Sbapt }, 8263646Sbapt "additionalProperties": false 9263646Sbapt }, 10263646Sbapt "tests": [ 11263646Sbapt { 12263646Sbapt "description": "match", 13263646Sbapt "data": {"foo": false}, 14263646Sbapt "valid": true 15263646Sbapt }, 16263646Sbapt { 17263646Sbapt "description": "recursive match", 18263646Sbapt "data": {"foo": {"foo": false}}, 19263646Sbapt "valid": true 20263646Sbapt }, 21263646Sbapt { 22263646Sbapt "description": "mismatch", 23263646Sbapt "data": {"bar": false}, 24263646Sbapt "valid": false 25263646Sbapt }, 26263646Sbapt { 27263646Sbapt "description": "recursive mismatch", 28263646Sbapt "data": {"foo": {"bar": false}}, 29263646Sbapt "valid": false 30263646Sbapt } 31263646Sbapt ] 32263646Sbapt }, 33263646Sbapt { 34263646Sbapt "description": "relative pointer ref to object", 35263646Sbapt "schema": { 36263646Sbapt "properties": { 37263646Sbapt "foo": {"type": "integer"}, 38263646Sbapt "bar": {"$ref": "#/properties/foo"} 39263646Sbapt } 40263646Sbapt }, 41263646Sbapt "tests": [ 42263646Sbapt { 43263646Sbapt "description": "match", 44263646Sbapt "data": {"bar": 3}, 45263646Sbapt "valid": true 46263646Sbapt }, 47263646Sbapt { 48263646Sbapt "description": "mismatch", 49263646Sbapt "data": {"bar": true}, 50263646Sbapt "valid": false 51263646Sbapt } 52263646Sbapt ] 53263646Sbapt }, 54263646Sbapt { 55263646Sbapt "description": "relative pointer ref to array", 56263646Sbapt "schema": { 57263646Sbapt "items": [ 58263646Sbapt {"type": "integer"}, 59263646Sbapt {"$ref": "#/items/0"} 60263646Sbapt ] 61263646Sbapt }, 62263646Sbapt "tests": [ 63263646Sbapt { 64263646Sbapt "description": "match array", 65263646Sbapt "data": [1, 2], 66263646Sbapt "valid": true 67263646Sbapt }, 68263646Sbapt { 69263646Sbapt "description": "mismatch array", 70263646Sbapt "data": [1, "foo"], 71263646Sbapt "valid": false 72263646Sbapt } 73263646Sbapt ] 74263646Sbapt }, 75263646Sbapt { 76263646Sbapt "description": "escaped pointer ref", 77263646Sbapt "schema": { 78263646Sbapt "tilda~field": {"type": "integer"}, 79263646Sbapt "slash/field": {"type": "integer"}, 80263646Sbapt "percent%field": {"type": "integer"}, 81263646Sbapt "properties": { 82263646Sbapt "tilda": {"$ref": "#/tilda~0field"}, 83263646Sbapt "slash": {"$ref": "#/slash~1field"}, 84263646Sbapt "percent": {"$ref": "#/percent%25field"} 85263646Sbapt } 86263646Sbapt }, 87263646Sbapt "tests": [ 88263646Sbapt { 89263646Sbapt "description": "slash", 90263646Sbapt "data": {"slash": "aoeu"}, 91263646Sbapt "valid": false 92263646Sbapt }, 93263646Sbapt { 94263646Sbapt "description": "tilda", 95263646Sbapt "data": {"tilda": "aoeu"}, 96263646Sbapt "valid": false 97263646Sbapt }, 98263646Sbapt { 99263646Sbapt "description": "percent", 100263646Sbapt "data": {"percent": "aoeu"}, 101263646Sbapt "valid": false 102263646Sbapt } 103263646Sbapt ] 104263646Sbapt }, 105263646Sbapt { 106263646Sbapt "description": "nested refs", 107263646Sbapt "schema": { 108263646Sbapt "definitions": { 109263646Sbapt "a": {"type": "integer"}, 110263646Sbapt "b": {"$ref": "#/definitions/a"}, 111263646Sbapt "c": {"$ref": "#/definitions/b"} 112263646Sbapt }, 113263646Sbapt "$ref": "#/definitions/c" 114263646Sbapt }, 115263646Sbapt "tests": [ 116263646Sbapt { 117263646Sbapt "description": "nested ref valid", 118263646Sbapt "data": 5, 119263646Sbapt "valid": true 120263646Sbapt }, 121263646Sbapt { 122263646Sbapt "description": "nested ref invalid", 123263646Sbapt "data": "a", 124263646Sbapt "valid": false 125263646Sbapt } 126263646Sbapt ] 127263646Sbapt }, 128263646Sbapt/* 129263646Sbapt { 130263646Sbapt "description": "remote ref, containing refs itself", 131263646Sbapt "schema": {"$ref": "http://json-schema.org/draft-04/schema#"}, 132263646Sbapt "tests": [ 133263646Sbapt { 134263646Sbapt "description": "remote ref valid", 135263646Sbapt "data": {"minLength": 1}, 136263646Sbapt "valid": true 137263646Sbapt }, 138263646Sbapt { 139263646Sbapt "description": "remote ref invalid", 140263646Sbapt "data": {"minLength": -1}, 141263646Sbapt "valid": false 142263646Sbapt } 143263646Sbapt ] 144263646Sbapt } 145263646Sbapt*/ 146263646Sbapt] 147