Skip to content

Commit

Permalink
Add more example files to validate script.
Browse files Browse the repository at this point in the history
  • Loading branch information
shunter committed May 1, 2017
1 parent 7a52afd commit 90fb057
Showing 1 changed file with 28 additions and 12 deletions.
40 changes: 28 additions & 12 deletions Schema/validate.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,29 +3,45 @@ var glob = require('glob');
var Ajv = require('ajv');

function requireJSON(path) {
return JSON.parse(fs.readFileSync(path, 'utf8'));
return JSON.parse(fs.readFileSync(path, 'utf8'));
}

var schemas = glob.sync('*.json').concat(glob.sync('Extensions/**/*.json')).map(function(filename) {
return requireJSON(filename);
var schemas = glob.sync('*.json').concat(glob.sync('Extensions/**/*.json')).map(function (filename) {
return requireJSON(filename);
});

var ajv = new Ajv({
allErrors: true,
verbose: true,
schemas: schemas
allErrors: true,
verbose: true,
schemas: schemas
});

var schema = requireJSON('./Packet.json');

var validate = ajv.compile(schema);

function test(path) {
var packet = requireJSON(path);
var valid = validate(packet);
if (!valid) {
console.log('File ' + path + ' Invalid: ' + ajv.errorsText(validate.errors));
}
var packet = requireJSON(path);
var valid = validate(packet);
if (!valid) {
console.log('File ' + path + ' Invalid: ' + ajv.errorsText(validate.errors));
}
}

test('Examples/Packet.json');
[
'Examples/Packet.json',
'Examples/DeletePacket.json',
'Examples/DocumentPacket.json',
'Examples/Billboard.json',
'Examples/ModelNodeTransformations.json',
'Examples/Orientation.json',
'Examples/OrientationSampled.json',
'Examples/PositionCartographicDegrees.json',
'Examples/PositionCartographicRadians.json',
'Examples/SimplePosition.json',
'Examples/TimeVaryingPosition.json',
'Examples/ViewFrom.json'
].forEach(function (f) {
console.log('Validating ' + f);
test(f);
});

0 comments on commit 90fb057

Please sign in to comment.