@@ -43,59 +43,68 @@ private JSONObject get(final String schemaName) {
43
43
@ Test
44
44
public void objectSchemaHasField () {
45
45
ObjectSchema actual = (ObjectSchema ) SchemaLoader .load (get ("pointerResolution" ));
46
- Assert .assertTrue (actual .definesProperty ("rectangle" ));
47
- Assert .assertTrue (actual .definesProperty ("rectangle. a" ));
48
- Assert .assertTrue (actual .definesProperty ("rectangle. b" ));
49
-
50
- Assert .assertFalse (actual .definesProperty ("rectangle. c" ));
51
- Assert .assertFalse (actual .definesProperty ("rectangle. " ));
52
- Assert .assertFalse (actual .definesProperty (". " ));
53
- Assert .assertFalse (actual .definesProperty (". a" ));
54
- Assert .assertFalse (actual .definesProperty ("" ));
55
- Assert .assertFalse (actual .definesProperty ("rectangle.a. d" ));
46
+ Assert .assertTrue (actual .definesProperty ("#/ rectangle" ));
47
+ Assert .assertTrue (actual .definesProperty ("#/ rectangle/ a" ));
48
+ Assert .assertTrue (actual .definesProperty ("#/ rectangle/ b" ));
49
+
50
+ Assert .assertFalse (actual .definesProperty ("#/ rectangle/ c" ));
51
+ Assert .assertFalse (actual .definesProperty ("#/ rectangle/ " ));
52
+ Assert .assertFalse (actual .definesProperty ("#/ " ));
53
+ Assert .assertFalse (actual .definesProperty ("#/ a" ));
54
+ Assert .assertFalse (actual .definesProperty ("# " ));
55
+ Assert .assertFalse (actual .definesProperty ("#/ rectangle/a/ d" ));
56
56
}
57
57
58
58
@ Test
59
59
public void recursiveSchemaHasField () {
60
60
Schema recursiveSchema = SchemaLoader .load (get ("recursiveSchema" ));
61
61
62
- Assert .assertTrue (recursiveSchema .definesProperty ("prop" ));
63
- Assert .assertTrue (recursiveSchema .definesProperty ("prop. subprop" ));
64
- Assert .assertTrue (recursiveSchema .definesProperty ("prop. subprop. subprop" ));
65
- Assert .assertTrue (recursiveSchema .definesProperty ("prop. subprop. subprop. subprop" ));
62
+ Assert .assertTrue (recursiveSchema .definesProperty ("#/ prop" ));
63
+ Assert .assertTrue (recursiveSchema .definesProperty ("#/ prop/ subprop" ));
64
+ Assert .assertTrue (recursiveSchema .definesProperty ("#/ prop/ subprop/ subprop" ));
65
+ Assert .assertTrue (recursiveSchema .definesProperty ("#/ prop/ subprop/ subprop/ subprop" ));
66
66
}
67
67
68
68
@ Test
69
69
public void patternPropertiesHasField () {
70
70
ObjectSchema actual = (ObjectSchema ) SchemaLoader .load (get ("patternProperties" ));
71
- Assert .assertTrue (actual .definesProperty ("a" ));
72
- Assert .assertTrue (actual .definesProperty ("aa" ));
73
- Assert .assertTrue (actual .definesProperty ("aaa" ));
74
- Assert .assertTrue (actual .definesProperty ("aaaa" ));
75
- Assert .assertTrue (actual .definesProperty ("aaaaa" ));
71
+ Assert .assertTrue (actual .definesProperty ("#/ a" ));
72
+ Assert .assertTrue (actual .definesProperty ("#/ aa" ));
73
+ Assert .assertTrue (actual .definesProperty ("#/ aaa" ));
74
+ Assert .assertTrue (actual .definesProperty ("#/ aaaa" ));
75
+ Assert .assertTrue (actual .definesProperty ("#/ aaaaa" ));
76
76
77
77
Assert .assertFalse (actual .definesProperty ("b" ));
78
78
}
79
79
80
80
@ Test
81
81
public void objectWithSchemaDep () {
82
82
ObjectSchema actual = (ObjectSchema ) SchemaLoader .load (get ("objectWithSchemaDep" ));
83
- Assert .assertTrue (actual .definesProperty ("a" ));
84
- Assert .assertTrue (actual .definesProperty ("b" ));
83
+ Assert .assertTrue (actual .definesProperty ("#/ a" ));
84
+ Assert .assertTrue (actual .definesProperty ("#/ b" ));
85
85
86
- Assert .assertFalse (actual .definesProperty ("c" ));
86
+ Assert .assertFalse (actual .definesProperty ("#/ c" ));
87
87
}
88
88
89
89
@ Test
90
90
public void objectWithSchemaRectangleDep () {
91
91
ObjectSchema actual = (ObjectSchema ) SchemaLoader .load (get ("objectWithSchemaRectangleDep" ));
92
- Assert .assertTrue (actual .definesProperty ("d.e " ));
93
- Assert .assertTrue (actual .definesProperty ("rectangle. a" ));
94
- Assert .assertTrue (actual .definesProperty ("rectangle. b" ));
92
+ Assert .assertTrue (actual .definesProperty ("#/d " ));
93
+ Assert .assertTrue (actual .definesProperty ("#/ rectangle/ a" ));
94
+ Assert .assertTrue (actual .definesProperty ("#/ rectangle/ b" ));
95
95
96
- Assert .assertFalse (actual .definesProperty ("c" ));
97
- Assert .assertFalse (actual .definesProperty ("d.c" ));
98
- Assert .assertFalse (actual .definesProperty ("rectangle.c" ));
96
+ Assert .assertFalse (actual .definesProperty ("#/c" ));
97
+ Assert .assertFalse (actual .definesProperty ("#/d/c" ));
98
+ Assert .assertFalse (actual .definesProperty ("#/rectangle/c" ));
99
+ }
100
+
101
+ @ Test
102
+ public void objectEscape () {
103
+ ObjectSchema actual = (ObjectSchema ) SchemaLoader .load (get ("objectEscape" ));
104
+ Assert .assertTrue (actual .definesProperty ("#/a~0b" ));
105
+ Assert .assertTrue (actual .definesProperty ("#/a~0b/c~1d" ));
106
+
107
+ Assert .assertFalse (actual .definesProperty ("#/a~0b/c/d" ));
99
108
}
100
109
101
110
}
0 commit comments