diff options
| author | Andrej Mihajlov <and@mullvad.net> | 2018-08-08 13:44:17 +0200 |
|---|---|---|
| committer | Andrej Mihajlov <and@mullvad.net> | 2018-08-08 16:25:34 +0200 |
| commit | 1693d67fc12ce189662c3147de872f25fcf40418 (patch) | |
| tree | 7099d7f11c75519549bd1a111936c564bd64870d | |
| parent | c0d0909bf14f038befa609b476dd381819395e84 (diff) | |
| download | mullvadvpn-1693d67fc12ce189662c3147de872f25fcf40418.tar.xz mullvadvpn-1693d67fc12ce189662c3147de872f25fcf40418.zip | |
Refine eventPromiseHelper
| -rw-r--r-- | test/jsonrpc-transport.spec.js | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/test/jsonrpc-transport.spec.js b/test/jsonrpc-transport.spec.js index 96db4acec6..ca66514192 100644 --- a/test/jsonrpc-transport.spec.js +++ b/test/jsonrpc-transport.spec.js @@ -78,13 +78,20 @@ describe('JSON RPC transport', () => { await transport.connect(WEBSOCKET_URL); const eventPromiseHelper = (() => { - let stolenResolve: (any) => void; - const eventHandler = (...args) => stolenResolve(...args); - eventHandler.promise = new Promise((resolve) => (stolenResolve = resolve)); - return eventHandler; + let borrowedResolve: ?(mixed) => void; + const promise = new Promise((resolve) => (borrowedResolve = resolve)); + /* Flow does not understand that the body of Promise runs immediately. + see https://github.com/facebook/flow/issues/6711 */ + if (!borrowedResolve) { + throw new Error(); + } + return { + resolve: borrowedResolve, + promise, + }; })(); - await transport.subscribe('event', eventPromiseHelper); + await transport.subscribe('event', eventPromiseHelper.resolve); server.emit( 'message', |
