1
0
Fork 0
mirror of synced 2024-07-11 01:06:04 +12:00
budibase/packages/server/jest.config.ts

54 lines
1.4 KiB
TypeScript
Raw Normal View History

import { Config } from "jest"
2023-02-01 23:57:05 +13:00
import * as fs from "fs"
const preset = require("ts-jest/jest-preset")
2023-02-01 23:57:05 +13:00
const testContainersSettings = {
...preset,
preset: "@trendyol/jest-testcontainers",
setupFiles: ["./src/tests/jestEnv.ts"],
setupFilesAfterEnv: ["./src/tests/jestSetup.ts"],
2023-02-02 00:02:29 +13:00
transform: {
"^.+\\.ts?$": "@swc/jest",
},
}
if (!process.env.CI) {
// use sources when not in CI
testContainersSettings.moduleNameMapper = {
"@budibase/backend-core/(.*)": "<rootDir>/../backend-core/$1",
"@budibase/backend-core": "<rootDir>/../backend-core/src",
"@budibase/types": "<rootDir>/../types/src",
}
// add pro sources if they exist
if (fs.existsSync("../../../budibase-pro")) {
testContainersSettings.moduleNameMapper["@budibase/pro"] =
"<rootDir>/../../../budibase-pro/packages/pro/src"
}
} else {
console.log("Running tests with compiled dependency sources")
2023-02-01 23:57:05 +13:00
}
const config: Config = {
projects: [
{
...testContainersSettings,
displayName: "sequential test",
testMatch: ["<rootDir>/**/*.seq.spec.[jt]s"],
runner: "jest-serial-runner",
},
{
...testContainersSettings,
testMatch: ["<rootDir>/**/!(*.seq).spec.[jt]s"],
},
],
collectCoverageFrom: [
"src/**/*.{js,ts}",
// The use of coverage with couchdb view functions breaks tests
"!src/db/views/staticViews.*",
],
coverageReporters: ["lcov", "json", "clover"],
2023-01-27 00:38:21 +13:00
}
export default config