From fb7118ff1c8f0dcd61f15e51b193512283d83fa1 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Sun, 9 Jan 2022 22:16:29 +0100 Subject: build: Add eslint-plugin-unicorn MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kristóf Marussy --- .../__tests__/createSophieRenderer.spec.ts | 12 +++++++----- .../preload/src/contextBridge/createSophieRenderer.ts | 18 +++++++++--------- 2 files changed, 16 insertions(+), 14 deletions(-) (limited to 'packages/preload/src/contextBridge') diff --git a/packages/preload/src/contextBridge/__tests__/createSophieRenderer.spec.ts b/packages/preload/src/contextBridge/__tests__/createSophieRenderer.spec.ts index b0af280..88b0077 100644 --- a/packages/preload/src/contextBridge/__tests__/createSophieRenderer.spec.ts +++ b/packages/preload/src/contextBridge/__tests__/createSophieRenderer.spec.ts @@ -45,7 +45,7 @@ const { default: createSophieRenderer } = await import( ); const event: Electron.IpcRendererEvent = - null as unknown as Electron.IpcRendererEvent; + undefined as unknown as Electron.IpcRendererEvent; const snapshot: SharedStoreSnapshotIn = { shouldUseDarkColors: true, @@ -183,7 +183,7 @@ describe('SharedStoreConnector', () => { it('should catch listener errors', () => { mocked(listener.onPatch).mockImplementation(() => { - throw new Error(); + throw new Error('listener error'); }); expect(() => onSharedStorePatch(event, patch)).not.toThrow(); }); @@ -193,7 +193,7 @@ describe('SharedStoreConnector', () => { describe('after the listener threw in onPatch', () => { beforeEach(() => { mocked(listener.onPatch).mockImplementation(() => { - throw new Error(); + throw new Error('listener error'); }); onSharedStorePatch(event, patch); listener.onPatch.mockRestore(); @@ -205,7 +205,9 @@ describe('SharedStoreConnector', () => { describe('when a listener failed to register due to IPC error', () => { beforeEach(async () => { - mocked(ipcRenderer.invoke).mockRejectedValue(new Error()); + mocked(ipcRenderer.invoke).mockRejectedValue( + new Error('ipcRenderer error'), + ); try { await sut.onSharedStoreChange(listener); } catch { @@ -237,7 +239,7 @@ describe('SharedStoreConnector', () => { beforeEach(async () => { mocked(ipcRenderer.invoke).mockResolvedValueOnce(snapshot); mocked(listener.onSnapshot).mockImplementation(() => { - throw new Error(); + throw new Error('listener error'); }); try { await sut.onSharedStoreChange(listener); diff --git a/packages/preload/src/contextBridge/createSophieRenderer.ts b/packages/preload/src/contextBridge/createSophieRenderer.ts index b97503d..3174fed 100644 --- a/packages/preload/src/contextBridge/createSophieRenderer.ts +++ b/packages/preload/src/contextBridge/createSophieRenderer.ts @@ -34,7 +34,7 @@ import type { IJsonPatch } from 'mobx-state-tree'; class SharedStoreConnector { private onSharedStoreChangeCalled = false; - private listener: SharedStoreListener | null = null; + private listener: SharedStoreListener | undefined; constructor(private readonly allowReplaceListener: boolean) { ipcRenderer.on( @@ -43,9 +43,9 @@ class SharedStoreConnector { try { // `mobx-state-tree` will validate the patch, so we can safely cast here. this.listener?.onPatch(patch as IJsonPatch); - } catch (err) { - log.error('Shared store listener onPatch failed', err); - this.listener = null; + } catch (error) { + log.error('Shared store listener onPatch failed', error); + this.listener = undefined; } }, ); @@ -57,14 +57,14 @@ class SharedStoreConnector { } this.onSharedStoreChangeCalled = true; let success = false; - let snapshot: unknown | null = null; + let snapshot: unknown; try { snapshot = await ipcRenderer.invoke( RendererToMainIpcMessage.GetSharedStoreSnapshot, ); success = true; - } catch (err) { - log.error('Failed to get initial shared store snapshot', err); + } catch (error) { + log.error('Failed to get initial shared store snapshot', error); } if (success) { if (sharedStore.is(snapshot)) { @@ -84,10 +84,10 @@ function dispatchAction(actionToDispatch: Action): void { const parsedAction = action.parse(actionToDispatch); try { ipcRenderer.send(RendererToMainIpcMessage.DispatchAction, parsedAction); - } catch (err) { + } catch (error) { // Do not leak IPC failure details into the main world. const message = 'Failed to dispatch action'; - log.error(message, actionToDispatch, err); + log.error(message, actionToDispatch, error); throw new Error(message); } } -- cgit v1.2.3-70-g09d2