feat: ✨ Created a mini nodeJS server with NewMan for testing without PostMan GUI.
This will mimic a run in a CD/CI environment or docker container.
This commit is contained in:
79
node_modules/postman-collection-transformer/lib/normalizers/index.js
generated
vendored
Normal file
79
node_modules/postman-collection-transformer/lib/normalizers/index.js
generated
vendored
Normal file
@@ -0,0 +1,79 @@
|
||||
/* eslint-disable object-shorthand */
|
||||
var semver = require('semver'),
|
||||
|
||||
// @todo: Add support for more normalizers
|
||||
normalizers = {
|
||||
'1.0.0': require('./v1')
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
/**
|
||||
* Accepts the arguments for normalization and invokes the appropriate normalizer with them.
|
||||
*
|
||||
* @param {Object} collection - The plain collection JSON to be normalized.
|
||||
* @param {Object} options - A set of options for the current normalization.
|
||||
* @param {String} options.normalizeVersion - The base collection schema version for which to normalize.
|
||||
* @param {?Boolean} [options.mutate=false] - When set to true, normalization is done in place.
|
||||
* @param {?Boolean} [options.noDefaults=false] - When set to true, sensible defaults are not added.
|
||||
* @param {?Boolean} [options.prioritizeV2=false] - When set to true, v2 style properties are checked first.
|
||||
* @param {?Boolean} [options.retainEmptyValues=false] - When set to true, empty values are set to '' instead of
|
||||
* being removed.
|
||||
* @param {Function} callback - A function invoked to indicate the completion of the normalization process.
|
||||
* @returns {*}
|
||||
*/
|
||||
normalize: function (collection, options, callback) {
|
||||
var version;
|
||||
|
||||
if (!options || !(version = semver.valid(options.normalizeVersion, true)) || !normalizers[version]) {
|
||||
return callback(new Error('Version not specified or invalid: ' + options.normalizeVersion));
|
||||
}
|
||||
|
||||
return normalizers[version].normalize(collection, options, callback);
|
||||
},
|
||||
|
||||
/**
|
||||
* Normalizes a single request or item as per the provided version.
|
||||
*
|
||||
* @param {Object} object - The entity to be normalized.
|
||||
* @param {Object} options - The set of options to be applied to the current normalization.
|
||||
* @param {String} options.normalizeVersion - The base collection schema version for which to normalize.
|
||||
* @param {?Boolean} [options.mutate=false] - When set to true, normalization is done in place.
|
||||
* @param {?Boolean} [options.noDefaults=false] - When set to true, sensible defaults are not added.
|
||||
* @param {?Boolean} [options.prioritizeV2=false] - When set to true, v2 style properties are checked first.
|
||||
* @param {?Boolean} [options.retainEmptyValues=false] - When set to true, empty values are set to '' instead of
|
||||
* being removed.
|
||||
* @param {Function} callback - The function invoked when the normalization has completed.
|
||||
*/
|
||||
normalizeSingle: function (object, options, callback) {
|
||||
var version;
|
||||
|
||||
if (!options || !(version = semver.valid(options.normalizeVersion, true)) || !normalizers[version]) {
|
||||
return callback(new Error('Version not specified or invalid: ' + options.normalizeVersion));
|
||||
}
|
||||
|
||||
return normalizers[version].normalizeSingle(object, options, callback);
|
||||
},
|
||||
|
||||
/**
|
||||
* Normalizes a single response as per the provided version.
|
||||
*
|
||||
* @param {Object} response - The response to be normalized.
|
||||
* @param {Object} options - The set of options to be applied to the current normalization.
|
||||
* @param {String} options.normalizeVersion - The base collection schema version for which to normalize.
|
||||
* @param {?Boolean} [options.mutate=false] - When set to true, normalization is done in place.
|
||||
* @param {?Boolean} [options.noDefaults=false] - When set to true, sensible defaults are not added.
|
||||
* @param {?Boolean} [options.prioritizeV2=false] - When set to true, v2 style properties are checked first.
|
||||
* @param {?Boolean} [options.retainEmptyValues=false] - When set to true, empty values are set to '' instead of
|
||||
* being removed.
|
||||
* @param {Function} callback - The function invoked when the normalization has completed.
|
||||
*/
|
||||
normalizeResponse: function (response, options, callback) {
|
||||
var version;
|
||||
|
||||
if (!options || !(version = semver.valid(options.normalizeVersion, true)) || !normalizers[version]) {
|
||||
return callback(new Error('Version not specified or invalid: ' + options.normalizeVersion));
|
||||
}
|
||||
|
||||
return normalizers[version].normalizeResponse(response, options, callback);
|
||||
}
|
||||
};
|
Reference in New Issue
Block a user