Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
This commit is contained in:
Janne Savolainen committed 2023-03-17 09:33:30 +02:00
1 parent c9f16beb54
commit 88023e1f70
31 files changed
+1070 -1271

No files matched your search

@@ -29,9 +29,7 @@ describe("enlist message channel listener in main", () => {
di.override(ipcMainInjectable, () => ipcMainStub);
enlistMessageChannelListener = di.inject(
enlistMessageChannelListenerInjectionToken
);
enlistMessageChannelListener = di.inject(enlistMessageChannelListenerInjectionToken);
});
describe("when called", () => {
@@ -53,10 +51,7 @@ describe("enlist message channel listener in main", () => {
});
it("registers the listener", () => {
expect(onMock).toHaveBeenCalledWith(
"some-channel-id",
expect.any(Function)
);
expect(onMock).toHaveBeenCalledWith("some-channel-id", expect.any(Function));
});
it("does not de-register the listener yet", () => {
@@ -75,10 +70,7 @@ describe("enlist message channel listener in main", () => {
it("when disposing the listener, de-registers the listener", () => {
disposer();
expect(offMock).toHaveBeenCalledWith(
"some-channel-id",
expect.any(Function)
);
expect(offMock).toHaveBeenCalledWith("some-channel-id", expect.any(Function));
});
});
@@ -1,16 +1,11 @@
import { getInjectable } from "@ogre-tools/injectable";
import type { IpcMainInvokeEvent } from "electron";
import ipcMainInjectable from "../ipc-main/ipc-main.injectable";
import type {
RequestChannel,
RequestChannelListener,
} from "@k8slens/messaging";
import type { RequestChannel, RequestChannelListener } from "@k8slens/messaging";
import { enlistRequestChannelListenerInjectionToken } from "@k8slens/messaging";
export type EnlistRequestChannelListener = <
TChannel extends RequestChannel<unknown, unknown>
>(
listener: RequestChannelListener<TChannel>
export type EnlistRequestChannelListener = <TChannel extends RequestChannel<unknown, unknown>>(
listener: RequestChannelListener<TChannel>,
) => () => void;
const enlistRequestChannelListenerInjectable = getInjectable({
@@ -20,8 +15,7 @@ const enlistRequestChannelListenerInjectable = getInjectable({
const ipcMain = di.inject(ipcMainInjectable);
return ({ channel, handler }) => {
const nativeHandleCallback = (_: IpcMainInvokeEvent, request: unknown) =>
handler(request);
const nativeHandleCallback = (_: IpcMainInvokeEvent, request: unknown) => handler(request);
ipcMain.handle(channel.id, nativeHandleCallback);
@@ -37,9 +37,7 @@ describe("enlist request channel listener in main", () => {
di.override(ipcMainInjectable, () => ipcMainStub);
enlistRequestChannelListener = di.inject(
enlistRequestChannelListenerInjectable
);
enlistRequestChannelListener = di.inject(enlistRequestChannelListenerInjectable);
});
describe("when called", () => {
@@ -61,10 +59,7 @@ describe("enlist request channel listener in main", () => {
});
it("registers the listener", () => {
expect(handleMock).toHaveBeenCalledWith(
"some-channel-id",
expect.any(Function)
);
expect(handleMock).toHaveBeenCalledWith("some-channel-id", expect.any(Function));
});
it("does not de-register the listener yet", () => {
@@ -75,10 +70,7 @@ describe("enlist request channel listener in main", () => {
let actualPromise: Promise<any>;
beforeEach(() => {
actualPromise = handleMock.mock.calls[0][1](
{} as IpcMainInvokeEvent,
"some-request"
);
actualPromise = handleMock.mock.calls[0][1]({} as IpcMainInvokeEvent, "some-request");
});
it("calls the handler with the request", () => {
@@ -105,10 +97,7 @@ describe("enlist request channel listener in main", () => {
it("when disposing the listener, de-registers the listener", () => {
disposer();
expect(offMock).toHaveBeenCalledWith(
"some-channel-id",
expect.any(Function)
);
expect(offMock).toHaveBeenCalledWith("some-channel-id", expect.any(Function));
});
});
@@ -9,9 +9,7 @@ export const messagingFeatureForMain = getFeature({
di,
targetModule: module,
getRequireContexts: () => [
require.context("./", true, /\.injectable\.(ts|tsx)$/),
],
getRequireContexts: () => [require.context("./", true, /\.injectable\.(ts|tsx)$/)],
});
},
});