in apps/mountebank-mock/mountebank-source/src/models/protocols.js [111:143]
function resolveWithMetadata (possibleJSON) {
let metadata = {};
try {
metadata = JSON.parse(possibleJSON);
}
catch (error) { /* do nothing */ }
let serverPort = creationRequest.port;
if (metadata.port) {
serverPort = metadata.port;
delete metadata.port;
}
const callbackURL = options.callbackURLTemplate.replace(':port', serverPort),
encoding = metadata.encoding || 'utf8',
stubs = impostersRepository.stubsFor(serverPort),
resolver = responseResolver.create(stubs, undefined, callbackURL);
delete metadata.encoding;
resolve({
port: serverPort,
metadata: metadata,
stubs,
resolver,
encoding,
close: callback => {
closeCalled = true;
imposterProcess.once('exit', callback);
imposterProcess.kill();
}
});
}