From 1ae9f60f94478de7e35cb6e654773919f312cec6 Mon Sep 17 00:00:00 2001 From: Prashanth Ramakrishnan <26225230+prashanth-92@users.noreply.github.com> Date: Wed, 8 Sep 2021 00:57:31 +0530 Subject: [PATCH] Using delay per request in the handler and handling existing delay --- src/handle_request.js | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/handle_request.js b/src/handle_request.js index a1dea58..611a7df 100644 --- a/src/handle_request.js +++ b/src/handle_request.js @@ -94,7 +94,7 @@ function handleRequest(mockAdapter, resolve, reject, config) { resolve, reject, makeResponse(handler.slice(3), config), - mockAdapter.delayResponse + getEffectiveDelay(mockAdapter, handler) ); } else { var result = handler[3](config); @@ -104,7 +104,7 @@ function handleRequest(mockAdapter, resolve, reject, config) { resolve, reject, makeResponse(result, config), - mockAdapter.delayResponse + getEffectiveDelay(mockAdapter, handler) ); } else { result.then( @@ -124,7 +124,7 @@ function handleRequest(mockAdapter, resolve, reject, config) { resolve, reject, makeResponse(result, config), - mockAdapter.delayResponse + getEffectiveDelay(mockAdapter, handler) ); } }, @@ -132,7 +132,7 @@ function handleRequest(mockAdapter, resolve, reject, config) { if (mockAdapter.delayResponse > 0) { setTimeout(function () { reject(error); - }, mockAdapter.delayResponse); + }, getEffectiveDelay(mockAdapter, handler)); } else { reject(error); } @@ -162,4 +162,12 @@ function handleRequest(mockAdapter, resolve, reject, config) { } } +function getEffectiveDelay(adapter, handler){ + var delayPerRequest = 0; + if(handler.length === 8){ + delayPerRequest = handler[7]; + } + return adapter.delayResponse + delayPerRequest +} + module.exports = handleRequest;