Skip to content

Commit c8418df

Browse files
mmkalSimenBjeysal
authored
feat: make prettier optional for inline snapshots (#7792)
Co-authored-by: Simen Bekkhus <sbekkhus91@gmail.com> Co-authored-by: Tim Seckinger <seckinger.tim@gmail.com>
1 parent a752ba1 commit c8418df

File tree

13 files changed

+469
-251
lines changed

13 files changed

+469
-251
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
- `[jest-config]` [**BREAKING**] Default to Node testing environment instead of browser (JSDOM) ([#9874](https://github.com/facebook/jest/pull/9874))
66
- `[jest-runner]` [**BREAKING**] set exit code to 1 if test logs after teardown ([#10728](https://github.com/facebook/jest/pull/10728))
7+
- `[jest-snapshot]`: [**BREAKING**] Make prettier optional for inline snapshots - fall back to string replacement ([#7792](https://github.com/facebook/jest/pull/7792))
78

89
### Fixes
910

packages/babel-plugin-jest-hoist/src/__tests__/__snapshots__/hoistPlugin.test.ts.snap

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@ _getJestObj().mock("./App", () => () =>
1212
/*#__PURE__*/ _jsxDEV(
1313
"div",
1414
{
15-
children: "Hello world"
15+
children: "Hello world",
1616
},
1717
void 0,
1818
false,
1919
{
2020
fileName: _jsxFileName,
2121
lineNumber: 1,
22-
columnNumber: 32
22+
columnNumber: 32,
2323
},
2424
this
2525
)

packages/jest-circus/package.json

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,9 @@
1515
"./runner": "./runner.js"
1616
},
1717
"dependencies": {
18-
"@babel/traverse": "^7.1.0",
1918
"@jest/environment": "^26.6.2",
2019
"@jest/test-result": "^26.6.2",
2120
"@jest/types": "^26.6.2",
22-
"@types/babel__traverse": "^7.0.4",
2321
"@types/node": "*",
2422
"chalk": "^4.0.0",
2523
"co": "^4.6.0",
@@ -41,7 +39,6 @@
4139
"@babel/core": "^7.1.0",
4240
"@babel/register": "^7.0.0",
4341
"@jest/test-utils": "^26.6.2",
44-
"@types/babel__traverse": "^7.0.4",
4542
"@types/co": "^4.6.0",
4643
"@types/dedent": "^0.7.0",
4744
"@types/graceful-fs": "^4.1.3",

packages/jest-circus/src/legacy-code-todo-rewrite/jestAdapter.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,9 @@ const jestAdapter = async (
3030
FRAMEWORK_INITIALIZER,
3131
);
3232

33-
const getPrettier = () =>
34-
config.prettierPath ? require(config.prettierPath) : null;
35-
const getBabelTraverse = () => require('@babel/traverse').default;
36-
3733
const {globals, snapshotState} = await initialize({
3834
config,
3935
environment,
40-
getBabelTraverse,
41-
getPrettier,
4236
globalConfig,
4337
localRequire: runtime.requireModule.bind(runtime),
4438
parentProcess: process,

packages/jest-circus/src/legacy-code-todo-rewrite/jestAdapterInit.ts

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
* LICENSE file in the root directory of this source tree.
66
*/
77

8-
import type BabelTraverse from '@babel/traverse';
98
import throat from 'throat';
109
import type {JestEnvironment} from '@jest/environment';
1110
import {
@@ -46,8 +45,6 @@ interface JestGlobals extends Global.TestFrameworkGlobals {
4645
export const initialize = async ({
4746
config,
4847
environment,
49-
getPrettier,
50-
getBabelTraverse,
5148
globalConfig,
5249
localRequire,
5350
parentProcess,
@@ -57,8 +54,6 @@ export const initialize = async ({
5754
}: {
5855
config: Config.ProjectConfig;
5956
environment: JestEnvironment;
60-
getPrettier: () => null | any;
61-
getBabelTraverse: () => typeof BabelTraverse;
6257
globalConfig: Config.GlobalConfig;
6358
localRequire: <T = unknown>(path: Config.Path) => T;
6459
testPath: Config.Path;
@@ -162,8 +157,7 @@ export const initialize = async ({
162157
const snapshotPath = snapshotResolver.resolveSnapshotPath(testPath);
163158
const snapshotState = new SnapshotState(snapshotPath, {
164159
expand,
165-
getBabelTraverse,
166-
getPrettier,
160+
prettierPath: config.prettierPath,
167161
updateSnapshot,
168162
});
169163
// @ts-expect-error: snapshotState is a jest extension of `expect`

packages/jest-jasmine2/src/setup_jest_globals.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,13 +106,12 @@ export default ({
106106

107107
patchJasmine();
108108
const {expand, updateSnapshot} = globalConfig;
109+
const {prettierPath} = config;
109110
const snapshotResolver = buildSnapshotResolver(config);
110111
const snapshotPath = snapshotResolver.resolveSnapshotPath(testPath);
111112
const snapshotState = new SnapshotState(snapshotPath, {
112113
expand,
113-
getBabelTraverse: () => require('@babel/traverse').default,
114-
getPrettier: () =>
115-
config.prettierPath ? require(config.prettierPath) : null,
114+
prettierPath,
116115
updateSnapshot,
117116
});
118117
// @ts-expect-error: snapshotState is a jest extension of `expect`

packages/jest-snapshot/package.json

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,15 @@
1414
"./package.json": "./package.json"
1515
},
1616
"dependencies": {
17+
"@babel/generator": "^7.7.2",
18+
"@babel/parser": "^7.7.2",
19+
"@babel/plugin-syntax-typescript": "^7.7.2",
20+
"@babel/traverse": "^7.7.2",
1721
"@babel/types": "^7.0.0",
1822
"@jest/types": "^26.6.2",
1923
"@types/babel__traverse": "^7.0.4",
20-
"@types/prettier": "^2.0.0",
24+
"@types/prettier": "^2.1.5",
25+
"babel-preset-current-node-syntax": "^1.0.0",
2126
"chalk": "^4.0.0",
2227
"expect": "^26.6.2",
2328
"graceful-fs": "^4.2.4",
@@ -32,14 +37,25 @@
3237
"semver": "^7.3.2"
3338
},
3439
"devDependencies": {
40+
"@babel/core": "^7.7.2",
41+
"@babel/preset-flow": "^7.7.2",
42+
"@babel/preset-react": "^7.7.2",
3543
"@babel/traverse": "^7.3.4",
3644
"@jest/test-utils": "^26.6.2",
3745
"@types/graceful-fs": "^4.1.3",
3846
"@types/natural-compare": "^1.4.0",
3947
"@types/semver": "^7.1.0",
4048
"ansi-regex": "^5.0.0",
4149
"ansi-styles": "^4.2.0",
42-
"prettier": "^1.19.1"
50+
"prettier": "^2.0.0"
51+
},
52+
"peerDependencies": {
53+
"@babel/core": "^7.7.2"
54+
},
55+
"peerDependenciesMeta": {
56+
"@babel/core": {
57+
"optional": true
58+
}
4359
},
4460
"engines": {
4561
"node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"

0 commit comments

Comments
 (0)