Add component tests for EndRunModal, GameGrid, RulesConfiguration, Layout

33 tests covering rendering, user interactions (userEvent clicks), prop
callbacks, filter state, and conditional description text. Adds a
matchMedia stub to the vitest setup file so components importing
useTheme don't throw in jsdom. Also adds actionlint and zizmor
pre-commit hooks for GitHub Actions linting.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-21 13:57:12 +01:00
parent 0d2f419c6a
commit 9aaa95a1c7
8 changed files with 374 additions and 20 deletions

View File

@@ -1 +1,17 @@
import '@testing-library/jest-dom'
// jsdom does not implement window.matchMedia; provide a minimal stub so
// modules that reference it at load time (e.g. useTheme) don't throw.
Object.defineProperty(window, 'matchMedia', {
writable: true,
value: vi.fn().mockImplementation((query: string) => ({
matches: false,
media: query,
onchange: null,
addListener: vi.fn(),
removeListener: vi.fn(),
addEventListener: vi.fn(),
removeEventListener: vi.fn(),
dispatchEvent: vi.fn(),
})),
})