From b508f3e993eea6d656bacdfcf3cb8440431a40c2 Mon Sep 17 00:00:00 2001 From: levinqdl Date: Mon, 25 Mar 2019 20:06:57 +0800 Subject: [PATCH 1/5] Fix requireActual fail with moduleNameMapper --- .../__snapshots__/moduleNameMapper.test.ts.snap | 2 +- .../resolveNoFileExtensions.test.ts.snap | 2 +- packages/jest-resolve/src/index.ts | 8 +++----- .../src/__tests__/runtime_require_actual.test.js | 13 +++++++++++++ 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/e2e/__tests__/__snapshots__/moduleNameMapper.test.ts.snap b/e2e/__tests__/__snapshots__/moduleNameMapper.test.ts.snap index 35faae772b9c..86fa29655c31 100644 --- a/e2e/__tests__/__snapshots__/moduleNameMapper.test.ts.snap +++ b/e2e/__tests__/__snapshots__/moduleNameMapper.test.ts.snap @@ -30,6 +30,6 @@ FAIL __tests__/index.js 12 | module.exports = () => 'test'; 13 | - at createNoMappedModuleFoundError (../../packages/jest-resolve/build/index.js:473:17) + at createNoMappedModuleFoundError (../../packages/jest-resolve/build/index.js:471:17) at Object.require (index.js:10:1) `; diff --git a/e2e/__tests__/__snapshots__/resolveNoFileExtensions.test.ts.snap b/e2e/__tests__/__snapshots__/resolveNoFileExtensions.test.ts.snap index e71f3bc23997..131e4b0ba283 100644 --- a/e2e/__tests__/__snapshots__/resolveNoFileExtensions.test.ts.snap +++ b/e2e/__tests__/__snapshots__/resolveNoFileExtensions.test.ts.snap @@ -33,6 +33,6 @@ FAIL __tests__/test.js | ^ 4 | - at Resolver.resolveModule (../../packages/jest-resolve/build/index.js:231:17) + at Resolver.resolveModule (../../packages/jest-resolve/build/index.js:229:17) at Object.require (index.js:3:18) `; diff --git a/packages/jest-resolve/src/index.ts b/packages/jest-resolve/src/index.ts index 857325fc8d85..169cccb0cc33 100644 --- a/packages/jest-resolve/src/index.ts +++ b/packages/jest-resolve/src/index.ts @@ -195,11 +195,9 @@ class Resolver { options?: Resolver.ResolveModuleConfig, ): Config.Path { const dirname = path.dirname(from); - const module = this.resolveModuleFromDirIfExists( - dirname, - moduleName, - options, - ); + const module = + this.resolveStubModuleName(from, moduleName) || + this.resolveModuleFromDirIfExists(dirname, moduleName, options); if (module) return module; // 5. Throw an error if the module could not be found. `resolve.sync` only diff --git a/packages/jest-runtime/src/__tests__/runtime_require_actual.test.js b/packages/jest-runtime/src/__tests__/runtime_require_actual.test.js index 22510ab3e57d..a67f92fe1213 100644 --- a/packages/jest-runtime/src/__tests__/runtime_require_actual.test.js +++ b/packages/jest-runtime/src/__tests__/runtime_require_actual.test.js @@ -23,4 +23,17 @@ describe('Runtime requireActual', () => { ); expect(exports.isManualMockModule).toBe(false); })); + + test('requireActual with moduleNameMapper', () => + createRuntime(__filename, { + moduleNameMapper: { + '^testMapped/(.*)': '/mapped_dir/$1', + }, + }).then(runtime => { + const exports = runtime.requireActual( + runtime.__mockRootPath, + 'testMapped/moduleInMapped', + ); + expect(exports).toBe('in_mapped'); + })); }); From d03300c3980b5d8a4c3c0b631097d070fb4e0aad Mon Sep 17 00:00:00 2001 From: levinqdl Date: Mon, 25 Mar 2019 20:36:46 +0800 Subject: [PATCH 2/5] update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 91a342f13fde..ba79ef47186a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,7 @@ - `[jest-resolve-dependencies]`: Remove internal peer dependencies ([#8215](https://github.com/facebook/jest/pull/8215)) - `[jest-resolve]`: Remove internal peer dependencies ([#8215](https://github.com/facebook/jest/pull/8215)) - `[jest-snapshot]`: Remove internal peer dependencies ([#8215](https://github.com/facebook/jest/pull/8215)) +- `[jest-resolve]` Fix requireActual with moduleNameMapper ([#7981](https://github.com/facebook/jest/issues/7981)) ### Chore & Maintenance From 3b005bc6514ee58f8419b82ef1c9b46904b92b41 Mon Sep 17 00:00:00 2001 From: levinqdl Date: Tue, 26 Mar 2019 09:43:01 +0800 Subject: [PATCH 3/5] update PR link --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ba79ef47186a..170fc2b693ab 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,6 +27,7 @@ - `[jest-resolve]`: Remove internal peer dependencies ([#8215](https://github.com/facebook/jest/pull/8215)) - `[jest-snapshot]`: Remove internal peer dependencies ([#8215](https://github.com/facebook/jest/pull/8215)) - `[jest-resolve]` Fix requireActual with moduleNameMapper ([#7981](https://github.com/facebook/jest/issues/7981)) +- `[jest-resolve]` Fix requireActual with moduleNameMapper ([#7981](https://github.com/facebook/jest/pull/8210)) ### Chore & Maintenance From 883773e2f5458d5389db0b36545bfc5306667ef1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Pierzcha=C5=82a?= Date: Tue, 26 Mar 2019 11:38:25 +0100 Subject: [PATCH 4/5] fix PR number --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 170fc2b693ab..4d8ab062e7f2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -28,6 +28,7 @@ - `[jest-snapshot]`: Remove internal peer dependencies ([#8215](https://github.com/facebook/jest/pull/8215)) - `[jest-resolve]` Fix requireActual with moduleNameMapper ([#7981](https://github.com/facebook/jest/issues/7981)) - `[jest-resolve]` Fix requireActual with moduleNameMapper ([#7981](https://github.com/facebook/jest/pull/8210)) +- `[jest-resolve]` Fix requireActual with moduleNameMapper ([#8210](https://github.com/facebook/jest/pull/8210)) ### Chore & Maintenance From 8bcdffbd53b19132f9b545feac9d5400be7759a5 Mon Sep 17 00:00:00 2001 From: levinqdl Date: Wed, 27 Mar 2019 11:10:29 +0800 Subject: [PATCH 5/5] fix CHANGELOG --- CHANGELOG.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4d8ab062e7f2..7b9af485332e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,8 +26,6 @@ - `[jest-resolve-dependencies]`: Remove internal peer dependencies ([#8215](https://github.com/facebook/jest/pull/8215)) - `[jest-resolve]`: Remove internal peer dependencies ([#8215](https://github.com/facebook/jest/pull/8215)) - `[jest-snapshot]`: Remove internal peer dependencies ([#8215](https://github.com/facebook/jest/pull/8215)) -- `[jest-resolve]` Fix requireActual with moduleNameMapper ([#7981](https://github.com/facebook/jest/issues/7981)) -- `[jest-resolve]` Fix requireActual with moduleNameMapper ([#7981](https://github.com/facebook/jest/pull/8210)) - `[jest-resolve]` Fix requireActual with moduleNameMapper ([#8210](https://github.com/facebook/jest/pull/8210)) ### Chore & Maintenance