[JOHNZON-322] ensure jsonschema can validate negative bounds
diff --git a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/spi/builtin/BaseNumberValidation.java b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/spi/builtin/BaseNumberValidation.java
index 35e920b..14c5ee4 100644
--- a/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/spi/builtin/BaseNumberValidation.java
+++ b/johnzon-jsonschema/src/main/java/org/apache/johnzon/jsonschema/spi/builtin/BaseNumberValidation.java
@@ -37,9 +37,6 @@
     @Override
     protected Stream<ValidationResult.ValidationError> onNumber(final JsonNumber number) {
         final double val = number.doubleValue();
-        if (val <= 0) {
-            return toError(val);
-        }
         if (isValid(val)) {
             return Stream.empty();
         }
diff --git a/johnzon-jsonschema/src/test/java/org/apache/johnzon/jsonschema/JsonSchemaValidatorTest.java b/johnzon-jsonschema/src/test/java/org/apache/johnzon/jsonschema/JsonSchemaValidatorTest.java
index d3247ff..08ea742 100644
--- a/johnzon-jsonschema/src/test/java/org/apache/johnzon/jsonschema/JsonSchemaValidatorTest.java
+++ b/johnzon-jsonschema/src/test/java/org/apache/johnzon/jsonschema/JsonSchemaValidatorTest.java
@@ -242,28 +242,55 @@
 
     @Test
     public void minimum() {
-        final JsonSchemaValidator validator = factory.newInstance(jsonFactory.createObjectBuilder()
-                .add("type", "object")
-                .add("properties", jsonFactory.createObjectBuilder()
-                        .add("age", jsonFactory.createObjectBuilder()
-                                .add("type", "number")
-                                .add("minimum", 5)
-                                .build())
-                        .build())
-                .build());
+        {
+            final JsonSchemaValidator validator = factory.newInstance(jsonFactory.createObjectBuilder()
+                    .add("type", "object")
+                    .add("properties", jsonFactory.createObjectBuilder()
+                            .add("age", jsonFactory.createObjectBuilder()
+                                    .add("type", "number")
+                                    .add("minimum", 5)
+                                    .build())
+                            .build())
+                    .build());
 
-        assertTrue(validator.apply(jsonFactory.createObjectBuilder().add("age", 5).build()).isSuccess());
-        assertTrue(validator.apply(jsonFactory.createObjectBuilder().add("age", 6).build()).isSuccess());
+            assertTrue(validator.apply(jsonFactory.createObjectBuilder().add("age", 5).build()).isSuccess());
+            assertTrue(validator.apply(jsonFactory.createObjectBuilder().add("age", 6).build()).isSuccess());
 
-        final ValidationResult failure = validator.apply(jsonFactory.createObjectBuilder().add("age", 2).build());
-        assertFalse(failure.isSuccess());
-        final Collection<ValidationResult.ValidationError> errors = failure.getErrors();
-        assertEquals(1, errors.size());
-        final ValidationResult.ValidationError error = errors.iterator().next();
-        assertEquals("/age", error.getField());
-        assertEquals("2.0 is less than 5.0", error.getMessage());
+            final ValidationResult failure = validator.apply(jsonFactory.createObjectBuilder().add("age", 2).build());
+            assertFalse(failure.isSuccess());
+            final Collection<ValidationResult.ValidationError> errors = failure.getErrors();
+            assertEquals(1, errors.size());
+            final ValidationResult.ValidationError error = errors.iterator().next();
+            assertEquals("/age", error.getField());
+            assertEquals("2.0 is less than 5.0", error.getMessage());
 
-        validator.close();
+            validator.close();
+        }
+        {
+            final JsonSchemaValidator validator = factory.newInstance(jsonFactory.createObjectBuilder()
+                    .add("type", "object")
+                    .add("properties", jsonFactory.createObjectBuilder()
+                            .add("age", jsonFactory.createObjectBuilder()
+                                    .add("type", "number")
+                                    .add("minimum", -1)
+                                    .build())
+                            .build())
+                    .build());
+
+            assertTrue(validator.apply(jsonFactory.createObjectBuilder().add("age", 1).build()).isSuccess());
+            assertTrue(validator.apply(jsonFactory.createObjectBuilder().add("age", 0).build()).isSuccess());
+            assertTrue(validator.apply(jsonFactory.createObjectBuilder().add("age", -1).build()).isSuccess());
+
+            final ValidationResult failure = validator.apply(jsonFactory.createObjectBuilder().add("age", -2).build());
+            assertFalse(failure.isSuccess());
+            final Collection<ValidationResult.ValidationError> errors = failure.getErrors();
+            assertEquals(1, errors.size());
+            final ValidationResult.ValidationError error = errors.iterator().next();
+            assertEquals("/age", error.getField());
+            assertEquals("-2.0 is less than -1.0", error.getMessage());
+
+            validator.close();
+        }
     }
 
     @Test