axios-mock-adapter
Version:
Axios adapter that allows to easily mock requests
8 lines • 7.66 kB
JavaScript
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("axios")):"function"==typeof define&&define.amd?define(["axios"],t):"object"==typeof exports?exports.AxiosMockAdapter=t(require("axios")):e.AxiosMockAdapter=t(e.axios)}(window,(function(e){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=1)}([function(e,t,r){"use strict";var n=r(3),o=r(4),i=r(5),s=!!n.create().defaults.headers;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]"===toString.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){return["delete","get","head","options"].indexOf(e.toLowerCase())>=0?d(r,n?n.params:void 0):function(e,t){if(void 0===t)return!0;var r;try{r=JSON.parse(e)}catch(e){}return d(r||e,t)}(t,n)}function d(e,t){return void 0===t||("function"==typeof t.asymmetricMatch?t.asymmetricMatch(e):o(e,t))}function h(e,t,r,n){if(!s)return r;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}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((function(){e(t,r,n)}),o):n.config&&n.config.validateStatus?n.config.validateStatus(n.status)?t(n):r(h("Request failed with status code "+n.status,n.config,n)):n.status>=200&&n.status<300?t(n):r(n)},isStream:function(e){return c(e)&&a(e.pipe)},isArrayBuffer:function(e){return"[object ArrayBuffer]"===toString.call(e)},isFunction:a,isObjectOrArray:c,isBuffer:i,isEqual:o,createAxiosError:h}},function(e,t,r){"use strict";var n=r(2),o=r(0),i=["get","post","head","delete","patch","put","options","list"];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){u.call(this),e&&(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;if(3!==arguments.length)return new Promise((function(r,o){n(t,r,o,e)}));n(t,arguments[0],arguments[1],arguments[2])}.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;t=void 0===t?/.*/:t;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{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},function(e,t,r){"use strict";var n=r(0);function o(e,t){return{status:e[0],data:(r=e[1],n.isArrayBuffer(r)||n.isBuffer(r)||n.isStream(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&&i.url.substr(0,i.baseURL.length)===i.baseURL&&(s=i.url.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;default:n.settle(t,r,{status:404,config:i},e.delayResponse)}}},function(t,r){t.exports=e},function(e,t,r){"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}},function(e,t){
/*!
* Determine if an object is a Buffer
*
* @author Feross Aboukhadijeh <https://feross.org>
* @license MIT
*/
e.exports=function(e){return null!=e&&null!=e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}}])}));