Skip to content

Commit 50e57e0

Browse files
ianschmitzjustinsilvestre
authored andcommitted
Upgrade to Jest 26 (facebook#8955)
* Update Jest to 26 * Upgrade to Jest 26.0.1 * Use jest-circus test runner by default * Try resolving test runner to fix behavior tests * Run TypeScript verification in new context * Delete globalThis if polyfilled
1 parent 144c12d commit 50e57e0

File tree

11 files changed

+613
-586
lines changed

11 files changed

+613
-586
lines changed

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
"get-port": "^5.1.1",
3131
"globby": "^11.0.0",
3232
"husky": "^4.2.5",
33-
"jest": "25.5.4",
33+
"jest": "26.0.1",
3434
"lerna": "3.20.2",
3535
"lerna-changelog": "~0.8.2",
3636
"lint-staged": "^10.2.2",

packages/babel-plugin-named-asset-import/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
},
2121
"devDependencies": {
2222
"babel-plugin-tester": "^8.0.1",
23-
"jest": "25.5.4"
23+
"jest": "26.0.1"
2424
},
2525
"scripts": {
2626
"test": "jest"

packages/confusing-browser-globals/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,6 @@
2020
"index.js"
2121
],
2222
"devDependencies": {
23-
"jest": "25.5.4"
23+
"jest": "26.0.1"
2424
}
2525
}

packages/create-react-app/yarn.lock.cached

+591-574
Large diffs are not rendered by default.

packages/react-dev-utils/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@
7979
},
8080
"devDependencies": {
8181
"cross-env": "^7.0.2",
82-
"jest": "25.5.4"
82+
"jest": "26.0.1"
8383
},
8484
"scripts": {
8585
"test": "cross-env FORCE_COLOR=true jest"

packages/react-error-overlay/package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
"@babel/core": "7.10.1",
3939
"anser": "1.4.9",
4040
"babel-eslint": "10.1.0",
41-
"babel-jest": "^25.2.6",
41+
"babel-jest": "^26.0.1",
4242
"babel-loader": "8.1.0",
4343
"babel-preset-react-app": "^9.1.2",
4444
"chalk": "2.4.2",
@@ -52,7 +52,7 @@
5252
"eslint-plugin-react": "7.20.0",
5353
"flow-bin": "^0.116.0",
5454
"html-entities": "1.3.1",
55-
"jest": "25.5.4",
55+
"jest": "26.0.1",
5656
"jest-fetch-mock": "2.1.2",
5757
"object-assign": "4.1.1",
5858
"promise": "8.1.0",

packages/react-scripts/fixtures/kitchensink/template.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"package": {
33
"dependencies": {
44
"bootstrap": "4.3.1",
5-
"jest": "25.5.4",
5+
"jest": "26.0.1",
66
"node-sass": "4.x",
77
"normalize.css": "7.0.0",
88
"prop-types": "15.7.2",

packages/react-scripts/package.json

+5-4
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
"@typescript-eslint/eslint-plugin": "^2.10.0",
3636
"@typescript-eslint/parser": "^2.10.0",
3737
"babel-eslint": "10.1.0",
38-
"babel-jest": "^25.2.6",
38+
"babel-jest": "^26.0.1",
3939
"babel-loader": "8.1.0",
4040
"babel-plugin-named-asset-import": "^0.3.6",
4141
"babel-preset-react-app": "^9.1.2",
@@ -57,9 +57,10 @@
5757
"fs-extra": "^9.0.0",
5858
"html-webpack-plugin": "4.3.0",
5959
"identity-obj-proxy": "3.0.0",
60-
"jest": "25.5.4",
61-
"jest-resolve": "25.5.1",
62-
"jest-watch-typeahead": "0.5.0",
60+
"jest": "26.0.1",
61+
"jest-circus": "26.0.1",
62+
"jest-resolve": "26.0.1",
63+
"jest-watch-typeahead": "0.6.0",
6364
"mini-css-extract-plugin": "0.9.0",
6465
"optimize-css-assets-webpack-plugin": "5.0.3",
6566
"pnp-webpack-plugin": "1.6.4",

packages/react-scripts/scripts/utils/createJestConfig.js

+1
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ module.exports = (resolve, rootDir, isEjecting) => {
3939
'<rootDir>/src/**/*.{spec,test}.{js,jsx,ts,tsx}',
4040
],
4141
testEnvironment: 'jsdom',
42+
testRunner: require.resolve('jest-circus/runner'),
4243
transform: {
4344
'^.+\\.(js|jsx|mjs|cjs|ts|tsx)$': isEjecting
4445
? '<rootDir>/node_modules/babel-jest'

packages/react-scripts/scripts/utils/verifyTypeScriptSetup.js

+8
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,17 @@ function verifyTypeScriptSetup() {
5959
// Ensure typescript is installed
6060
let ts;
6161
try {
62+
// TODO: Remove this hack once `globalThis` issue is resolved
63+
// https://github.com/jsdom/jsdom/issues/2961
64+
const globalThisWasDefined = !!global.globalThis;
65+
6266
ts = require(resolve.sync('typescript', {
6367
basedir: paths.appNodeModules,
6468
}));
69+
70+
if (!globalThisWasDefined && !!global.globalThis) {
71+
delete global.globalThis;
72+
}
6573
} catch (_) {
6674
console.error(
6775
chalk.bold.red(

test/fixtures/jsconfig/src/App.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ export default class App extends Component {
3232
render() {
3333
return (
3434
<div>
35-
{this.state.users.map((user) => (
35+
{this.state.users.map(user => (
3636
<div key={user.id}>{user.name}</div>
3737
))}
3838
</div>

0 commit comments

Comments
 (0)