diff options
| author | Andrej Mihajlov <and@mullvad.net> | 2018-06-20 15:34:40 +0200 |
|---|---|---|
| committer | Andrej Mihajlov <and@mullvad.net> | 2018-07-03 13:37:54 +0200 |
| commit | 73840e98952dd3f7c005fcec44c971455da179eb (patch) | |
| tree | 15a887410858007a802450ad2870d8bf495dd16d /test/mocks | |
| parent | 67e82627564f8e4a2d8da4bcf5f0fd00867876bc (diff) | |
| download | mullvadvpn-73840e98952dd3f7c005fcec44c971455da179eb.tar.xz mullvadvpn-73840e98952dd3f7c005fcec44c971455da179eb.zip | |
Refactor IpcFacade to DaemonRpc and JsonRpcWs to JsonRpcTransport
Diffstat (limited to 'test/mocks')
| -rw-r--r-- | test/mocks/ipc.js | 58 |
1 files changed, 27 insertions, 31 deletions
diff --git a/test/mocks/ipc.js b/test/mocks/ipc.js index 590313ec13..b610244462 100644 --- a/test/mocks/ipc.js +++ b/test/mocks/ipc.js @@ -1,39 +1,39 @@ // @flow -import type { IpcFacade, AccountToken, AccountData, BackendState } from '../../app/lib/ipc-facade'; +import type { + DaemonRpcProtocol, + AccountToken, + AccountData, + BackendState, +} from '../../app/lib/daemon-rpc'; interface MockIpc { sendNewState: (BackendState) => void; killWebSocket: () => void; -getAccountData: (AccountToken) => Promise<AccountData>; - -connect: () => Promise<void>; + -connectTunnel: () => Promise<void>; -getAccount: () => Promise<?AccountToken>; -authenticate: (string) => Promise<void>; } export function newMockIpc() { const stateListeners = []; - const connectionCloseListeners = []; + let connectionOpenListener: ?() => void; + let connectionCloseListener: ?(error: ?Error) => void; - const mockIpc: IpcFacade & MockIpc = { + const mockIpc: DaemonRpcProtocol & MockIpc = { setConnectionString: (_str: string) => {}, - getAccountData: (accountToken) => Promise.resolve({ accountToken: accountToken, expiry: '', }), - getRelayLocations: () => Promise.resolve({ countries: [], }), - getAccount: () => Promise.resolve('1111'), - setAccount: () => Promise.resolve(), - updateRelaySettings: () => Promise.resolve(), - getRelaySettings: () => Promise.resolve({ custom_tunnel_endpoint: { @@ -46,17 +46,16 @@ export function newMockIpc() { }, }, }), - setAllowLan: (_allowLan: boolean) => Promise.resolve(), - getAllowLan: () => Promise.resolve(true), - - connect: () => Promise.resolve(), - - disconnect: () => Promise.resolve(), - - shutdown: () => Promise.resolve(), - + connect: () => { + if (connectionOpenListener) { + connectionOpenListener(); + } + }, + disconnect: () => {}, + connectTunnel: () => Promise.resolve(), + disconnectTunnel: () => Promise.resolve(), getLocation: () => Promise.resolve({ ip: '', @@ -66,36 +65,33 @@ export function newMockIpc() { longitude: 0.0, mullvad_exit_ip: false, }), - getState: () => Promise.resolve({ state: 'unsecured', target_state: 'unsecured', }), - - registerStateListener: (listener: (BackendState) => void) => { + subscribeStateListener: (listener: (state: ?BackendState, error: ?Error) => void) => { stateListeners.push(listener); + return Promise.resolve(); }, - sendNewState: (state: BackendState) => { for (const listener of stateListeners) { listener(state); } }, - - setCloseConnectionHandler: (listener: () => void) => { - connectionCloseListeners.push(listener); + addOpenConnectionObserver: (listener: () => void) => { + connectionOpenListener = listener; + }, + addCloseConnectionObserver: (listener: (error: ?Error) => void) => { + connectionCloseListener = listener; }, - authenticate: (_secret: string) => Promise.resolve(), - getAccountHistory: () => Promise.resolve([]), - removeAccountFromHistory: (_accountToken) => Promise.resolve(), killWebSocket: () => { - for (const listener of connectionCloseListeners) { - listener(); + if (connectionCloseListener) { + connectionCloseListener(); } }, }; |
