in apps/mountebank-mock/mountebank-source/src/models/responseResolver.js [298:317]
function processResponse (responseConfig, request, logger, imposterState, requestDetails) {
if (responseConfig.is) {
// Clone to prevent accidental state changes downstream
return Promise.resolve(helpers.clone(responseConfig.is));
}
else if (responseConfig.proxy) {
return proxyAndRecord(responseConfig, request, logger, requestDetails, imposterState);
}
else if (responseConfig.inject) {
return inject(request, responseConfig.inject, logger, imposterState);
}
else if (responseConfig.fault) {
// Clone to prevent accidental state changes downstream
return Promise.resolve(helpers.clone(responseConfig));
}
else {
return Promise.reject(exceptions.ValidationError('unrecognized response type',
{ source: helpers.clone(responseConfig) }));
}
}