Skip to content

Commit a2398cf

Browse files
committed
Make error messages consistent. Fixes ajv-validator#2514.
1 parent 82735a1 commit a2398cf

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

Diff for: lib/vocabularies/applicator/dependencies.ts

+5-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,11 @@ export type DependenciesError = ErrorObject<
3030
export const error: KeywordErrorDefinition = {
3131
message: ({params: {property, depsCount, deps}}) => {
3232
const property_ies = depsCount === 1 ? "property" : "properties"
33-
return str`must have ${property_ies} ${deps} when property ${property} is present`
33+
const quotedDeps = (deps as string)
34+
.split(", ")
35+
.map((v) => `'${v}'`)
36+
.join(", ")
37+
return str`must have ${property_ies} ${quotedDeps} when property '${property}' is present`
3438
},
3539
params: ({params: {property, depsCount, deps, missingProperty}}) =>
3640
_`{property: ${property},

Diff for: spec/errors.spec.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -393,7 +393,7 @@ describe("Validation errors", () => {
393393
invalidData1 = {a: 0, foo: 1, baz: 3},
394394
invalidData2 = {a: 0, bar: 2}
395395

396-
const msg = "must have properties foo, bar, baz when property a is present"
396+
const msg = "must have properties 'foo', 'bar', 'baz' when property 'a' is present"
397397

398398
const validate = ajv.compile(schema)
399399
shouldBeValid(validate, data)

0 commit comments

Comments
 (0)