- Add swc dependencies - Add transform change to jest.config.ts - Replace `export =` with `export default` in src code to enable code coverage to work with swc transformer - Restructure backend-core errors package to allow for exporting error classes with ESM syntax - Update backend-core to no longer use `export =`, export individual packages instead of replacing with `export default` for backwards compatibility - Update event publishers to use `export default` - this was required for the `jest.spyOn` usage inside backend-core common mocks - Restructure some jest.mock usages where declaring the jest.fn as a variable outside of the package mock threw an error
24 lines
612 B
TypeScript
24 lines
612 B
TypeScript
import { Config } from "@jest/types"
|
|
|
|
const config: Config.InitialOptions = {
|
|
preset: "ts-jest",
|
|
testEnvironment: "node",
|
|
setupFiles: ["./tests/jestSetup.ts"],
|
|
collectCoverageFrom: ["src/**/*.{js,ts}"],
|
|
coverageReporters: ["lcov", "json", "clover"],
|
|
transform: {
|
|
"^.+\\.ts?$": "@swc/jest",
|
|
},
|
|
}
|
|
|
|
if (!process.env.CI) {
|
|
// use sources when not in CI
|
|
config.moduleNameMapper = {
|
|
"@budibase/types": "<rootDir>/../types/src",
|
|
"^axios.*$": "<rootDir>/node_modules/axios/lib/axios.js",
|
|
}
|
|
} else {
|
|
console.log("Running tests with compiled dependency sources")
|
|
}
|
|
|
|
export default config
|