From e343325983dad5eb9423ba21c12647e33f58fcff Mon Sep 17 00:00:00 2001 From: Anthony Costa Date: Mon, 13 Jun 2022 13:58:25 -0400 Subject: [PATCH 1/3] Add react-app-rewired support --- Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js b/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js index 82ede23f8..70a2ad5c6 100644 --- a/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js +++ b/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js @@ -129,6 +129,12 @@ function readConfigs(projectFolder, context) const pathToReactConfig = path.join(projectFolder, 'node_modules/react-scripts/scripts/utils/createJestConfig.js'); if(fs.existsSync(pathToReactConfig)) { + const pathToReactAppRewired = path.join(projectFolder, 'node_modules/react-app-rewired/overrides/jest.js'); + if (fs.existsSync(pathToReactAppRewired)) { + // Support react-app-rewired. This overrides the normal createJestConfig + require(pathToReactAppRewired); + } + const createJestConfig = require(pathToReactConfig); config = createJestConfig( relativePath => path.join(projectFolder, 'node_modules/react-scripts/', relativePath), From 6f399be89e98539d4b5fbb068d62d371ebb52542 Mon Sep 17 00:00:00 2001 From: Anthony Costa Date: Wed, 27 Jul 2022 09:54:15 -0400 Subject: [PATCH 2/3] Load config-overrides manually if present --- .../TestAdapter/TestFrameworks/Jest/jest.js | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js b/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js index 70a2ad5c6..d1937fa74 100644 --- a/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js +++ b/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js @@ -129,12 +129,6 @@ function readConfigs(projectFolder, context) const pathToReactConfig = path.join(projectFolder, 'node_modules/react-scripts/scripts/utils/createJestConfig.js'); if(fs.existsSync(pathToReactConfig)) { - const pathToReactAppRewired = path.join(projectFolder, 'node_modules/react-app-rewired/overrides/jest.js'); - if (fs.existsSync(pathToReactAppRewired)) { - // Support react-app-rewired. This overrides the normal createJestConfig - require(pathToReactAppRewired); - } - const createJestConfig = require(pathToReactConfig); config = createJestConfig( relativePath => path.join(projectFolder, 'node_modules/react-scripts/', relativePath), @@ -142,6 +136,16 @@ function readConfigs(projectFolder, context) false ); + const pathToReactAppRewired = path.join(projectFolder, 'node_modules/react-app-rewired'); + const pathToConfigOverrides = path.join(projectFolder, 'config-overrides.js'); + if (fs.existsSync(pathToReactAppRewired) && fs.existsSync(pathToConfigOverrides)) { + // Support react-app-rewired. This overrides the normal createJestConfig + const configOverrides = require(pathToConfigOverrides); + if (configOverrides && typeof configOverrides.jest === 'function') { + config = configOverrides.jest(config); + } + } + return config; } From 88c7357ca1a0cd4a2930dee9477186d3a30090c6 Mon Sep 17 00:00:00 2001 From: Anthony Costa Date: Wed, 27 Jul 2022 09:55:58 -0400 Subject: [PATCH 3/3] Fix whitespace --- .../Product/TestAdapter/TestFrameworks/Jest/jest.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js b/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js index d1937fa74..5ab4aecce 100644 --- a/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js +++ b/Nodejs/Product/TestAdapter/TestFrameworks/Jest/jest.js @@ -136,16 +136,16 @@ function readConfigs(projectFolder, context) false ); - const pathToReactAppRewired = path.join(projectFolder, 'node_modules/react-app-rewired'); - const pathToConfigOverrides = path.join(projectFolder, 'config-overrides.js'); + const pathToReactAppRewired = path.join(projectFolder, 'node_modules/react-app-rewired'); + const pathToConfigOverrides = path.join(projectFolder, 'config-overrides.js'); if (fs.existsSync(pathToReactAppRewired) && fs.existsSync(pathToConfigOverrides)) { // Support react-app-rewired. This overrides the normal createJestConfig const configOverrides = require(pathToConfigOverrides); - if (configOverrides && typeof configOverrides.jest === 'function') { - config = configOverrides.jest(config); - } + if (configOverrides && typeof configOverrides.jest === 'function') { + config = configOverrides.jest(config); + } } - + return config; }