From 2ceb7bf6d97095ee609bf5acb31b3f5ca4dc1ddf Mon Sep 17 00:00:00 2001 From: volkanceylan Date: Sun, 13 Oct 2024 15:18:28 +0300 Subject: [PATCH] Add a workaround for jest/swc .css issue --- build/test-utils/entitydialogutils.ts | 2 +- build/test-utils/jest-css-workaround.cjs | 7 +++++++ build/test-utils/jest-defaults.js | 11 ++++++----- 3 files changed, 14 insertions(+), 6 deletions(-) create mode 100644 build/test-utils/jest-css-workaround.cjs diff --git a/build/test-utils/entitydialogutils.ts b/build/test-utils/entitydialogutils.ts index 3aebf02..f49d53d 100644 --- a/build/test-utils/entitydialogutils.ts +++ b/build/test-utils/entitydialogutils.ts @@ -1,7 +1,7 @@ import { EntityDialog } from "@serenity-is/corelib"; import { waitForAjaxRequests } from "./waitutils"; -export class EntityDialogTestWrapper> { +export class EntityDialogWrapper> { constructor(public readonly actual: TDialog) { } diff --git a/build/test-utils/jest-css-workaround.cjs b/build/test-utils/jest-css-workaround.cjs new file mode 100644 index 0000000..b727b92 --- /dev/null +++ b/build/test-utils/jest-css-workaround.cjs @@ -0,0 +1,7 @@ +module.exports = { + process() { + return { + code: `module.exports = "";`, + }; + } +}; \ No newline at end of file diff --git a/build/test-utils/jest-defaults.js b/build/test-utils/jest-defaults.js index 0dbdeeb..d9c1bb9 100644 --- a/build/test-utils/jest-defaults.js +++ b/build/test-utils/jest-defaults.js @@ -1,8 +1,8 @@ import { join, resolve } from "path"; import { fileURLToPath } from 'url'; -const configRoot = resolve(join(fileURLToPath(new URL('.', import.meta.url)), './')); -const serenityNodeModules = resolve(join(configRoot, "../../../Serenity")); +const testUtils = resolve(join(fileURLToPath(new URL('.', import.meta.url)), './')); +const serenityNodeModules = resolve(join(testUtils, "../../../Serenity")); export default () => ({ coveragePathIgnorePatterns: [ @@ -14,17 +14,18 @@ export default () => ({ "^@serenity-is/(.*)$": ["/node_modules/@serenity-is/$1", "/../node_modules/@serenity-is/$1", "/../../node_modules/@serenity-is/$1"] }, setupFiles: [ - `${configRoot}/jest-setup.js`, + `${testUtils}/jest-setup.js`, ], setupFilesAfterEnv: [ - `${configRoot}/jest-setup-afterenv.js` + `${testUtils}/jest-setup-afterenv.js` ], - testEnvironment: `${configRoot}/jsdom-global.js`, + testEnvironment: `${testUtils}/jsdom-global.js`, testMatch: [ "/test/**/*.spec.ts*", "/src/**/*.spec.ts*" ], transform: { + '\\.css$': `${testUtils}/jest-css-workaround.cjs`, "^.+\.(t|j)sx?$": [`${serenityNodeModules}/node_modules/@swc/jest`, { jsc: { parser: {