mirror of
https://github.com/Kong/insomnia
synced 2024-11-08 23:00:30 +00:00
66 lines
2.4 KiB
TypeScript
66 lines
2.4 KiB
TypeScript
import { ipcMain } from 'electron';
|
|
|
|
import { GrpcRequestEventEnum } from '../../common/grpc-events';
|
|
import * as grpc from '../../network/grpc';
|
|
import { ResponseCallbacks } from '../../network/grpc/response-callbacks';
|
|
import * as grpcIpcMain from '../grpc-ipc-main';
|
|
|
|
jest.mock('../../network/grpc');
|
|
|
|
describe('grpcIpcMain', () => {
|
|
const event = {
|
|
reply: jest.fn(),
|
|
};
|
|
const id = 'abc';
|
|
beforeEach(() => {
|
|
grpcIpcMain.init(); // ipcMain is mocked
|
|
});
|
|
|
|
it.each(Object.values(GrpcRequestEventEnum))('should add listener for channel: %s', channel => {
|
|
expect(ipcMain.on).toHaveBeenCalledWith(channel, expect.anything());
|
|
});
|
|
|
|
it('should add expected listener for start', () => {
|
|
const [channel, listener] = ipcMain.on.mock.calls[0];
|
|
expect(channel).toBe(GrpcRequestEventEnum.start);
|
|
const param = {};
|
|
// Execute the callback, and make sure the correct grpc method is called
|
|
listener(event, param);
|
|
expect(grpc.start).toHaveBeenCalledWith(param, expect.any(ResponseCallbacks));
|
|
});
|
|
|
|
it('should add expected listener for sendMessage', () => {
|
|
const [channel, listener] = ipcMain.on.mock.calls[1];
|
|
// Expect the sendUnary channel
|
|
expect(channel).toBe(GrpcRequestEventEnum.sendMessage);
|
|
const param = {};
|
|
// Execute the callback, and make sure the correct grpc method is called
|
|
listener(event, param);
|
|
expect(grpc.sendMessage).toHaveBeenCalledWith(param, expect.any(ResponseCallbacks));
|
|
});
|
|
|
|
it('should add expected listener for commit', () => {
|
|
const [channel, listener] = ipcMain.on.mock.calls[2];
|
|
expect(channel).toBe(GrpcRequestEventEnum.commit);
|
|
// Execute the callback, and make sure the correct grpc method is called
|
|
listener(event, id);
|
|
expect(grpc.commit).toHaveBeenCalledWith(id);
|
|
});
|
|
|
|
it('should add expected listener for cancel', () => {
|
|
const [channel, listener] = ipcMain.on.mock.calls[3];
|
|
expect(channel).toBe(GrpcRequestEventEnum.cancel);
|
|
// Execute the callback, and make sure the correct grpc method is called
|
|
listener(event, id);
|
|
expect(grpc.cancel).toHaveBeenCalledWith(id);
|
|
});
|
|
|
|
it('should add expected listener for cancel multiple', () => {
|
|
const [channel, listener] = ipcMain.on.mock.calls[4];
|
|
expect(channel).toBe(GrpcRequestEventEnum.cancelMultiple);
|
|
// Execute the callback, and make sure the correct grpc method is called
|
|
listener(event, id);
|
|
expect(grpc.cancelMultiple).toHaveBeenCalledWith(id);
|
|
});
|
|
});
|