summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/request/node_modules/har-validator/lib/node6/promise.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/node_modules/request/node_modules/har-validator/lib/node6/promise.js')
-rw-r--r--deps/npm/node_modules/request/node_modules/har-validator/lib/node6/promise.js130
1 files changed, 130 insertions, 0 deletions
diff --git a/deps/npm/node_modules/request/node_modules/har-validator/lib/node6/promise.js b/deps/npm/node_modules/request/node_modules/har-validator/lib/node6/promise.js
new file mode 100644
index 0000000000..be7017ae05
--- /dev/null
+++ b/deps/npm/node_modules/request/node_modules/har-validator/lib/node6/promise.js
@@ -0,0 +1,130 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.validate = validate;
+exports.afterRequest = afterRequest;
+exports.beforeRequest = beforeRequest;
+exports.browser = browser;
+exports.cache = cache;
+exports.content = content;
+exports.cookie = cookie;
+exports.creator = creator;
+exports.entry = entry;
+exports.har = har;
+exports.header = header;
+exports.log = log;
+exports.page = page;
+exports.pageTimings = pageTimings;
+exports.postData = postData;
+exports.query = query;
+exports.request = request;
+exports.response = response;
+exports.timings = timings;
+
+var _harSchema = require('har-schema');
+
+var schemas = _interopRequireWildcard(_harSchema);
+
+var _ajv = require('ajv');
+
+var _ajv2 = _interopRequireDefault(_ajv);
+
+var _error = require('./error');
+
+var _error2 = _interopRequireDefault(_error);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
+
+let ajv;
+
+function validate(name, data = {}) {
+ // validator config
+ ajv = ajv || new _ajv2.default({
+ allErrors: true,
+ schemas: schemas
+ });
+
+ let validate = ajv.getSchema(name + '.json');
+
+ return new Promise((resolve, reject) => {
+ let valid = validate(data);
+
+ !valid ? reject(new _error2.default(validate.errors)) : resolve(data);
+ });
+}
+
+function afterRequest(data) {
+ return validate('afterRequest', data);
+}
+
+function beforeRequest(data) {
+ return validate('beforeRequest', data);
+}
+
+function browser(data) {
+ return validate('browser', data);
+}
+
+function cache(data) {
+ return validate('cache', data);
+}
+
+function content(data) {
+ return validate('content', data);
+}
+
+function cookie(data) {
+ return validate('cookie', data);
+}
+
+function creator(data) {
+ return validate('creator', data);
+}
+
+function entry(data) {
+ return validate('entry', data);
+}
+
+function har(data) {
+ return validate('har', data);
+}
+
+function header(data) {
+ return validate('header', data);
+}
+
+function log(data) {
+ return validate('log', data);
+}
+
+function page(data) {
+ return validate('page', data);
+}
+
+function pageTimings(data) {
+ return validate('pageTimings', data);
+}
+
+function postData(data) {
+ return validate('postData', data);
+}
+
+function query(data) {
+ return validate('query', data);
+}
+
+function request(data) {
+ return validate('request', data);
+}
+
+function response(data) {
+ return validate('response', data);
+}
+
+function timings(data) {
+ return validate('timings', data);
+} \ No newline at end of file