API/api.medcify.app/node_modules/razorpay/dist/utils/predefined-tests.js

142 lines
4.0 KiB
JavaScript
Raw Normal View History

2022-09-26 06:11:44 +00:00
'use strict';
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
var mocker = require('../../test/mocker'),
equal = require('deep-equal'),
chai = require('chai'),
assert = chai.assert,
_require = require("../../dist/utils/razorpay-utils"),
prettify = _require.prettify,
getTestError = _require.getTestError;
var runCallbackCheckTest = function runCallbackCheckTest(params) {
var apiObj = params.apiObj,
methodName = params.methodName,
methodArgs = params.methodArgs,
mockerParams = params.mockerParams;
it("Checks if the passed api callback gets called", function (done) {
mocker.mock(mockerParams);
apiObj[methodName].apply(apiObj, _toConsumableArray(methodArgs).concat([function (err) {
done();
}]));
});
it("Checks for error flow", function (done) {
mocker.mock(_extends({}, mockerParams, { replyWithError: true }));
apiObj[methodName].apply(apiObj, _toConsumableArray(methodArgs).concat([function (err) {
assert.ok(!!err, "Error callback called with error");
done();
}]));
});
it("Checks if the api call returns a Promise", function (done) {
mocker.mock(mockerParams);
var retVal = apiObj[methodName].apply(apiObj, _toConsumableArray(methodArgs));
retVal && typeof retVal.then === "function" ? done() : done(getTestError("Invalid Return Value", String("Promise"), retVal));
});
};
var runURLCheckTest = function runURLCheckTest(params) {
var apiObj = params.apiObj,
methodName = params.methodName,
methodArgs = params.methodArgs,
expectedUrl = params.expectedUrl,
mockerParams = params.mockerParams;
it("Checks if the URL is formed correctly", function (done) {
mocker.mock(mockerParams);
apiObj[methodName].apply(apiObj, _toConsumableArray(methodArgs).concat([function (err, resp) {
var respData = resp.__JUST_FOR_TESTS__;
if (respData.url === expectedUrl) {
assert.ok(true, "URL Matched");
done();
} else {
done(getTestError("URL Mismatch", expectedUrl, respData.url));
}
}]));
});
};
var runParamsCheckTest = function runParamsCheckTest(params) {
var apiObj = params.apiObj,
methodName = params.methodName,
methodArgs = params.methodArgs,
expectedParams = params.expectedParams,
mockerParams = params.mockerParams,
testTitle = params.testTitle;
testTitle = testTitle || "Validates URL and Params";
it(testTitle, function (done) {
mocker.mock(mockerParams);
apiObj[methodName].apply(apiObj, _toConsumableArray(methodArgs)).then(function (resp) {
var respData = resp.__JUST_FOR_TESTS__,
respParams = respData[respData.method === "GET" ? "requestQueryParams" : "requestBody"];
if (equal(respParams, expectedParams)) {
assert.ok(true, "Params Matched");
} else {
return getTestError("Params Mismatch", expectedParams, respParams);
}
}, function (err) {
return new Error(prettify(err));
}).then(function (err) {
done(err);
});
});
};
var runCommonTests = function runCommonTests(params) {
var apiObj = params.apiObj,
methodName = params.methodName,
methodArgs = params.methodArgs,
expectedUrl = params.expectedUrl,
expectedParams = params.expectedParams,
mockerParams = params.mockerParams;
runURLCheckTest(_extends({}, params));
if (expectedParams) {
runParamsCheckTest(_extends({}, params));
}
runCallbackCheckTest(_extends({}, params));
};
module.exports = {
runCallbackCheckTest: runCallbackCheckTest,
runParamsCheckTest: runParamsCheckTest,
runURLCheckTest: runURLCheckTest,
runCommonTests: runCommonTests
};