test(confirm-service): normalise vi.mock spelling and remove duplicate-id mocks
Five test files mocked $lib/shared/services/confirm.svelte under BOTH spellings (.svelte and .svelte.js) within the same file; two more mocked only the .svelte.js form. Both resolve to the same module URL but register two distinct Playwright route handlers in @vitest/browser-playwright. The cleanup logic only removes one, leaving an orphan that fires when the next session loads the module — crashing the run with "[birpc] rpc is closed, cannot call resolveManualMock". This is the exact trigger fixed upstream by vitest PR #10267 (issue #9957). Normalise every confirm.svelte mock to the no-extension form, matching production imports and the source file basename (confirm.svelte.ts). After this commit: 8 confirm.svelte mocks across 8 spec files, all under one canonical ID. A meta-test (next commit) prevents the duplicate-id pattern from reappearing. Refs: #553 · vitest-dev/vitest#9957 · vitest-dev/vitest#10267 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -5,9 +5,6 @@ import { page } from 'vitest/browser';
|
||||
vi.mock('$lib/shared/services/confirm.svelte', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
vi.mock('$lib/shared/services/confirm.svelte.js', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
|
||||
const { default: TranscriptionEditView } = await import('./TranscriptionEditView.svelte');
|
||||
import type { TranscriptionBlockData } from '$lib/shared/types';
|
||||
|
||||
@@ -2,7 +2,7 @@ import { describe, it, expect, vi, afterEach } from 'vitest';
|
||||
import { cleanup, render } from 'vitest-browser-svelte';
|
||||
import { page } from 'vitest/browser';
|
||||
|
||||
vi.mock('$lib/shared/services/confirm.svelte.js', () => ({
|
||||
vi.mock('$lib/shared/services/confirm.svelte', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
|
||||
|
||||
@@ -16,9 +16,6 @@ vi.mock('$app/stores', () => ({
|
||||
vi.mock('$lib/shared/services/confirm.svelte', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
vi.mock('$lib/shared/services/confirm.svelte.js', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
|
||||
vi.mock('$app/navigation', () => ({
|
||||
beforeNavigate: () => {},
|
||||
|
||||
@@ -5,9 +5,6 @@ import { page } from 'vitest/browser';
|
||||
vi.mock('$lib/shared/services/confirm.svelte', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
vi.mock('$lib/shared/services/confirm.svelte.js', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
|
||||
const { default: AdminUserEditPage } = await import('./+page.svelte');
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { describe, it, expect, vi, afterEach } from 'vitest';
|
||||
import { cleanup, render } from 'vitest-browser-svelte';
|
||||
|
||||
vi.mock('$lib/shared/services/confirm.svelte.js', () => ({
|
||||
vi.mock('$lib/shared/services/confirm.svelte', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
|
||||
|
||||
@@ -30,9 +30,6 @@ vi.mock('$app/navigation', () => ({
|
||||
vi.mock('$lib/shared/services/confirm.svelte', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
vi.mock('$lib/shared/services/confirm.svelte.js', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
|
||||
const { default: DocumentDetailPage } = await import('./+page.svelte');
|
||||
|
||||
|
||||
@@ -5,9 +5,6 @@ import { page } from 'vitest/browser';
|
||||
vi.mock('$lib/shared/services/confirm.svelte', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
vi.mock('$lib/shared/services/confirm.svelte.js', () => ({
|
||||
getConfirmService: () => ({ confirm: async () => false })
|
||||
}));
|
||||
|
||||
const { default: PersonEditPage } = await import('./+page.svelte');
|
||||
|
||||
|
||||
Reference in New Issue
Block a user