17
17
18
18
import java .io .ByteArrayInputStream ;
19
19
import java .io .InputStream ;
20
+ import java .util .Arrays ;
20
21
import java .util .Map ;
21
22
import java .util .Optional ;
22
23
@@ -101,13 +102,14 @@ public void booleanSchema() {
101
102
public void builderhasDefaultFormatValidators () {
102
103
SchemaLoader actual = SchemaLoader .builder ().schemaJson (get ("booleanSchema" )).build ();
103
104
Assert
104
- .assertTrue (actual .getFormatValidator ("date-time" ).get () instanceof DateTimeFormatValidator );
105
+ .assertTrue (
106
+ actual .getFormatValidator ("date-time" ).get () instanceof DateTimeFormatValidator );
105
107
Assert .assertTrue (actual .getFormatValidator ("uri" ).get () instanceof URIFormatValidator );
106
108
Assert .assertTrue (actual .getFormatValidator ("email" ).get () instanceof EmailFormatValidator );
107
109
Assert .assertTrue (actual .getFormatValidator ("ipv4" ).get () instanceof IPV4Validator );
108
110
Assert .assertTrue (actual .getFormatValidator ("ipv6" ).get () instanceof IPV6Validator );
109
111
Assert
110
- .assertTrue (actual .getFormatValidator ("hostname" ).get () instanceof HostnameFormatValidator );
112
+ .assertTrue (actual .getFormatValidator ("hostname" ).get () instanceof HostnameFormatValidator );
111
113
}
112
114
113
115
@ Test
@@ -327,7 +329,7 @@ public void pointerResolution() {
327
329
ObjectSchema actual = (ObjectSchema ) SchemaLoader .load (get ("pointerResolution" ));
328
330
ObjectSchema rectangleSchema = (ObjectSchema ) ((ReferenceSchema ) actual .getPropertySchemas ()
329
331
.get ("rectangle" ))
330
- .getReferredSchema ();
332
+ .getReferredSchema ();
331
333
Assert .assertNotNull (rectangleSchema );
332
334
ReferenceSchema aRef = (ReferenceSchema ) rectangleSchema .getPropertySchemas ().get ("a" );
333
335
Assert .assertTrue (aRef .getReferredSchema () instanceof NumberSchema );
@@ -353,6 +355,14 @@ public void recursiveSchema() {
353
355
SchemaLoader .load (get ("recursiveSchema" ));
354
356
}
355
357
358
+ @ Test
359
+ public void refWithType () {
360
+ ObjectSchema actualRoot = (ObjectSchema ) SchemaLoader .load (get ("refWithType" ));
361
+ ReferenceSchema actual = (ReferenceSchema ) actualRoot .getPropertySchemas ().get ("prop" );
362
+ ObjectSchema propSchema = (ObjectSchema ) actual .getReferredSchema ();
363
+ Assert .assertEquals (propSchema .getRequiredProperties (), Arrays .asList ("a" , "b" ));
364
+ }
365
+
356
366
@ Test
357
367
public void remotePointerResulion () {
358
368
SchemaClient httpClient = Mockito .mock (SchemaClient .class );
0 commit comments