|
|
@@ -16,6 +16,7 @@ public class SchemaTest {
|
|
|
private Schema getNumberSchema() {
|
|
|
Map<String, Tester> tests = new HashMap<>();
|
|
|
tests.put("minimum", new NumberTester(d -> d >= 0.0));
|
|
|
+ tests.put("multipleOf", new NumberTester(d -> Math.abs(d % 0.25) < 1E-7));
|
|
|
tests.put("exclusiveMaximum", new NumberTester(d -> d < 1.0));
|
|
|
return new Schema(tests);
|
|
|
}
|
|
|
@@ -32,7 +33,25 @@ public class SchemaTest {
|
|
|
|
|
|
@Test
|
|
|
public void testHandlesMultipleTestsForNumber() {
|
|
|
+ assertFalse(getNumberSchema().accepts(new DoubleNode(-0.25)));
|
|
|
+ assertTrue(getNumberSchema().accepts(new DoubleNode(0.0)));
|
|
|
assertTrue(getNumberSchema().accepts(new DoubleNode(0.5)));
|
|
|
+ assertFalse(getNumberSchema().accepts(new DoubleNode(0.6)));
|
|
|
assertFalse(getNumberSchema().accepts(new DoubleNode(1.0)));
|
|
|
}
|
|
|
+
|
|
|
+ @Test
|
|
|
+ public void testHandlesOtherNumberChecks() {
|
|
|
+ Map<String, Tester> tests = new HashMap<>();
|
|
|
+ tests.put("exclusiveMinimum", new NumberTester(d -> d > 0.0));
|
|
|
+ tests.put("maximum", new NumberTester(d -> d <= 1.0));
|
|
|
+ Schema schema = new Schema(tests);
|
|
|
+
|
|
|
+ assertFalse(schema.accepts(new DoubleNode(0.0)));
|
|
|
+ assertTrue(schema.accepts(new DoubleNode(0.5)));
|
|
|
+ assertTrue(schema.accepts(new DoubleNode(0.6)));
|
|
|
+ assertTrue(schema.accepts(new DoubleNode(1.0)));
|
|
|
+ assertFalse(schema.accepts(new DoubleNode(1.1)));
|
|
|
+ }
|
|
|
+
|
|
|
}
|