Skip to content

Commit 74ce9f3

Browse files
committed
frontend/versionChecker: remove unused forceReload function
1 parent 33f17fd commit 74ce9f3

File tree

2 files changed

+1
-69
lines changed

2 files changed

+1
-69
lines changed

frontend/src/versionChecker.test.ts

Lines changed: 1 addition & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { describe, it, beforeEach, vi, expect, afterEach } from 'vitest';
2-
import { forceReload, forceCheckForUpdates, startVersionChecking, stopVersionChecking } from './versionChecker';
2+
import { forceCheckForUpdates, startVersionChecking, stopVersionChecking } from './versionChecker';
33

44
// Helper to mock fetch responses sequence
55
function mockFetchSequence(responses: Array<Response | Promise<Response>>) {
@@ -81,44 +81,6 @@ describe('versionChecker', () => {
8181
expect(window.alert).toHaveBeenCalled();
8282
});
8383

84-
it('forceReload clears caches (when available), removes localStorage except allowlist, and updates href', async () => {
85-
const cachesDelete = vi.fn();
86-
const cachesKeys = vi.fn().mockResolvedValue(['a', 'b']);
87-
const cachesMock = { keys: cachesKeys, delete: cachesDelete };
88-
// @ts-expect-error assign
89-
globalThis.caches = cachesMock;
90-
// @ts-expect-error assign
91-
window.caches = cachesMock;
92-
93-
localStorage.setItem('debugMode', '1');
94-
localStorage.setItem('currentConnection', 'X');
95-
localStorage.setItem('loginSalt', 'Y');
96-
localStorage.setItem('removeMe', 'Z');
97-
98-
const swPost = vi.fn();
99-
// @ts-expect-error augment
100-
navigator.serviceWorker = { controller: { postMessage: swPost } } as unknown as ServiceWorkerContainer;
101-
102-
const originalHref = window.location.href;
103-
104-
forceReload();
105-
// wait a microtask for caches.keys().then(...) to run
106-
await Promise.resolve();
107-
108-
expect(cachesKeys).toHaveBeenCalled();
109-
expect(cachesDelete).toHaveBeenCalledTimes(2);
110-
expect(swPost).toHaveBeenCalledWith({ type: 'CLEAR_CACHE' });
111-
112-
expect(localStorage.getItem('debugMode')).toBe('1');
113-
expect(localStorage.getItem('loginSalt')).toBe('Y');
114-
expect(localStorage.getItem('currentConnection')).toBe('X');
115-
116-
expect(localStorage.getItem('removeMe')).toBeNull();
117-
118-
expect(window.location.href).not.toBe(originalHref);
119-
expect(window.location.href).toContain('_t=');
120-
});
121-
12284
it('startVersionChecking stops interval when user declines reload', async () => {
12385
mockFetchSequence([
12486
jsonResponse({ buildHash: 'v1' }), // init

frontend/src/versionChecker.ts

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -122,33 +122,3 @@ export async function forceCheckForUpdates(): Promise<void> {
122122
alert(i18n.t('version_checker.already_latest'));
123123
}
124124
}
125-
126-
export function forceReload(): void {
127-
if ('caches' in window) {
128-
caches.keys().then(names => {
129-
names.forEach(name => {
130-
caches.delete(name);
131-
});
132-
});
133-
}
134-
135-
if (navigator.serviceWorker && navigator.serviceWorker.controller) {
136-
navigator.serviceWorker.controller.postMessage({
137-
type: 'CLEAR_CACHE'
138-
});
139-
}
140-
141-
const keysToKeep = ['debugMode', 'currentConnection', 'loginSalt'];
142-
const keysToRemove: string[] = [];
143-
144-
for (let i = 0; i < localStorage.length; i++) {
145-
const key = localStorage.key(i);
146-
if (key && !keysToKeep.includes(key)) {
147-
keysToRemove.push(key);
148-
}
149-
}
150-
151-
keysToRemove.forEach(key => localStorage.removeItem(key));
152-
153-
window.location.href = `${window.location.href + (window.location.href.includes('?') ? '&' : '?') }_t=${ Date.now()}`;
154-
}

0 commit comments

Comments
 (0)