json-schema.js 644 B

1234567891011121314151617181920212223
  1. var tape = require('tape')
  2. var fs = require('fs')
  3. var validator = require('../')
  4. var files = fs.readdirSync(__dirname+'/json-schema-draft4')
  5. .map(function(file) {
  6. if (file === 'definitions.json') return null
  7. if (file === 'refRemote.json') return null
  8. return require('./json-schema-draft4/'+file)
  9. })
  10. .filter(Boolean)
  11. files.forEach(function(file) {
  12. file.forEach(function(f) {
  13. tape('json-schema-test-suite '+f.description, function(t) {
  14. var validate = validator(f.schema)
  15. f.tests.forEach(function(test) {
  16. t.same(validate(test.data), test.valid, test.description)
  17. })
  18. t.end()
  19. })
  20. })
  21. })