# HG changeset patch # User Kim Alvefur # Date 1615296671 -3600 # Node ID 1d84b54ba0d7eeda021d695a6516fcf67e1387d2 # Parent 7ad137fe665bda49ddaf49be77a02a2ca0763636 util.jsonschema: Restructure "type" keyword handling More in line with the other tests diff -r 7ad137fe665b -r 1d84b54ba0d7 teal-src/util/jsonschema.tl --- a/teal-src/util/jsonschema.tl Tue Mar 09 14:22:33 2021 +0100 +++ b/teal-src/util/jsonschema.tl Tue Mar 09 14:31:11 2021 +0100 @@ -192,10 +192,6 @@ 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 @@ -209,12 +205,17 @@ return false end - local validator = type_validators[schema.type] - if not validator then - return true + if schema.type then + if not simple_validate(schema.type, data) then + return false + end + + local validator = type_validators[schema.type] + if validator then + return validator(schema, data) + end end - - return validator(schema, data) + return true end end diff -r 7ad137fe665b -r 1d84b54ba0d7 util/jsonschema.lua --- a/util/jsonschema.lua Tue Mar 09 14:22:33 2021 +0100 +++ b/util/jsonschema.lua Tue Mar 09 14:31:11 2021 +0100 @@ -110,10 +110,6 @@ 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 @@ return false end - local validator = type_validators[schema.type] - if not validator then - return true + if schema.type then + if not simple_validate(schema.type, data) then + return false + end + + local validator = type_validators[schema.type] + if validator then + return validator(schema, data) + end end - - return validator(schema, data) + return true end end