mirror of
https://github.com/finos/SymphonyElectron.git
synced 2024-12-28 09:51:06 -06:00
de6502035b
* mocking electron-log * auto launch controller unit test
66 lines
2.3 KiB
TypeScript
66 lines
2.3 KiB
TypeScript
jest.mock('electron-log');
|
|
|
|
describe('activity detection', () => {
|
|
const originalTimeout: number = jasmine.DEFAULT_TIMEOUT_INTERVAL;
|
|
jasmine.DEFAULT_TIMEOUT_INTERVAL = 60000;
|
|
let activityDetectionInstance;
|
|
|
|
beforeEach(() => {
|
|
jest.resetModules();
|
|
jest.useFakeTimers();
|
|
// I did it for reset module imported between tests
|
|
const { activityDetection } = require('../src/app/activity-detection');
|
|
activityDetectionInstance = activityDetection;
|
|
});
|
|
|
|
afterAll((done) => {
|
|
jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
|
|
done();
|
|
});
|
|
|
|
it('should call `setWindowAndThreshold` correctly', () => {
|
|
// mocking startActivityMonitor
|
|
const spy: jest.SpyInstance = jest.spyOn(activityDetectionInstance, 'setWindowAndThreshold');
|
|
const idleThresholdMock: number = 1000;
|
|
|
|
jest.spyOn(activityDetectionInstance, 'startActivityMonitor')
|
|
.mockImplementation(() => jest.fn());
|
|
|
|
activityDetectionInstance.setWindowAndThreshold({}, idleThresholdMock);
|
|
|
|
expect(spy).toBeCalledWith({}, 1000);
|
|
});
|
|
|
|
it('should start activity monitor when `setWindowAndThreshold` is called', () => {
|
|
const idleThresholdMock: number = 1000;
|
|
const spy: jest.SpyInstance = jest.spyOn(activityDetectionInstance, 'startActivityMonitor')
|
|
.mockImplementation(() => jest.fn());
|
|
|
|
activityDetectionInstance.setWindowAndThreshold({}, idleThresholdMock);
|
|
|
|
expect(spy).toBeCalled();
|
|
});
|
|
|
|
it('should call `activity` when `startActivityMonitor` is called', () => {
|
|
const spy: jest.SpyInstance = jest.spyOn(activityDetectionInstance, 'activity');
|
|
|
|
activityDetectionInstance.startActivityMonitor();
|
|
|
|
jest.runOnlyPendingTimers();
|
|
|
|
expect(spy).toBeCalled();
|
|
});
|
|
|
|
it('should call `sendActivity` when period was greater than idleTime', () => {
|
|
// period is this.idleThreshold = 60 * 60 * 1000;
|
|
const mockIdleTime: number = 50;
|
|
const spy: jest.SpyInstance = jest.spyOn(activityDetectionInstance, 'sendActivity');
|
|
const mockIdleTimeinMillis: number = mockIdleTime * 1000;
|
|
|
|
activityDetectionInstance.activity(mockIdleTime);
|
|
|
|
expect(spy).toBeCalledWith(mockIdleTimeinMillis);
|
|
});
|
|
|
|
});
|