diff --git a/test/webview/ui/useVscodeTheme.test.ts b/test/webview/ui/useVscodeTheme.test.ts index e83bbd4684..2e38837e16 100644 --- a/test/webview/ui/useVscodeTheme.test.ts +++ b/test/webview/ui/useVscodeTheme.test.ts @@ -1,4 +1,4 @@ -import { act, renderHook } from "@testing-library/react"; +import { act, cleanup, renderHook } from "@testing-library/react"; import { afterEach, describe, expect, it } from "vitest"; import { useVscodeTheme } from "@repo/ui"; @@ -12,6 +12,9 @@ function setThemeKind(kind: string | undefined): void { } afterEach(() => { + // Unmount before clearing the attribute so the MutationObserver + // callback doesn't trigger a state update on a mounted component. + cleanup(); setThemeKind(undefined); }); diff --git a/vitest.config.ts b/vitest.config.mts similarity index 71% rename from vitest.config.ts rename to vitest.config.mts index 521ce24ea9..3cc835357f 100644 --- a/vitest.config.ts +++ b/vitest.config.mts @@ -2,7 +2,7 @@ import path from "node:path"; import { defineConfig } from "vitest/config"; const webviewSharedAlias = path.resolve( - __dirname, + import.meta.dirname, "packages/webview-shared/src", ); @@ -24,9 +24,12 @@ export default defineConfig({ }, resolve: { alias: { - "@": path.resolve(__dirname, "src"), + "@": path.resolve(import.meta.dirname, "src"), "@repo/webview-shared": webviewSharedAlias, - vscode: path.resolve(__dirname, "test/mocks/vscode.runtime.ts"), + vscode: path.resolve( + import.meta.dirname, + "test/mocks/vscode.runtime.ts", + ), }, }, }, @@ -43,11 +46,17 @@ export default defineConfig({ resolve: { alias: { "@repo/webview-shared": webviewSharedAlias, - "@repo/tasks": path.resolve(__dirname, "packages/tasks/src"), - "@repo/ui": path.resolve(__dirname, "packages/ui/src"), - "@repo/netcheck": path.resolve(__dirname, "packages/netcheck/src"), + "@repo/tasks": path.resolve( + import.meta.dirname, + "packages/tasks/src", + ), + "@repo/ui": path.resolve(import.meta.dirname, "packages/ui/src"), + "@repo/netcheck": path.resolve( + import.meta.dirname, + "packages/netcheck/src", + ), "@repo/speedtest": path.resolve( - __dirname, + import.meta.dirname, "packages/speedtest/src", ), },