|
1 | 1 | import { afterEach, describe, expect, it, vi } from 'vitest'; |
2 | 2 | import { ALARM_NAME, initBackground, runScheduledRefresh, syncAlarm } from '@/engines/backgroundEngine.js'; |
3 | | -import { defaultOptions } from '@/definitions.js'; |
| 3 | +import { defaultOptions, minAutoRefreshInterval } from '@/definitions.js'; |
4 | 4 | import { PAGE_PROCESSING_STORAGE_KEY, PROCESSING_STORAGE_KEY } from '@/engines/statsEngine.js'; |
5 | 5 | import { statsCacheKey } from '@/utils.js'; |
6 | 6 | import { createMockMessenger } from '../helpers/messenger.js'; |
@@ -65,6 +65,16 @@ describe('syncAlarm', () => { |
65 | 65 | expect(messenger.alarms.create).toHaveBeenCalledWith(ALARM_NAME, { periodInMinutes: 45 }); |
66 | 66 | }); |
67 | 67 |
|
| 68 | + it('raises a stored interval below the minimum to the minimum', async () => { |
| 69 | + const messenger = setupMessenger(); |
| 70 | + vi.stubGlobal('messenger', messenger); |
| 71 | + await messenger.storage.local.set({ options: { ...defaultOptions, autoRefresh: true, autoRefreshInterval: 10 } }); |
| 72 | + |
| 73 | + await syncAlarm(); |
| 74 | + |
| 75 | + expect(messenger.alarms.create).toHaveBeenCalledWith(ALARM_NAME, { periodInMinutes: minAutoRefreshInterval }); |
| 76 | + }); |
| 77 | + |
68 | 78 | it('only clears, never creates, when autoRefresh is disabled', async () => { |
69 | 79 | const messenger = setupMessenger(); |
70 | 80 | vi.stubGlobal('messenger', messenger); |
@@ -113,10 +123,10 @@ describe('initBackground', () => { |
113 | 123 | await vi.waitFor(() => expect(messenger.alarms.clear).toHaveBeenCalledWith(ALARM_NAME)); |
114 | 124 | messenger.alarms.clear.mockClear(); |
115 | 125 |
|
116 | | - await messenger.storage.local.set({ options: { ...defaultOptions, autoRefresh: true, autoRefreshInterval: 10 } }); |
| 126 | + await messenger.storage.local.set({ options: { ...defaultOptions, autoRefresh: true, autoRefreshInterval: 60 } }); |
117 | 127 |
|
118 | 128 | await vi.waitFor(() => expect(messenger.alarms.clear).toHaveBeenCalledWith(ALARM_NAME)); |
119 | | - expect(messenger.alarms.create).toHaveBeenCalledWith(ALARM_NAME, { periodInMinutes: 10 }); |
| 129 | + expect(messenger.alarms.create).toHaveBeenCalledWith(ALARM_NAME, { periodInMinutes: 60 }); |
120 | 130 | }); |
121 | 131 |
|
122 | 132 | it('ignores storage changes to keys other than "options"', async () => { |
|
0 commit comments