From b3c46233c3cc9390b7bd7847d23869526c6c23db Mon Sep 17 00:00:00 2001 From: will Farrell Date: Wed, 6 Feb 2019 14:34:43 -0700 Subject: [PATCH 1/2] test: add test for when trim and toEnumCase exist For #83 --- spec/transform.spec.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/spec/transform.spec.js b/spec/transform.spec.js index 14f8293..6440330 100644 --- a/spec/transform.spec.js +++ b/spec/transform.spec.js @@ -115,6 +115,11 @@ describe('keyword "transform"', function () { e.message.should.equal('Invalid enum uniqueness. To use `transform:["toEnumCase"]`, all values must be unique when case insensitive.'); } + data = [' ph ']; + schema = {type: 'array', items: {type: 'string', transform: ['trim', 'toEnumCase'], enum:['pH']}}; + ajv.validate(schema, data) .should.equal(true); + data.should.deep.equal(['pH']); + data = ['ab']; schema = {type: 'array', items: {type: 'string', transform: ['toEnumCase'], enum:['pH']}}; ajv.validate(schema, data) .should.equal(false); From f3a159b5790eca5c54579b5f2d64b78de5decd04 Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin Date: Sat, 9 Feb 2019 08:50:50 +0000 Subject: [PATCH 2/2] fix: transform keyword toEnumCase, closes #83 --- keywords/transform.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keywords/transform.js b/keywords/transform.js index d079594..d715452 100644 --- a/keywords/transform.js +++ b/keywords/transform.js @@ -30,7 +30,7 @@ module.exports = function defFunc (ajv) { compile: function (schema, parentSchema) { var cfg; - if (schema == 'toEnumCase') { + if (schema.indexOf('toEnumCase') !== -1) { // build hash table to enum values cfg = {hash: {}};