diff --git a/pom.xml b/pom.xml
index 1b5fccaec..1959b65f5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -71,15 +71,27 @@
1.81.8UTF-8
- 2.2
- 1.8.0
+
+ 1.10.22.17.0
- 2.1.41
- 5.9.2
+ 2.2.11.3.142.0.13
- 3.0.0
+
+ 2.2
+ 5.10.22.2.31.Final
+
+ 0.8.12
+ 3.13.0
+ 5.1.9
+ 1.6
+ 3.6.3
+ 3.3.1
+ 1.2.1
+ 3.2.5
+ 1.2.1.Final
+ 1.6.13
@@ -184,7 +196,7 @@
org.apache.felixmaven-bundle-plugin
- 5.1.8
+ ${version.maven-bundle-plugin}true
@@ -202,7 +214,7 @@
org.sonatype.pluginsnexus-staging-maven-plugin
- 1.6.8
+ ${version.nexus-staging-maven-plugin}trueossrh
@@ -214,7 +226,7 @@
org.apache.maven.pluginsmaven-source-plugin
- 3.0.1
+ ${version.maven-source-plugin}attach-sources
@@ -228,7 +240,7 @@
org.apache.maven.pluginsmaven-javadoc-plugin
- 3.4.0
+ ${version.maven-javadoc-plugin}attach-javadocs
@@ -245,7 +257,7 @@
org.apache.maven.pluginsmaven-compiler-plugin
- 3.6.1
+ ${version.maven-compiler-plugin}${java.version}
@@ -270,7 +282,7 @@
org.apache.maven.pluginsmaven-surefire-plugin
- ${version.surefire}
+ ${version.maven-surefire-plugin}@{argLine} -Duser.language=en -Duser.region=GBplain
@@ -291,7 +303,7 @@
me.fabriciorbymaven-surefire-junit5-tree-reporter
- 1.1.0
+ ${version.maven-surefire-junit5-tree-reporter}
@@ -299,7 +311,7 @@
org.jacocojacoco-maven-plugin
- 0.8.10
+ ${version.jacoco-maven-plugin}
@@ -346,7 +358,7 @@
org.apache.maven.pluginsmaven-surefire-report-plugin
- ${version.surefire}
+ ${version.maven-surefire-plugin}
@@ -366,7 +378,7 @@
org.apache.maven.pluginsmaven-gpg-plugin
- 1.6
+ ${version.maven-gpg-plugin}sign-artifacts
@@ -391,7 +403,7 @@
org.moditectmoditect-maven-plugin
- 1.0.0.Final
+ ${version.moditect-maven-plugin}add-module-infos
diff --git a/src/test/java/com/networknt/schema/MaximumValidatorTest.java b/src/test/java/com/networknt/schema/MaximumValidatorTest.java
index 6f5a9cb7e..d252648b3 100644
--- a/src/test/java/com/networknt/schema/MaximumValidatorTest.java
+++ b/src/test/java/com/networknt/schema/MaximumValidatorTest.java
@@ -208,7 +208,8 @@ public void negativeDoubleOverflowTest() throws IOException {
v = factory.getSchema(bigDecimalMapper.readTree(schema), config);
Set messages3 = v.validate(doc);
//when the schema and value are both using BigDecimal, the value should be parsed in same mechanism.
- if (maximum.toLowerCase().equals(value.toLowerCase()) || Double.valueOf(maximum).equals(Double.POSITIVE_INFINITY)) {
+ String theValue = value.toLowerCase().replace("\"", "");
+ if (maximum.toLowerCase().equals(theValue)) {
assertTrue(messages3.isEmpty(), format("Maximum %s and value %s are equal, thus no schema violation should be reported", maximum, value));
} else {
assertFalse(messages3.isEmpty(), format("Maximum %s is smaller than value %s , should be validation error reported", maximum, value));
@@ -278,7 +279,9 @@ public void doubleValueCoarsingExceedRange() throws IOException {
*/
v = factory.getSchema(bigDecimalMapper.readTree(schema));
messages = v.validate(doc);
- assertTrue(messages.isEmpty(), "Validation should success because the bug of bigDecimalMapper, it will treat 1.7976931348623159e+308 as INFINITY");
+ // Before 2.16.0 messages will be empty due to bug https://github.com/FasterXML/jackson-databind/issues/1770
+ // assertTrue(messages.isEmpty(), "Validation should success because the bug of bigDecimalMapper, it will treat 1.7976931348623159e+308 as INFINITY");
+ assertFalse(messages.isEmpty(), "Validation should fail as Incorrect deserialization for BigDecimal numbers is fixed in 2.16.0");
}
private static final String POSITIVE_TEST_CASE_TEMPLATE = "Expecting no validation errors, maximum %s is greater than value %s";
diff --git a/src/test/java/com/networknt/schema/MinimumValidatorTest.java b/src/test/java/com/networknt/schema/MinimumValidatorTest.java
index c43cd653f..329b6040e 100644
--- a/src/test/java/com/networknt/schema/MinimumValidatorTest.java
+++ b/src/test/java/com/networknt/schema/MinimumValidatorTest.java
@@ -199,7 +199,8 @@ public void negativeDoubleOverflowTest() throws IOException {
v = factory.getSchema(bigDecimalMapper.readTree(schema), config);
Set messages3 = v.validate(doc);
//when the schema and value are both using BigDecimal, the value should be parsed in same mechanism.
- if (minimum.toLowerCase().equals(value.toLowerCase()) || Double.valueOf(minimum).equals(Double.NEGATIVE_INFINITY)) {
+ String theValue = value.toLowerCase().replace("\"", "");
+ if (minimum.toLowerCase().equals(theValue)) {
assertTrue(messages3.isEmpty(), format("Minimum %s and value %s are equal, thus no schema violation should be reported", minimum, value));
} else {
assertFalse(messages3.isEmpty(), format("Minimum %s is larger than value %s , should be validation error reported", minimum, value));
@@ -258,7 +259,9 @@ public void doubleValueCoarsingExceedRange() throws IOException {
v = factory.getSchema(bigDecimalMapper.readTree(schema));
messages = v.validate(doc);
- assertTrue(messages.isEmpty(), "Validation should succeed due to the bug of BigDecimal option of mapper");
+ // Before 2.16.0 messages will be empty due to bug https://github.com/FasterXML/jackson-databind/issues/1770
+ //assertTrue(messages.isEmpty(), "Validation should succeed due to the bug of BigDecimal option of mapper");
+ assertFalse(messages.isEmpty(), "Validation should fail as Incorrect deserialization for BigDecimal numbers is fixed in 2.16.0");
}
private void expectSomeMessages(String[][] values, String number, ObjectMapper mapper, ObjectMapper mapper2) throws IOException {