EMS update

This commit is contained in:
adilallo
2025-08-29 14:27:05 -06:00
parent 4968baafbb
commit 2e010e30b5
2 changed files with 22 additions and 25 deletions
+15 -11
View File
@@ -243,7 +243,9 @@ describe("Footer", () => {
render(<Footer />); render(<Footer />);
// Get specific links that should have focus management // Get specific links that should have focus management
const emailLink = screen.getByRole("link", { name: "medlab@colorado.edu" }); const emailLinks = screen.getAllByRole("link", {
name: "medlab@colorado.edu",
});
const blueskyLink = screen.getByRole("link", { const blueskyLink = screen.getByRole("link", {
name: "Follow us on Bluesky", name: "Follow us on Bluesky",
}); });
@@ -251,16 +253,18 @@ describe("Footer", () => {
name: "Follow us on GitLab", name: "Follow us on GitLab",
}); });
// Check email link // Check email links (multiple due to responsive design)
expect(emailLink).toHaveClass("focus:outline-none"); emailLinks.forEach((emailLink) => {
expect(emailLink).toHaveClass("focus:ring-2"); expect(emailLink).toHaveClass("focus:outline-none");
expect(emailLink).toHaveClass("focus:ring-offset-2"); expect(emailLink).toHaveClass("focus:ring-2");
expect(emailLink).toHaveClass( expect(emailLink).toHaveClass("focus:ring-offset-2");
"focus:ring-[var(--color-content-default-primary)]" expect(emailLink).toHaveClass(
); "focus:ring-[var(--color-content-default-primary)]"
expect(emailLink).toHaveClass( );
"focus:ring-offset-[var(--color-surface-default-primary)]" expect(emailLink).toHaveClass(
); "focus:ring-offset-[var(--color-surface-default-primary)]"
);
});
// Check social media links // Check social media links
[blueskyLink, gitlabLink].forEach((link) => { [blueskyLink, gitlabLink].forEach((link) => {
+7 -14
View File
@@ -1,29 +1,22 @@
const { defineConfig } = require("vitest/config"); import { defineConfig } from "vitest/config";
const react = require("@vitejs/plugin-react"); import react from "@vitejs/plugin-react";
module.exports = defineConfig({ export default defineConfig({
plugins: [ plugins: [react({ jsxRuntime: "automatic" })],
// Enables React transform
react({ jsxRuntime: "automatic" }),
],
// Key part: make .js be parsed as JSX *before* import-analysis
esbuild: { esbuild: {
jsx: "automatic", jsx: "automatic",
loader: "jsx", // default loader loader: "jsx",
include: /(?:^|\/)(app|components|pages|src|tests)\/.*\.[jt]sx?$/, // match your folders include: /\.[jt]sx?$/,
exclude: [/node_modules/], exclude: [/node_modules/],
}, },
test: { test: {
environment: "jsdom", environment: "jsdom",
setupFiles: ["./vitest.setup.ts"], // match your actual filename setupFiles: ["./vitest.setup.ts"],
include: [ include: [
"tests/unit/**/*.test.{js,jsx,ts,tsx}", "tests/unit/**/*.test.{js,jsx,ts,tsx}",
"tests/integration/**/*.test.{js,jsx,ts,tsx}", "tests/integration/**/*.test.{js,jsx,ts,tsx}",
], ],
css: true, css: true,
transformMode: { web: [/\.[jt]sx?$/] }, // ensure web transform for JSX
coverage: { coverage: {
provider: "v8", provider: "v8",
reporter: ["text", "lcov"], reporter: ["text", "lcov"],