mirror of
https://github.com/bitwarden/browser.git
synced 2024-10-05 05:17:40 +02:00
[PM-6426] Implementing Jest tests for DefaultTaskSchedulerService
This commit is contained in:
parent
1041146724
commit
ce0108714f
@ -219,7 +219,7 @@ export class BrowserTaskSchedulerServiceImplementation
|
||||
): Promise<void> {
|
||||
const existingAlarm = await this.getAlarm(alarmName);
|
||||
if (existingAlarm) {
|
||||
this.logService.warning(`Alarm ${alarmName} already exists. Skipping creation.`);
|
||||
this.logService.debug(`Alarm ${alarmName} already exists. Skipping creation.`);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -8,7 +8,7 @@ import { StateProvider } from "../state";
|
||||
|
||||
import { DefaultTaskSchedulerService } from "./default-task-scheduler.service";
|
||||
|
||||
describe("TaskSchedulerService", () => {
|
||||
describe("DefaultTaskSchedulerService", () => {
|
||||
const callback = jest.fn();
|
||||
const delayInMs = 1000;
|
||||
const intervalInMs = 1100;
|
||||
@ -25,7 +25,7 @@ describe("TaskSchedulerService", () => {
|
||||
activeUserId$: activeUserIdMock$,
|
||||
});
|
||||
taskSchedulerService = new DefaultTaskSchedulerService(logService, stateProvider);
|
||||
void taskSchedulerService.registerTaskHandler(
|
||||
taskSchedulerService.registerTaskHandler(
|
||||
ScheduledTaskNames.loginStrategySessionTimeout,
|
||||
callback,
|
||||
);
|
||||
@ -36,6 +36,20 @@ describe("TaskSchedulerService", () => {
|
||||
jest.clearAllMocks();
|
||||
});
|
||||
|
||||
it("overrides the handler for a previously registered task and provides a warning about the task registration", () => {
|
||||
taskSchedulerService.registerTaskHandler(
|
||||
ScheduledTaskNames.loginStrategySessionTimeout,
|
||||
callback,
|
||||
);
|
||||
|
||||
expect(logService.warning).toHaveBeenCalledWith(
|
||||
`Task handler for ${ScheduledTaskNames.loginStrategySessionTimeout} already exists. Overwriting.`,
|
||||
);
|
||||
expect(
|
||||
taskSchedulerService["taskHandlers"].get(ScheduledTaskNames.loginStrategySessionTimeout),
|
||||
).toBeDefined();
|
||||
});
|
||||
|
||||
it("sets a timeout and returns the timeout id", async () => {
|
||||
const timeoutId = await taskSchedulerService.setTimeout(
|
||||
ScheduledTaskNames.loginStrategySessionTimeout,
|
||||
|
Loading…
Reference in New Issue
Block a user