UNPKG

serverless-spy

Version:

CDK-based library for writing elegant integration tests on AWS serverless architecture and an additional web console to monitor events in real time.

27 lines 3.52 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createServerlessSpyListener = createServerlessSpyListener; const WsListener_1 = require("./WsListener"); async function createServerlessSpyListener(params) { const wsListener = new WsListener_1.WsListener(); let resolve, reject; const promise = new Promise((res, rej) => { resolve = res; reject = rej; }); const [serverlessSpyWsUrl, scope] = params.serverlessSpyWsUrl.split('/'); if (!scope) { throw Error(`ServerlessSpyWsUrl was missing rootStack: ${params.serverlessSpyWsUrl}`); } await wsListener.start({ ...params, serverlessSpyWsUrl, scope, connectionOpenResolve: params.connectionOpenResolve || resolve, connectionOpenReject: params.connectionOpenReject || reject, }); const proxy = wsListener.createProxy(); await promise; return proxy; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlU2VydmVybGVzc1NweUxpc3RlbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGlzdGVuZXIvY3JlYXRlU2VydmVybGVzc1NweUxpc3RlbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBR0Esa0VBMEJDO0FBNUJELDZDQUEwQztBQUVuQyxLQUFLLFVBQVUsMkJBQTJCLENBQy9DLE1BQWtEO0lBRWxELE1BQU0sVUFBVSxHQUFHLElBQUksdUJBQVUsRUFBYyxDQUFDO0lBQ2hELElBQUksT0FBTyxFQUFFLE1BQStELENBQUM7SUFDN0UsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDN0MsT0FBTyxHQUFHLEdBQUcsQ0FBQztRQUNkLE1BQU0sR0FBRyxHQUFHLENBQUM7SUFDZixDQUFDLENBQUMsQ0FBQztJQUNILE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNYLE1BQU0sS0FBSyxDQUNULDZDQUE2QyxNQUFNLENBQUMsa0JBQWtCLEVBQUUsQ0FDekUsQ0FBQztJQUNKLENBQUM7SUFDRCxNQUFNLFVBQVUsQ0FBQyxLQUFLLENBQUM7UUFDckIsR0FBRyxNQUFNO1FBQ1Qsa0JBQWtCO1FBQ2xCLEtBQUs7UUFDTCxxQkFBcUIsRUFBRSxNQUFNLENBQUMscUJBQXFCLElBQUksT0FBTztRQUM5RCxvQkFBb0IsRUFBRSxNQUFNLENBQUMsb0JBQW9CLElBQUksTUFBTTtLQUM1RCxDQUFDLENBQUM7SUFFSCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkMsTUFBTSxPQUFPLENBQUM7SUFDZCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2ZXJsZXNzU3B5TGlzdGVuZXJQYXJhbXMgfSBmcm9tICcuL1NlcnZlcmxlc3NTcHlMaXN0ZW5lclBhcmFtcyc7XG5pbXBvcnQgeyBXc0xpc3RlbmVyIH0gZnJvbSAnLi9Xc0xpc3RlbmVyJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZVNlcnZlcmxlc3NTcHlMaXN0ZW5lcjxUU3B5RXZlbnRzPihcbiAgcGFyYW1zOiBPbWl0PFNlcnZlcmxlc3NTcHlMaXN0ZW5lclBhcmFtcywgJ3Njb3BlJz5cbikge1xuICBjb25zdCB3c0xpc3RlbmVyID0gbmV3IFdzTGlzdGVuZXI8VFNweUV2ZW50cz4oKTtcbiAgbGV0IHJlc29sdmUsIHJlamVjdDogKCh2YWx1ZTogdm9pZCB8IFByb21pc2VMaWtlPHZvaWQ+KSA9PiB2b2lkKSB8IHVuZGVmaW5lZDtcbiAgY29uc3QgcHJvbWlzZSA9IG5ldyBQcm9taXNlPHZvaWQ+KChyZXMsIHJlaikgPT4ge1xuICAgIHJlc29sdmUgPSByZXM7XG4gICAgcmVqZWN0ID0gcmVqO1xuICB9KTtcbiAgY29uc3QgW3NlcnZlcmxlc3NTcHlXc1VybCwgc2NvcGVdID0gcGFyYW1zLnNlcnZlcmxlc3NTcHlXc1VybC5zcGxpdCgnLycpO1xuICBpZiAoIXNjb3BlKSB7XG4gICAgdGhyb3cgRXJyb3IoXG4gICAgICBgU2VydmVybGVzc1NweVdzVXJsIHdhcyBtaXNzaW5nIHJvb3RTdGFjazogJHtwYXJhbXMuc2VydmVybGVzc1NweVdzVXJsfWBcbiAgICApO1xuICB9XG4gIGF3YWl0IHdzTGlzdGVuZXIuc3RhcnQoe1xuICAgIC4uLnBhcmFtcyxcbiAgICBzZXJ2ZXJsZXNzU3B5V3NVcmwsXG4gICAgc2NvcGUsXG4gICAgY29ubmVjdGlvbk9wZW5SZXNvbHZlOiBwYXJhbXMuY29ubmVjdGlvbk9wZW5SZXNvbHZlIHx8IHJlc29sdmUsXG4gICAgY29ubmVjdGlvbk9wZW5SZWplY3Q6IHBhcmFtcy5jb25uZWN0aW9uT3BlblJlamVjdCB8fCByZWplY3QsXG4gIH0pO1xuXG4gIGNvbnN0IHByb3h5ID0gd3NMaXN0ZW5lci5jcmVhdGVQcm94eSgpO1xuICBhd2FpdCBwcm9taXNlO1xuICByZXR1cm4gcHJveHk7XG59XG4iXX0=