refactor(frontend): lint, one session guard, one request helper, one user context

This commit is contained in:
lobo committed 2026-09-29 15:40:55 +02:00
1 parent 111ab1e200
commit d0ea9e900d
78 files changed
+2138 -624

No files matched your search

+6 -2
View File
@@ -1,17 +1,21 @@
// @vitest-environment jsdom
import {afterEach, beforeEach, describe, expect, it, vi} from 'vitest';
import {act, cleanup, renderHook} from '@testing-library/react';
import {MemoryRouter} from 'react-router-dom';
import {MemoryRouter, Route, Routes} from 'react-router-dom';
import {toast} from 'sonner';
import {PreferencesProvider, usePreferences} from '../context/PreferencesContext.jsx';
import useSaveAppearance from './useSaveAppearance.js';
import RequireSession from '../components/RequireSession.jsx';
import {DEFAULT_APPEARANCE} from '../utils/appearance.js';
vi.mock('react-i18next', () => import('../test/i18n-mock.js'));
vi.mock('sonner', () => ({toast: {success: vi.fn(), error: vi.fn()}}));
// RequireSession ends the session on a 401, as on the pages that use the hook.
const wrapper = ({children}) => (
<MemoryRouter><PreferencesProvider>{children}</PreferencesProvider></MemoryRouter>
<MemoryRouter><PreferencesProvider>
<Routes><Route element={<RequireSession/>}><Route path="*" element={children}/></Route></Routes>
</PreferencesProvider></MemoryRouter>
);
const renderSave = () => renderHook(() => ({save: useSaveAppearance(), preferences: usePreferences()}), {wrapper});