noflo
Version:
Flow-Based Programming environment for JavaScript
42 lines (39 loc) • 1.16 kB
JavaScript
var chai, fs, tv4;
if (typeof process !== 'undefined' && process.execPath && process.execPath.match(/node|iojs/)) {
if (!chai) {
chai = require('chai');
}
fs = require('fs');
tv4 = require('tv4');
}
describe('JSON Schema validator', function() {
var schema, validateJsonFile;
schema = null;
validateJsonFile = function(path, done) {
return fs.readFile(path, 'utf8', function(err, json) {
var graph, result;
if (err) {
return done(err);
}
graph = JSON.parse(json);
result = tv4.validateResult(graph, schema);
chai.expect(result.valid).to.equal(true);
return done();
});
};
before(function(done) {
return fs.readFile('graph-schema.json', 'utf8', function(err, json) {
if (err) {
return done(err);
}
schema = JSON.parse(json);
return done();
});
});
it('should validate the http example graph', function(done) {
return validateJsonFile('examples/http/hello.json', done);
});
return it('should validate the linecount example graph', function(done) {
return validateJsonFile('examples/linecount/count.json', done);
});
});