diff options
author | Kim Alvefur <zash@zash.se> | 2021-03-09 14:31:11 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2021-03-09 14:31:11 +0100 |
commit | 6db9456d8881cf0ea4d926384c93d25bc0c94978 (patch) | |
tree | 0884d966835b148f77717ac3c733749cfe0d8acf /util | |
parent | 44edd47ca85307e1e4886aea59197c2ccec6f47c (diff) | |
download | prosody-6db9456d8881cf0ea4d926384c93d25bc0c94978.tar.gz prosody-6db9456d8881cf0ea4d926384c93d25bc0c94978.zip |
util.jsonschema: Restructure "type" keyword handling
More in line with the other tests
Diffstat (limited to 'util')
-rw-r--r-- | util/jsonschema.lua | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/util/jsonschema.lua b/util/jsonschema.lua index ed8c0ccc..5639236a 100644 --- a/util/jsonschema.lua +++ b/util/jsonschema.lua @@ -110,10 +110,6 @@ local function validate(schema, data) end end - if not simple_validate(schema.type, data) then - return false - end - if schema.const ~= nil and schema.const ~= data then return false end @@ -127,12 +123,17 @@ local function validate(schema, data) return false end - local validator = type_validators[schema.type] - if not validator then - return true - end + if schema.type then + if not simple_validate(schema.type, data) then + return false + end - return validator(schema, data) + local validator = type_validators[schema.type] + if validator then + return validator(schema, data) + end + end + return true end end |