23 lines
554 B
JavaScript
23 lines
554 B
JavaScript
|
'use strict'
|
||
|
|
||
|
var Promise = require('pinkie-promise')
|
||
|
var runner = require('./runner')
|
||
|
var schemas = require('./schemas')
|
||
|
|
||
|
var promisify = function (schema) {
|
||
|
return function (data) {
|
||
|
return new Promise(function (resolve, reject) {
|
||
|
runner(schema, data, function (err, valid) {
|
||
|
return err === null ? resolve(data) : reject(err)
|
||
|
})
|
||
|
})
|
||
|
}
|
||
|
}
|
||
|
|
||
|
module.exports = promisify(schemas.har)
|
||
|
|
||
|
// utility methods for all parts of the schema
|
||
|
Object.keys(schemas).map(function (name) {
|
||
|
module.exports[name] = promisify(schemas[name])
|
||
|
})
|