voxpupuli / json-schema

Ruby JSON Schema Validator
MIT License
1.52k stars 241 forks source link

AdditionalProperties not being applied when value could be array #438

Open dharanikumar-19 opened 4 years ago

dharanikumar-19 commented 4 years ago

This fix should will resolve this issue #404

Given the following schema:

{ "type": [ "object", "null" ], "properties": { "a_string": { "type": "string" } }, "additionalProperties": false } The sample data object = { "a_string": "this property is allowed by the schema", "an_extra_string": "the schema does not allow this property" }

Previously it does not raise any error

After the fix Following error will throw JSON::Schema::ValidationError: The property '#/' contains additional properties ["an_array"] outside of the schema when none are allowed

pboling commented 3 years ago

https://github.com/ruby-json-schema/json-schema/issues/423#issuecomment-634811990

bastelfreak commented 2 years ago

Hi @dharanikumar-19, thanks for this PR. Are you able to rebase and add tests for the change?