mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Fix request bases tests as serialization is now down via electron, add general override in applicationBuilder for randomBytes
Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
1 parent
ea8c262d3c
commit
299bc475a2
7 files changed
+71
-70
No files matched your search
@@ -50,6 +50,7 @@ import lensProxyPortInjectable from "../../../main/lens-proxy/lens-proxy-port.in
|
||||
import type { Route } from "../../../common/front-end-routing/front-end-route-injection-token";
|
||||
import type { NavigateToRouteOptions } from "../../../common/front-end-routing/navigate-to-route-injection-token";
|
||||
import { navigateToRouteInjectionToken } from "../../../common/front-end-routing/navigate-to-route-injection-token";
|
||||
import randomBytesInjectable from "../../../main/utils/random-bytes.injectable";
|
||||
import type { LensMainExtension } from "../../../extensions/lens-main-extension";
|
||||
import type { LensExtension } from "../../../extensions/lens-extension";
|
||||
|
||||
@@ -151,6 +152,21 @@ export const getApplicationBuilder = () => {
|
||||
rendererDi.override(storesAndApisCanBeCreatedInjectable, () => true);
|
||||
mainDi.override(clusterStoreInjectable, () => clusterStoreStub);
|
||||
|
||||
mainDi.override(randomBytesInjectable, () => {
|
||||
let callId = 0;
|
||||
|
||||
return async (count) => {
|
||||
const currentCallId = callId += 1;
|
||||
const values = new Array(count);
|
||||
|
||||
for (let i = 0; i < count; i += 1) {
|
||||
values[i] = ((i + currentCallId) << 2) ^ currentCallId;
|
||||
}
|
||||
|
||||
return Buffer.from(values);
|
||||
};
|
||||
});
|
||||
|
||||
const beforeApplicationStartCallbacks: Callback[] = [];
|
||||
const beforeRenderCallbacks: Callback[] = [];
|
||||
|
||||
|
||||
+1
-1
@@ -89,7 +89,7 @@ describe("enlist message channel listener in renderer", () => {
|
||||
});
|
||||
|
||||
it("given stringified object as message, when message arrives, calls the handler with the message", () => {
|
||||
onMock.mock.calls[0][1]({} as IpcRendererEvent, JSON.stringify({ some: "object" }));
|
||||
onMock.mock.calls[0][1]({} as IpcRendererEvent, { some: "object" });
|
||||
|
||||
expect(handlerMock).toHaveBeenCalledWith({ some: "object" });
|
||||
});
|
||||
|
||||
@@ -26,30 +26,30 @@ describe("message to channel from renderer", () => {
|
||||
messageToChannel = di.inject(messageToChannelInjectionToken);
|
||||
});
|
||||
|
||||
it("given string as message, when messaging to channel, sends stringified message", () => {
|
||||
it("given string as message, when messaging to channel, sends message", () => {
|
||||
messageToChannel(someChannel, "some-message");
|
||||
|
||||
expect(sendMock).toHaveBeenCalledWith("some-channel-id", '"some-message"');
|
||||
expect(sendMock).toHaveBeenCalledWith("some-channel-id", "some-message");
|
||||
});
|
||||
|
||||
it("given boolean as message, when messaging to channel, sends stringified message", () => {
|
||||
it("given boolean as message, when messaging to channel, sends message", () => {
|
||||
messageToChannel(someChannel, true);
|
||||
|
||||
expect(sendMock).toHaveBeenCalledWith("some-channel-id", "true");
|
||||
expect(sendMock).toHaveBeenCalledWith("some-channel-id", true);
|
||||
});
|
||||
|
||||
it("given number as message, when messaging to channel, sends stringified message", () => {
|
||||
it("given number as message, when messaging to channel, sends message", () => {
|
||||
messageToChannel(someChannel, 42);
|
||||
|
||||
expect(sendMock).toHaveBeenCalledWith("some-channel-id", "42");
|
||||
expect(sendMock).toHaveBeenCalledWith("some-channel-id", 42);
|
||||
});
|
||||
|
||||
it("given object as message, when messaging to channel, sends stringified message", () => {
|
||||
it("given object as message, when messaging to channel, sends message", () => {
|
||||
messageToChannel(someChannel, { some: "object" });
|
||||
|
||||
expect(sendMock).toHaveBeenCalledWith(
|
||||
"some-channel-id",
|
||||
JSON.stringify({ some: "object" }),
|
||||
{ some: "object" },
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -39,10 +39,6 @@ describe("request from channel in renderer", () => {
|
||||
actualPromise = requestFromChannel(someChannel, "some-message");
|
||||
});
|
||||
|
||||
it("sends stringified message", () => {
|
||||
expect(invokeMock).toHaveBeenCalledWith("some-channel-id", '"some-message"');
|
||||
});
|
||||
|
||||
it("does not resolve yet", async () => {
|
||||
const promiseStatus = await getPromiseStatus(actualPromise);
|
||||
|
||||
@@ -57,65 +53,46 @@ describe("request from channel in renderer", () => {
|
||||
expect(actual).toBe("some-response");
|
||||
});
|
||||
|
||||
it("when invoking resolves with stringified string, resolves with string", async () => {
|
||||
await invokeMock.resolve('"some-response"');
|
||||
it("when resolving with number, resolves with number", async () => {
|
||||
await invokeMock.resolve(10);
|
||||
|
||||
const actual = await actualPromise;
|
||||
|
||||
expect(actual).toBe("some-response");
|
||||
expect(actual).toBe(10);
|
||||
});
|
||||
|
||||
it("when invoking resolves with stringified boolean, resolves with boolean", async () => {
|
||||
await invokeMock.resolve("true");
|
||||
it("when resolving with number 0, resolves with number 0", async () => {
|
||||
await invokeMock.resolve(0);
|
||||
|
||||
const actual = await actualPromise;
|
||||
|
||||
expect(actual).toBe(0);
|
||||
});
|
||||
|
||||
it("when resolving with true, resolves with true", async () => {
|
||||
await invokeMock.resolve(true);
|
||||
|
||||
const actual = await actualPromise;
|
||||
|
||||
expect(actual).toBe(true);
|
||||
});
|
||||
|
||||
it("when invoking resolves with stringified number, resolves with number", async () => {
|
||||
await invokeMock.resolve("42");
|
||||
it("when resolving with false, resolves with false", async () => {
|
||||
await invokeMock.resolve(false);
|
||||
|
||||
const actual = await actualPromise;
|
||||
|
||||
expect(actual).toBe(42);
|
||||
expect(actual).toBe(false);
|
||||
});
|
||||
|
||||
it("when invoking resolves with stringified object, resolves with object", async () => {
|
||||
await invokeMock.resolve(JSON.stringify({ some: "object" }));
|
||||
it("when resolving with object, resolves with object", async () => {
|
||||
await invokeMock.resolve({ myField: true });
|
||||
|
||||
const actual = await actualPromise;
|
||||
|
||||
expect(actual).toEqual({ some: "object" });
|
||||
expect(actual).toEqual({ myField: true });
|
||||
});
|
||||
});
|
||||
|
||||
it("given string as message, when messaging to channel, sends stringified message", () => {
|
||||
requestFromChannel(someChannel, "some-message");
|
||||
|
||||
expect(invokeMock).toHaveBeenCalledWith("some-channel-id", '"some-message"');
|
||||
});
|
||||
|
||||
it("given boolean as message, when messaging to channel, sends stringified message", () => {
|
||||
requestFromChannel(someChannel, true);
|
||||
|
||||
expect(invokeMock).toHaveBeenCalledWith("some-channel-id", "true");
|
||||
});
|
||||
|
||||
it("given number as message, when messaging to channel, sends stringified message", () => {
|
||||
requestFromChannel(someChannel, 42);
|
||||
|
||||
expect(invokeMock).toHaveBeenCalledWith("some-channel-id", "42");
|
||||
});
|
||||
|
||||
it("given object as message, when messaging to channel, sends stringified message", () => {
|
||||
requestFromChannel(someChannel, { some: "object" });
|
||||
|
||||
expect(invokeMock).toHaveBeenCalledWith(
|
||||
"some-channel-id",
|
||||
JSON.stringify({ some: "object" }),
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
const someChannel: MessageChannel<any> = { id: "some-channel-id" };
|
||||
Reference in new issue
Block a user