sts-sponsors team mailing list archive
-
sts-sponsors team
-
Mailing list archive
-
Message #07022
[Merge] ~petermakowski/maas-site-manager:add-autoimport-to-vitest into maas-site-manager:main
Peter Makowski has proposed merging ~petermakowski/maas-site-manager:add-autoimport-to-vitest into maas-site-manager:main.
Commit message:
add autoimport to vitest
Requested reviews:
MAAS Committers (maas-committers)
For more details, see:
https://code.launchpad.net/~petermakowski/maas-site-manager/+git/site-manager/+merge/441078
This allows you to skip import of vitest methods, like: import { vi } from "vitest"
--
Your team MAAS Committers is requested to review the proposed merge of ~petermakowski/maas-site-manager:add-autoimport-to-vitest into maas-site-manager:main.
diff --git a/frontend/.eslintrc-auto-import.json b/frontend/.eslintrc-auto-import.json
index fdd362d..172268c 100644
--- a/frontend/.eslintrc-auto-import.json
+++ b/frontend/.eslintrc-auto-import.json
@@ -6,11 +6,22 @@
"Outlet": true,
"Route": true,
"Routes": true,
+ "afterAll": true,
+ "afterEach": true,
+ "assert": true,
+ "beforeAll": true,
+ "beforeEach": true,
+ "chai": true,
"createRef": true,
+ "describe": true,
+ "expect": true,
"forwardRef": true,
+ "it": true,
"lazy": true,
"memo": true,
"startTransition": true,
+ "suite": true,
+ "test": true,
"useCallback": true,
"useContext": true,
"useDebugValue": true,
@@ -37,6 +48,8 @@
"useSearchParams": true,
"useState": true,
"useSyncExternalStore": true,
- "useTransition": true
+ "useTransition": true,
+ "vi": true,
+ "vitest": true
}
}
\ No newline at end of file
diff --git a/frontend/auto-imports.d.ts b/frontend/auto-imports.d.ts
index 6d3f354..16bd2ed 100644
--- a/frontend/auto-imports.d.ts
+++ b/frontend/auto-imports.d.ts
@@ -10,11 +10,22 @@ declare global {
const Outlet: typeof import('react-router-dom')['Outlet']
const Route: typeof import('react-router-dom')['Route']
const Routes: typeof import('react-router-dom')['Routes']
+ const afterAll: typeof import('vitest')['afterAll']
+ const afterEach: typeof import('vitest')['afterEach']
+ const assert: typeof import('vitest')['assert']
+ const beforeAll: typeof import('vitest')['beforeAll']
+ const beforeEach: typeof import('vitest')['beforeEach']
+ const chai: typeof import('vitest')['chai']
const createRef: typeof import('react')['createRef']
+ const describe: typeof import('vitest')['describe']
+ const expect: typeof import('vitest')['expect']
const forwardRef: typeof import('react')['forwardRef']
+ const it: typeof import('vitest')['it']
const lazy: typeof import('react')['lazy']
const memo: typeof import('react')['memo']
const startTransition: typeof import('react')['startTransition']
+ const suite: typeof import('vitest')['suite']
+ const test: typeof import('vitest')['test']
const useCallback: typeof import('react')['useCallback']
const useContext: typeof import('react')['useContext']
const useDebugValue: typeof import('react')['useDebugValue']
@@ -42,4 +53,6 @@ declare global {
const useState: typeof import('react')['useState']
const useSyncExternalStore: typeof import('react')['useSyncExternalStore']
const useTransition: typeof import('react')['useTransition']
+ const vi: typeof import('vitest')['vi']
+ const vitest: typeof import('vitest')['vitest']
}
diff --git a/frontend/src/components/DateTime/DateTime.test.tsx b/frontend/src/components/DateTime/DateTime.test.tsx
index b6c6df1..1aa73e0 100644
--- a/frontend/src/components/DateTime/DateTime.test.tsx
+++ b/frontend/src/components/DateTime/DateTime.test.tsx
@@ -1,5 +1,4 @@
import * as timezoneMock from "timezone-mock";
-import { vi } from "vitest";
import DateTime from "./DateTime";
diff --git a/frontend/src/components/EnrollmentActions/EnrollmentActions.test.tsx b/frontend/src/components/EnrollmentActions/EnrollmentActions.test.tsx
index fafd39a..1ffa6dd 100644
--- a/frontend/src/components/EnrollmentActions/EnrollmentActions.test.tsx
+++ b/frontend/src/components/EnrollmentActions/EnrollmentActions.test.tsx
@@ -1,5 +1,3 @@
-import { vi } from "vitest";
-
import EnrollmentActions from "./EnrollmentActions";
import type * as apiHooks from "@/hooks/api";
diff --git a/frontend/src/components/RemoveRegions/RemoveRegions.test.tsx b/frontend/src/components/RemoveRegions/RemoveRegions.test.tsx
index 48ffd54..e5414c3 100644
--- a/frontend/src/components/RemoveRegions/RemoveRegions.test.tsx
+++ b/frontend/src/components/RemoveRegions/RemoveRegions.test.tsx
@@ -1,5 +1,3 @@
-import { vi } from "vitest";
-
import RemoveRegions from "./index";
import { render, screen, userEvent } from "@/test-utils";
diff --git a/frontend/src/components/SitesList/SitesTable/SitesTable.test.tsx b/frontend/src/components/SitesList/SitesTable/SitesTable.test.tsx
index cdab9f3..6c4db25 100644
--- a/frontend/src/components/SitesList/SitesTable/SitesTable.test.tsx
+++ b/frontend/src/components/SitesList/SitesTable/SitesTable.test.tsx
@@ -1,5 +1,4 @@
import * as timezoneMock from "timezone-mock";
-import { vi } from "vitest";
import SitesTable from "./SitesTable";
diff --git a/frontend/src/components/TokensCreate/TokensCreate.test.tsx b/frontend/src/components/TokensCreate/TokensCreate.test.tsx
index 022f7b6..2519f7f 100644
--- a/frontend/src/components/TokensCreate/TokensCreate.test.tsx
+++ b/frontend/src/components/TokensCreate/TokensCreate.test.tsx
@@ -1,6 +1,5 @@
import { rest } from "msw";
import { setupServer } from "msw/node";
-import { vi } from "vitest";
import TokensCreate from "./TokensCreate";
diff --git a/frontend/src/components/base/CopyButton/CopyButton.test.tsx b/frontend/src/components/base/CopyButton/CopyButton.test.tsx
index c98a5f3..2351f82 100644
--- a/frontend/src/components/base/CopyButton/CopyButton.test.tsx
+++ b/frontend/src/components/base/CopyButton/CopyButton.test.tsx
@@ -1,5 +1,3 @@
-import { vi } from "vitest";
-
import CopyButton from "./CopyButton";
import { render, screen, userEvent } from "@/test-utils";
diff --git a/frontend/src/components/base/TablePagination/TablePagination.test.tsx b/frontend/src/components/base/TablePagination/TablePagination.test.tsx
index 4befc42..a45313d 100644
--- a/frontend/src/components/base/TablePagination/TablePagination.test.tsx
+++ b/frontend/src/components/base/TablePagination/TablePagination.test.tsx
@@ -1,5 +1,3 @@
-import { vi } from "vitest";
-
import TablePagination from "./TablePagination";
import { render, screen, userEvent } from "@/test-utils";
diff --git a/frontend/src/hooks/useDebouncedValue.test.ts b/frontend/src/hooks/useDebouncedValue.test.ts
index ef6d4b8..ba6d055 100644
--- a/frontend/src/hooks/useDebouncedValue.test.ts
+++ b/frontend/src/hooks/useDebouncedValue.test.ts
@@ -1,5 +1,3 @@
-import { vi } from "vitest";
-
import useDebouncedValue from "./useDebouncedValue";
import { renderHook } from "@/test-utils";
diff --git a/frontend/src/routes/RequireLogin/RequireLogin.test.tsx b/frontend/src/routes/RequireLogin/RequireLogin.test.tsx
index b9a2278..b6c65ea 100644
--- a/frontend/src/routes/RequireLogin/RequireLogin.test.tsx
+++ b/frontend/src/routes/RequireLogin/RequireLogin.test.tsx
@@ -1,5 +1,4 @@
import * as reactRouter from "react-router";
-import { vi } from "vitest";
import RequireLogin from "./RequireLogin";
diff --git a/frontend/vitest.config.ts b/frontend/vitest.config.ts
index eed1bf5..5c66a57 100644
--- a/frontend/vitest.config.ts
+++ b/frontend/vitest.config.ts
@@ -1,7 +1,17 @@
import { configDefaults, coverageConfigDefaults, defineConfig } from "vitest/config";
+import AutoImport from "unplugin-auto-import/vite";
import * as path from "path";
export default defineConfig({
+ plugins: [
+ AutoImport({
+ imports: ["react", "react-router-dom", "vitest"],
+ dts: true,
+ eslintrc: {
+ enabled: true,
+ },
+ }),
+ ],
resolve: {
alias: { "@": path.resolve(__dirname, "src") },
},
Follow ups