- Introduce Vitest + React Testing Library + jsdom environment - Add useDragSort hook unit tests covering: * Sorting logic (sortIndex → createdAt → name) * Successful drag operation (API call + cache invalidation) * Failed drag operation (error toast display) * Edge case (no valid target, no API call) - Configure global test setup (i18n mock, auto cleanup) - Update TypeScript configs to include tests/ directory - Add test development plan documentation Test Coverage: ✓ Provider drag-and-drop sorting core logic ✓ React Query cache refresh ✓ Toast notification display ✓ Boundary condition handling Test Results: 4/4 passed (671ms) Next Steps: Sprint 2 - component tests with MSW mock layer
24 lines
502 B
TypeScript
24 lines
502 B
TypeScript
import "@testing-library/jest-dom";
|
|
import { afterEach, beforeAll } from "vitest";
|
|
import { cleanup } from "@testing-library/react";
|
|
import i18n from "i18next";
|
|
import { initReactI18next } from "react-i18next";
|
|
|
|
beforeAll(async () => {
|
|
await i18n.use(initReactI18next).init({
|
|
lng: "zh",
|
|
fallbackLng: "zh",
|
|
resources: {
|
|
zh: { translation: {} },
|
|
en: { translation: {} },
|
|
},
|
|
interpolation: {
|
|
escapeValue: false,
|
|
},
|
|
});
|
|
});
|
|
|
|
afterEach(() => {
|
|
cleanup();
|
|
});
|