Sha256: 4320098bf48bb323a45bc86975d099976163a73fdc6e5ee805eb4f652adcdde4
Contents?: true
Size: 1.17 KB
Versions: 46
Compression:
Stored size: 1.17 KB
Contents
import { expect } from 'chai'; import configSamples from './streamConfigSamples'; import validateConfig from '../dist/validateStreamConfig'; import configSchema from '../src/schemas/streamConfig.json'; import Ajv from 'ajv'; import ajvKeywords from 'ajv-keywords'; describe('streamConfig.json schema', () => { var validate; before(() => { var ajv = new Ajv({allErrors: true}); ajvKeywords(ajv, 'typeof'); validate = ajv.compile(configSchema); }); it('should pass validation of valid streamConfig samples', () => { configSamples.valid.forEach((sample, i) => { testValid(sample, validate); testValid(sample, validateConfig); }); function testValid(sample, validate) { var valid = validate(sample); if (!valid) console.log(validate.errors); expect(valid).to.equal(true); } }); it('should fail validation of invalid streamConfig samples', () => { configSamples.invalid.forEach((sample, i) => { testInvalid(sample, validate); testInvalid(sample, validateConfig); }); function testInvalid(sample, validate) { var valid = validate(sample); expect(valid).to.equal(false); } }); });
Version data entries
46 entries across 46 versions & 3 rubygems