Skip to content

Commit 7402f98

Browse files
committed
fix: boolean schemas with strictKeywords option
1 parent cf88d1d commit 7402f98

File tree

3 files changed

+5
-3
lines changed

3 files changed

+5
-3
lines changed

lib/dot/definitions.def

+2-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,8 @@
6464

6565
{{## def.nonEmptySchema:_schema:
6666
(it.opts.strictKeywords
67-
? typeof _schema == 'object' && Object.keys(_schema).length > 0
67+
? (typeof _schema == 'object' && Object.keys(_schema).length > 0)
68+
|| _schema === false
6869
: it.util.schemaHasRules(_schema, it.RULES.all))
6970
#}}
7071

lib/dot/validate.jst

+1-1
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@
8181
it.baseId = it.baseId || it.rootId;
8282
delete it.isTop;
8383

84-
it.dataPathArr = [undefined];
84+
it.dataPathArr = [""];
8585

8686
if (it.schema.default !== undefined && it.opts.useDefaults && it.opts.strictDefaults) {
8787
var $defaultMsg = 'default is ignored in the schema root';

spec/boolean.spec.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ describe('boolean schemas', function() {
1111
ajvs = [
1212
new Ajv,
1313
new Ajv({allErrors: true}),
14-
new Ajv({inlineRefs: false})
14+
new Ajv({inlineRefs: false}),
15+
new Ajv({strictKeywords: true}),
1516
];
1617
});
1718

0 commit comments

Comments
 (0)