Commit Graph

265 Commits (master)

Author SHA1 Message Date
Evgeny Poberezkin 56a8b5b582 "dependencies" with option errorDataPath = "property" sets dataPath to missing property, error params has missingProperty, #68, #69 2015-11-21 12:43:44 +00:00
Evgeny Poberezkin 5c0c8b3b1c default behaviour of "additionalProperties" in >=2.0.0 (#69) reverts #11 - now dataPath points to the object that is validated and not to the additional property; old (<=1.4.10 ) error reporting of dataPath for "additionalProperties" keyword is available with option errorDataPath == "property" 2015-11-21 01:45:52 +00:00
Evgeny Poberezkin 79ab4add57 fixed errors for "required", tests 2015-11-20 22:52:54 +00:00
Evgeny Poberezkin a46600e14a default behaviour in >=2.0.0 (#69) reverts #18 and #55 - now dataPath points to the object that is validated and not to the missing property; old (<=1.4.10 ) error reporting of dataPath for "required" keyword is available with option errorDataPath == "property" 2015-11-19 23:59:10 +00:00
Evgeny Poberezkin 982264f192 removed i18n option (params always added to error objects) 2015-11-17 23:45:19 +00:00
Evgeny Poberezkin 6a2961bcf3 updated error parameters so that ajv-i18n does not depend on schema, compatible with ajv-i18n >= 1.0.0 2015-11-17 23:20:12 +00:00
Evgeny Poberezkin ae5b4c0f45 support for "inline" custom keywords, #69 2015-11-17 23:20:12 +00:00
Evgeny Poberezkin 18c1ef858c support for "macro" custom keywords, #69 2015-11-17 23:20:11 +00:00
Evgeny Poberezkin 285850ce20 pass parent schema to compile/validate functions of custom keywords if they use it, #69 2015-11-17 23:17:59 +00:00
Evgeny Poberezkin 5e45d4eadf support compiling schemas in custom keywords, #69 2015-11-17 23:17:59 +00:00
Evgeny Poberezkin fcc776e794 basic implementation of custom keywords, #69 2015-11-17 23:17:59 +00:00
Evgeny Poberezkin 7b142c56bd optimized generated code for deep schemas 2015-10-25 21:55:07 +00:00
Evgeny Poberezkin 70844207cf fixed resolution scope change - changing folder in subschema, closes #62 2015-10-25 01:03:19 +01:00
Evgeny Poberezkin b161a6f1d0 fixed resolution scope change - changing folder, fixed test for #62 2015-10-24 23:16:37 +01:00
Evgeny Poberezkin 40eafe036f removed unused code 2015-10-15 21:41:50 +01:00
Evgeny Poberezkin e02972207c validate "required" properties within "properties" keyword, closes #41 2015-10-11 00:08:58 +01:00
Evgeny Poberezkin 80dc982d59 replaced Array functions with for loop, added ajv instances to tests 2015-10-10 20:50:57 +01:00
Marc MacLeod 71e8ff3f2c update the required message rather than dataPath 2015-09-26 12:11:20 -05:00
Marc MacLeod f024918133 remove redundant property val in error message
For required properties, the error message is currently:

"data.name should have required property .name"

This works for other validations, where the property is present, but required is a special case that indicates the property is not there. The above message is somewhat confusing. I've simply updated the required errors to read:

"data should have required property .name"
2015-09-25 15:18:17 -05:00
Evgeny Poberezkin 34993de951 i18n support for ajv-i18n package 2015-09-13 01:01:20 +01:00
Evgeny Poberezkin bec34c5ba5 error thrown in case of missing reference has properties missingRef and missingSchema, related to #43, mulesoft-labs/osprey-mock-service#11 2015-09-02 18:20:43 +01:00
Evgeny Poberezkin d99e707a69 improved performance of "properties" keyword; schema tests for 64 options combinations 2015-08-24 00:40:27 +01:00
Evgeny Poberezkin f3b65f4a58 Merge branch 'master' into inline 2015-08-23 12:04:38 +01:00
Evgeny Poberezkin 843557e03f optimised regexps to create them during compile time, reuse regexp instances 2015-08-22 23:57:16 +01:00
Evgeny Poberezkin f9017a54d3 dataPath using jsonPointers in "required" keyword when allErrors == false, #32 2015-08-22 21:58:38 +01:00
Evgeny Poberezkin 4c4fdd5afc optimised getExprPath for numbers (items keyword), #32 2015-08-22 21:21:18 +01:00
Blake Embrey e6da675f91 Support JSON pointers 2015-08-22 11:52:05 -07:00
Evgeny Poberezkin d8d59ed352 inline refs with all keywords but "$ref" 2015-08-21 22:52:29 +01:00
Evgeny Poberezkin 7d0c6d1d25 inline simple refs, #6 2015-08-19 22:54:05 +01:00
Evgeny Poberezkin cfec9e3fb3 removed unused it.dataPath, related to #32 2015-08-19 00:31:19 +01:00
Evgeny Poberezkin e74f79eea6 removed unused code with _debug option 2015-08-19 00:22:05 +01:00
Evgeny Poberezkin 8abbf63e9b Merge branch 'master' into 1.0.0 2015-08-16 23:00:43 +01:00
Evgeny Poberezkin 704fb11c1d optimized not rule 2015-08-16 01:21:35 +01:00
Evgeny Poberezkin 286368fb23 optimized required rule compilation 2015-08-16 01:10:43 +01:00
Evgeny Poberezkin dfd6de5857 removed _debug option 2015-08-16 00:59:28 +01:00
Evgeny Poberezkin fe53458a6e missingRefs option tests 2015-08-15 23:59:14 +01:00
Evgeny Poberezkin 234729121f Merge branch 'master' into 1.0.0 2015-08-08 19:39:27 +01:00
Evgeny Poberezkin 1b8c922ebc preserve roots during ref resolution, closes #27 2015-08-08 19:06:51 +01:00
Evgeny Poberezkin 41ed37f36f resolves recursive schema issue #27, breaks test for issue #13, raml schema has regex issue 2015-08-08 12:21:41 +01:00
Evgeny Poberezkin 22513f598a Merge branch 'master' into 1.0.0 2015-08-07 23:17:06 +01:00
Evgeny Poberezkin bde23cbe9e removed type escaping in errors 2015-08-07 00:14:08 +01:00
Blake Embrey 2a8ce631dd Escape everything else that might need escaping 2015-08-06 14:47:17 -07:00
Blake Embrey 02d6a5431d Escape schema strings in output 2015-08-06 14:29:45 -07:00
Evgeny Poberezkin 94f51e1248 Merge branch 'master' into 1.0.0 2015-07-31 20:06:43 +01:00
Evgeny Poberezkin 62adbbe1ed fixed removeAdditional, tests, added "failing" for removeAdditional; closes #25, related to #23 2015-07-31 19:23:35 +01:00
Evgeny Poberezkin 232a7aeb49 option removeAdditional equal to "all" 2015-07-30 09:21:36 +01:00
Evgeny Poberezkin 36085debf5 indentations 2015-07-30 09:06:31 +01:00
Andy Scott cff345ae16 Move `removeAdditional` option out of shared definitions 2015-07-29 09:56:57 -07:00
Andy Scott 94ddac2bc9 Add test for options (just `removeAdditional`, for now) 2015-07-29 09:56:11 -07:00
Andy Scott d5ed4403b8 During validation allow flag to remove values flagged by `additionalProperties: false` 2015-07-28 16:34:46 -07:00
Evgeny Poberezkin be023eda11 Merge branch 'master' into 1.0.0 2015-07-26 10:37:56 +01:00
Evgeny Poberezkin 6c93d0346d fixed "required" with properties that are not identifiers, closes #20 2015-07-22 16:26:28 +01:00
Evgeny Poberezkin af46a38428 fixed required for inner level with many properties, closes #19 2015-07-20 17:41:06 +01:00
Evgeny Poberezkin 8a5d8f32b7 fixed losing errors when validating mutually recursive schemas, #5 2015-07-04 01:37:35 +01:00
Evgeny Poberezkin 5416eaf86d improved error messages for "required" keyword, closes #18 2015-07-01 00:30:57 +01:00
Evgeny Poberezkin 5fc0b18287 improved error reporting for "required" keyword with large size schema, #18 2015-06-30 22:26:00 +01:00
Evgeny Poberezkin 22cdf02e51 improved error reporting for "required" keyword with limited size schema, #18 2015-06-30 22:09:14 +01:00
Evgeny Poberezkin 0ccf7e73f1 use properties as properties or indeces correctly in all cases 2015-06-24 00:43:52 +01:00
Evgeny Poberezkin 391d60482c fixed escaping pattern property (fixes #17) 2015-06-23 17:26:03 +01:00
Evgeny Poberezkin cbdd00e9c6 fixed #13 - root ref in remote ref 2015-06-19 00:57:19 +01:00
Evgeny Poberezkin 8bfb3f9b4a added anyOf error, refactored test 2015-06-18 23:01:39 +01:00
Evgeny Poberezkin 46812e0ac6 fixed #14: remote ref in definitions in remote ref with ids 2015-06-18 20:48:35 +01:00
Evgeny Poberezkin 123aa99b15 test for #13 2015-06-18 15:01:15 +01:00
Evgeny Poberezkin 5b2ba08813 missingRefs option - "ignore", "fail" or throw error during compilation (default) 2015-06-17 22:23:49 +01:00
Evgeny Poberezkin 5f36f17f63 precompiled dot templates, dot is devDependency, closes #3 2015-06-17 14:42:13 +01:00