UNPKG

axios-mock-adapter

Version:

Axios adapter that allows to easily mock requests

2 lines 7.4 kB
/*! For license information please see axios-mock-adapter.min.js.LICENSE.txt */ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.AxiosMockAdapter=t():e.AxiosMockAdapter=t()}(self,(()=>{return e={63:e=>{"use strict";e.exports=function e(t,r){if(t===r)return!0;if(t&&r&&"object"==typeof t&&"object"==typeof r){if(t.constructor!==r.constructor)return!1;var n,o,i;if(Array.isArray(t)){if((n=t.length)!=r.length)return!1;for(o=n;0!=o--;)if(!e(t[o],r[o]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if((n=(i=Object.keys(t)).length)!==Object.keys(r).length)return!1;for(o=n;0!=o--;)if(!Object.prototype.hasOwnProperty.call(r,i[o]))return!1;for(o=n;0!=o--;){var s=i[o];if(!e(t[s],r[s]))return!1}return!0}return t!=t&&r!=r}},738:e=>{e.exports=function(e){return null!=e&&null!=e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}},141:(e,t,r)=>{"use strict";var n=r(555);function o(e,t){return{status:e[0],data:(r=e[1],n.isArrayBuffer(r)||n.isBuffer(r)||n.isStream(r)||n.isBlob(r)?r:n.isObjectOrArray(r)?JSON.parse(JSON.stringify(r)):r),headers:e[2],config:t,request:{responseURL:t.url}};var r}e.exports=function(e,t,r,i){var s=i.url||"";i.baseURL&&s.substr(0,i.baseURL.length)===i.baseURL&&(s=s.slice(i.baseURL.length)),delete i.adapter,e.history[i.method].push(i);var u=n.findHandler(e.handlers,i.method,s,i.data,i.params,i.headers,i.baseURL);if(u)if(7===u.length&&n.purgeIfReplyOnce(e,u),2===u.length)e.originalAdapter(i).then(t,r);else if("function"!=typeof u[3])n.settle(t,r,o(u.slice(3),i),e.delayResponse);else{var a=u[3](i);"function"!=typeof a.then?n.settle(t,r,o(a,i),e.delayResponse):a.then((function(s){s.config&&s.status?n.settle(t,r,o([s.status,s.data,s.headers],s.config),0):n.settle(t,r,o(s,i),e.delayResponse)}),(function(t){e.delayResponse>0?setTimeout((function(){r(t)}),e.delayResponse):r(t)}))}else switch(e.onNoMatch){case"passthrough":e.originalAdapter(i).then(t,r);break;case"throwException":throw n.createCouldNotFindMockError(i);default:n.settle(t,r,{status:404,config:i},e.delayResponse)}}},138:(e,t,r)=>{"use strict";var n=r(141),o=r(555),i=["get","post","head","delete","patch","put","options","list","link","unlink"];function s(){return i.reduce((function(e,t){return e[t]=[],e}),{})}function u(){a.call(this),c.call(this)}function a(){this.handlers=s()}function c(){this.history=s()}function f(e,t){if(u.call(this),!e)throw new Error("Please provide an instance of axios to mock");this.axiosInstance=e,this.originalAdapter=e.defaults.adapter,this.delayResponse=t&&t.delayResponse>0?t.delayResponse:null,this.onNoMatch=t&&t.onNoMatch||null,e.defaults.adapter=this.adapter.call(this)}function l(e,t,r){if("any"===e)i.forEach((function(e){t[e].push(r)}));else{var n=function(e,t,r){for(var n=-1,i=0;i<t[e].length;i+=1){var s=t[e][i],u=7===s.length;(s[0]instanceof RegExp&&r[0]instanceof RegExp?String(s[0])===String(r[0]):s[0]===r[0])&&o.isEqual(s[1],r[1])&&o.isEqual(s[2],r[2])&&!u&&(n=i)}return n}(e,t,r);n>-1&&r.length<7?t[e].splice(n,1,r):t[e].push(r)}}f.prototype.adapter=function(){return function(e){var t=this;return new Promise((function(r,o){n(t,r,o,e)}))}.bind(this)},f.prototype.restore=function(){this.axiosInstance&&(this.axiosInstance.defaults.adapter=this.originalAdapter,this.axiosInstance=void 0)},f.prototype.reset=u,f.prototype.resetHandlers=a,f.prototype.resetHistory=c,i.concat("any").forEach((function(e){var t="on"+e.charAt(0).toUpperCase()+e.slice(1);f.prototype[t]=function(t,r,n){var i=this;function s(o,s,u){var a=[t,r,n,o,s,u];return l(e,i.handlers,a),i}function u(o,s,u){var a=[t,r,n,o,s,u,!0];return l(e,i.handlers,a),i}return t=void 0===t?/.*/:t,{reply:s,replyOnce:u,passThrough:function(){var n=[t,r];return l(e,i.handlers,n),i},abortRequest:function(){return s((function(e){var t=o.createAxiosError("Request aborted",e,void 0,"ECONNABORTED");return Promise.reject(t)}))},abortRequestOnce:function(){return u((function(e){var t=o.createAxiosError("Request aborted",e,void 0,"ECONNABORTED");return Promise.reject(t)}))},networkError:function(){return s((function(e){var t=o.createAxiosError("Network Error",e);return Promise.reject(t)}))},networkErrorOnce:function(){return u((function(e){var t=o.createAxiosError("Network Error",e);return Promise.reject(t)}))},timeout:function(){return s((function(e){var t=o.createAxiosError(e.timeoutErrorMessage||"timeout of "+e.timeout+"ms exceeded",e,void 0,"ECONNABORTED");return Promise.reject(t)}))},timeoutOnce:function(){return u((function(e){var t=o.createAxiosError(e.timeoutErrorMessage||"timeout of "+e.timeout+"ms exceeded",e,void 0,"ECONNABORTED");return Promise.reject(t)}))}}}})),e.exports=f,e.exports.default=f},376:e=>{e.exports=function(e){return"undefined"!=typeof Blob&&(e instanceof Blob||"[object Blob]"===Object.prototype.toString.call(e))}},555:(e,t,r)=>{"use strict";var n=r(63),o=r(738),i=r(376),s=Object.prototype.toString;function u(e,t){for(var r=e.length,n=0;n<r;n++){var o=e[n];if(t(o))return o}}function a(e){return"[object Function]"===s.call(e)}function c(e){return null!==e&&"object"==typeof e}function f(e,t){return e?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):t}function l(e,t){return("/"===e[0]?e.substr(1):e)===("/"===t[0]?t.substr(1):t)}function p(e,t,r,n){if(["delete","get","head","options"].indexOf(e.toLowerCase())>=0){var o=n?n.data:void 0;return d(r,n?n.params:void 0)&&h(t,o)}return h(t,n)}function d(e,t){return void 0===t||("function"==typeof t.asymmetricMatch?t.asymmetricMatch(e):n(e,t))}function h(e,t){if(void 0===t)return!0;var r;try{r=JSON.parse(e)}catch(e){}return d(r||e,t)}function y(e,t,r,n){var o=new Error(e);return o.isAxiosError=!0,o.config=t,void 0!==r&&(o.response=r),void 0!==n&&(o.code=n),o.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},o}e.exports={find:u,findHandler:function(e,t,r,n,o,i,s){return u(e[t.toLowerCase()],(function(e){return"string"==typeof e[0]?(l(r,e[0])||l(f(s,r),e[0]))&&p(t,n,o,e[1])&&d(i,e[2]):e[0]instanceof RegExp?(e[0].test(r)||e[0].test(f(s,r)))&&p(t,n,o,e[1])&&d(i,e[2]):void 0}))},purgeIfReplyOnce:function(e,t){Object.keys(e.handlers).forEach((function(r){var n=e.handlers[r].indexOf(t);n>-1&&e.handlers[r].splice(n,1)}))},settle:function e(t,r,n,o){o>0?setTimeout(e,o,t,r,n):!n.config.validateStatus||n.config.validateStatus(n.status)?t(n):r(y("Request failed with status code "+n.status,n.config,n))},isStream:function(e){return c(e)&&a(e.pipe)},isArrayBuffer:function(e){return"[object ArrayBuffer]"===s.call(e)},isFunction:a,isObjectOrArray:c,isBuffer:o,isBlob:i,isBodyOrParametersMatching:p,isEqual:n,createAxiosError:y,createCouldNotFindMockError:function(e){var t="Could not find mock for: \n"+JSON.stringify(e,["method","url"],2),r=new Error(t);return r.isCouldNotFindMockError=!0,r.url=e.url,r.method=e.method,r}}}},t={},function r(n){var o=t[n];if(void 0!==o)return o.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,r),i.exports}(138);var e,t}));