From 719cc87d2f2183a6595c60fe8d14b30a50e44188 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Sat, 20 Nov 2021 11:24:08 +0100 Subject: [PATCH 1/2] cli: disable ES transform in tests Signed-off-by: Patrik Oldsberg --- .changeset/large-mugs-repair.md | 5 +++++ packages/cli/config/jestSucraseTransform.js | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 .changeset/large-mugs-repair.md diff --git a/.changeset/large-mugs-repair.md b/.changeset/large-mugs-repair.md new file mode 100644 index 0000000000..5043fb80e1 --- /dev/null +++ b/.changeset/large-mugs-repair.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Disable ES transforms in tests transformed by the `jestSucraseTransform.js`. This is not considered a breaking change since all code is already transpiled this way in the development setup. diff --git a/packages/cli/config/jestSucraseTransform.js b/packages/cli/config/jestSucraseTransform.js index 01acfee38d..c88909d21f 100644 --- a/packages/cli/config/jestSucraseTransform.js +++ b/packages/cli/config/jestSucraseTransform.js @@ -46,7 +46,11 @@ function process(source, filePath) { } if (transforms) { - return transform(source, { transforms, filePath }).code; + return transform(source, { + transforms, + filePath, + disableESTransforms: true, + }).code; } return source; From dde216acf4317c13f3a21fbed5483d068391d565 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Sat, 20 Nov 2021 11:32:22 +0100 Subject: [PATCH 2/2] cli: switch to v8 coverage provider Signed-off-by: Patrik Oldsberg --- .changeset/giant-bees-applaud.md | 5 +++++ packages/cli/config/jest.js | 1 + 2 files changed, 6 insertions(+) create mode 100644 .changeset/giant-bees-applaud.md diff --git a/.changeset/giant-bees-applaud.md b/.changeset/giant-bees-applaud.md new file mode 100644 index 0000000000..c4591dbc64 --- /dev/null +++ b/.changeset/giant-bees-applaud.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Switch the default test coverage provider from the jest default one to `'v8'`, which provides much better coverage information when using the default Backstage test setup. This is considered a bug fix as the current coverage information is often very inaccurate. diff --git a/packages/cli/config/jest.js b/packages/cli/config/jest.js index e889d23c3a..1d33372c60 100644 --- a/packages/cli/config/jest.js +++ b/packages/cli/config/jest.js @@ -95,6 +95,7 @@ async function getProjectConfig(targetPath, displayName) { ...(displayName && { displayName }), rootDir: path.resolve(targetPath, 'src'), coverageDirectory: path.resolve(targetPath, 'coverage'), + coverageProvider: 'v8', collectCoverageFrom: ['**/*.{js,jsx,ts,tsx}', '!**/*.d.ts'], moduleNameMapper: { '\\.(css|less|scss|sss|styl)$': require.resolve('jest-css-modules'),