diff options
author | Yoichi Hirai <i@yoichihirai.com> | 2018-03-20 03:43:39 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-03-20 03:43:39 +0800 |
commit | a986dbd957f8dd502843fc15e11af59c7c6bc9b7 (patch) | |
tree | 81e36ed21aa8a931e9b1d2fd97302096384be228 /JSONSchema/validate.js | |
parent | 6eb49bfaac55b7d77531d7a923fbdd013263d2bb (diff) | |
parent | 2f5f7b14cd2365b3f6579e0b5e69974cdb9b2e73 (diff) | |
download | tangerine-tests-a986dbd957f8dd502843fc15e11af59c7c6bc9b7.tar tangerine-tests-a986dbd957f8dd502843fc15e11af59c7c6bc9b7.tar.gz tangerine-tests-a986dbd957f8dd502843fc15e11af59c7c6bc9b7.tar.bz2 tangerine-tests-a986dbd957f8dd502843fc15e11af59c7c6bc9b7.tar.lz tangerine-tests-a986dbd957f8dd502843fc15e11af59c7c6bc9b7.tar.xz tangerine-tests-a986dbd957f8dd502843fc15e11af59c7c6bc9b7.tar.zst tangerine-tests-a986dbd957f8dd502843fc15e11af59c7c6bc9b7.zip |
Merge pull request #432 from pirapira/check-duplicate
Check duplicate keys in JSON objects during Travis run
Diffstat (limited to 'JSONSchema/validate.js')
-rwxr-xr-x | JSONSchema/validate.js | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/JSONSchema/validate.js b/JSONSchema/validate.js index 9206f961c..4e4e1fde0 100755 --- a/JSONSchema/validate.js +++ b/JSONSchema/validate.js @@ -4,6 +4,7 @@ var fs = require('fs'); var validate = require('jsonschema').validate; var readline = require('readline'); var process = require('process'); +var dup = require('json-duplicate-key-handle'); var schemaFile = process.argv[2]; @@ -29,8 +30,9 @@ rl.on('line', function(fileName) { }); rl.on('close', function() { - schema = JSON.parse(fs.readFileSync(schemaFile)); - + var jsonString = fs.readFileSync(schemaFile, "utf8"); + schema = dup.parse(jsonString); + //sort file names alphabetically so that log output ordering is consistent fileNames.sort(function(a,b) { if(a<b) { @@ -44,7 +46,8 @@ rl.on('close', function() { for (var i = 0; i < fileNames.length; i++) { try { - testCode = JSON.parse(fs.readFileSync(fileNames[i])); + var jsonString = fs.readFileSync(fileNames[i], "utf8"); + testCode = dup.parse(jsonString); } catch(e) { console.log('error on file:', fileNames[i]) console.log(e); |