vertx-json-schema icon indicating copy to clipboard operation
vertx-json-schema copied to clipboard

Incorrect Vert.x Open API 'multipleOf' validation

Open boethomas-corp opened this issue 2 years ago • 1 comments

Version

4.4.1

Context

After upgrading from version 4.2.7 to 4.4.1, I have noticed that validating a number field which has 'multipleOf 0.001' defined in Open API 3 fails for numbers like 1.001, 1.01, 1.02, but passes for numbers like 0.001, 0.002.

Do you have a reproducer?

No, but the changes made in the code are transparent.

Steps to reproduce

The bug was already reported in this issue: https://github.com/vert-x3/vertx-web/issues/2105

But it was reverted in this commit: https://github.com/eclipse-vertx/vertx-json-schema/commit/a51e3e3c553be822dc6272fd7e0b341209b85713

Question

Since the OpenAPI3SchemaParser class which includes the MultipleOfValidatorFactory is marked as deprecated, is there an alternative solution planned for future releases?

boethomas-corp avatar Apr 25 '23 14:04 boethomas-corp

For the record, the reason why the test was disabled was because the fixture test suite, was not the official openapi test suite. Given that the new implementation uses the official test suite and passed the tests, we ignored these tests as it was not a trivial fix. (Not the best solution, but we needed some help to fix the old implementation to behave correctly).

pmlopes avatar Jun 04 '24 15:06 pmlopes