fix(17): resolve post-merge wave 2 integration issues

- SettingsSheet: void the navigate('/login') promise (react-router v7 returns Promise) — eslint no-floating-promises
- InstructionSheet.test: wrap SettingsSheet render in MemoryRouter — 17-05 added useNavigate() which needs Router context

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Lucas Berger
2026-06-18 13:01:39 -04:00
co-authored by Claude Opus 4.8
parent 4887ba1b5f
commit b5fcd1d172
2 changed files with 7 additions and 2 deletions
@@ -10,6 +10,7 @@
import React from 'react';
import { describe, it, expect, vi, beforeEach } from 'vitest';
import { render, screen, fireEvent } from '@testing-library/react';
import { MemoryRouter } from 'react-router';
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
// ── Module mocks ──────────────────────────────────────────────────────────────
@@ -70,7 +71,11 @@ function renderWithQueryClient(ui: React.ReactElement) {
const queryClient = new QueryClient({
defaultOptions: { queries: { retry: false }, mutations: { retry: false } },
});
return render(<QueryClientProvider client={queryClient}>{ui}</QueryClientProvider>);
return render(
<QueryClientProvider client={queryClient}>
<MemoryRouter>{ui}</MemoryRouter>
</QueryClientProvider>,
);
}
// ── Tests ─────────────────────────────────────────────────────────────────────
+1 -1
View File
@@ -142,7 +142,7 @@ export function SettingsSheet({ isOpen, onClose }: SettingsSheetProps) {
// API failure does not block navigation — server cookie was cleared or already expired
}
onClose();
navigate('/login');
void navigate('/login');
};
const handleToggle = async () => {