Skip to content

Commit 0927834

Browse files
authored
fix dependency issues (#11465)
1 parent 4cae680 commit 0927834

File tree

12 files changed

+24
-6
lines changed

12 files changed

+24
-6
lines changed

CHANGELOG.md

+2
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@
88

99
### Fixes
1010

11+
- `[jest-circus]` Add missing `slash` dependency ([#11465](https://github.com/facebook/jest/pull/11465))
1112
- `[jest-circus, @jest/test-sequencer]` Remove dependency on `jest-runner` ([#11466](https://github.com/facebook/jest/pull/11466))
13+
- `[jest-config]` Resolve `config.runner` to absolute path ([#11465](https://github.com/facebook/jest/pull/11465))
1214
- `[jest-core]` Do not warn about `DNSCHANNEL` handles when using the `--detectOpenHandles` option ([#11470](https://github.com/facebook/jest/pull/11470))
1315
- `[jest-runner]` Remove dependency on `jest-config` ([#11466](https://github.com/facebook/jest/pull/11466))
1416
- `[jest-worker]` Loosen engine requirement to `>= 10.13.0` ([#11451](https://github.com/facebook/jest/pull/11451))

e2e/__tests__/__snapshots__/showConfig.test.ts.snap

+1-1
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ exports[`--showConfig outputs config info and exits 1`] = `
4848
"roots": [
4949
"<<REPLACED_ROOT_DIR>>"
5050
],
51-
"runner": "jest-runner",
51+
"runner": "<<REPLACED_JEST_PACKAGES_DIR>>/jest-runner/build/index.js",
5252
"setupFiles": [],
5353
"setupFilesAfterEnv": [],
5454
"skipFilter": false,

packages/jest-circus/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
"jest-snapshot": "^27.0.1",
3232
"jest-util": "^27.0.1",
3333
"pretty-format": "^27.0.1",
34+
"slash": "^3.0.0",
3435
"stack-utils": "^2.0.3",
3536
"throat": "^6.0.1"
3637
},

packages/jest-config/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
"jest-jasmine2": "^27.0.1",
3939
"jest-regex-util": "^27.0.1",
4040
"jest-resolve": "^27.0.1",
41+
"jest-runner": "^27.0.1",
4142
"jest-util": "^27.0.1",
4243
"jest-validate": "^27.0.1",
4344
"micromatch": "^4.0.4",

packages/jest-config/src/__tests__/normalize.test.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1401,7 +1401,7 @@ describe('runner', () => {
14011401
it('defaults to `jest-runner`', async () => {
14021402
const {options} = await normalize({rootDir: '/root'}, {} as Config.Argv);
14031403

1404-
expect(options.runner).toBe('jest-runner');
1404+
expect(options.runner).toBe(require.resolve('jest-runner'));
14051405
});
14061406

14071407
it('resolves to runners that do not have the prefix', async () => {

packages/jest-config/src/normalize.ts

+4
Original file line numberDiff line numberDiff line change
@@ -1058,6 +1058,10 @@ export default async function normalize(
10581058
rootDir: options.rootDir,
10591059
});
10601060

1061+
if (newOptions.runner === DEFAULT_CONFIG.runner) {
1062+
newOptions.runner = require.resolve(newOptions.runner);
1063+
}
1064+
10611065
newOptions.nonFlagArgs = argv._?.map(arg => `${arg}`);
10621066
newOptions.testPathPattern = buildTestPathPattern(argv);
10631067
newOptions.json = !!argv.json;

packages/jest-config/tsconfig.json

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
{"path": "../jest-get-type"},
1414
{"path": "../jest-regex-util"},
1515
{"path": "../jest-resolve"},
16+
{"path": "../jest-runner"},
1617
{"path": "../jest-types"},
1718
{"path": "../jest-util"},
1819
{"path": "../jest-validate"},

packages/jest-core/src/__tests__/runJest.test.js

+4-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,10 @@ describe('runJest', () => {
2121
await runJest({
2222
changedFilesPromise: Promise.resolve({repos: {git: {size: 0}}}),
2323
contexts: [],
24-
globalConfig: {testSequencer: '@jest/test-sequencer', watch: true},
24+
globalConfig: {
25+
testSequencer: require.resolve('@jest/test-sequencer'),
26+
watch: true,
27+
},
2528
onComplete: () => null,
2629
outputStream: {},
2730
startRun: {},

packages/jest-runner/src/runTest.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,9 @@ async function runTestInternal(
109109
await transformer.requireAndTranspileModule(testEnvironment);
110110
const testFramework: TestFramework =
111111
await transformer.requireAndTranspileModule(
112-
process.env.JEST_JASMINE === '1' ? 'jest-jasmine2' : config.testRunner,
112+
process.env.JEST_JASMINE === '1'
113+
? require.resolve('jest-jasmine2')
114+
: config.testRunner,
113115
);
114116
const Runtime: typeof RuntimeClass = interopRequireDefault(
115117
config.moduleLoader

packages/jest-types/src/Config.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ export type DefaultOptions = {
9898
restoreMocks: boolean;
9999
roots: Array<Path>;
100100
runTestsByPath: boolean;
101-
runner: 'jest-runner';
101+
runner: string;
102102
setupFiles: Array<Path>;
103103
setupFilesAfterEnv: Array<Path>;
104104
skipFilter: boolean;

packages/jest-util/src/requireOrImportModule.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@ export default async function requireOrImportModule<T>(
1515
applyInteropRequireDefault = true,
1616
): Promise<T> {
1717
if (!isAbsolute(filePath) && filePath[0] === '.') {
18-
throw new Error(`Jest: requireOrImportModule path must be absolute`);
18+
throw new Error(
19+
`Jest: requireOrImportModule path must be absolute, was "${filePath}"`,
20+
);
1921
}
2022
try {
2123
const requiredModule = require(filePath);

yarn.lock

+2
Original file line numberDiff line numberDiff line change
@@ -13266,6 +13266,7 @@ fsevents@^1.2.7:
1326613266
jest-snapshot-serializer-raw: ^1.1.0
1326713267
jest-util: ^27.0.1
1326813268
pretty-format: ^27.0.1
13269+
slash: ^3.0.0
1326913270
stack-utils: ^2.0.3
1327013271
throat: ^6.0.1
1327113272
languageName: unknown
@@ -13327,6 +13328,7 @@ fsevents@^1.2.7:
1332713328
jest-jasmine2: ^27.0.1
1332813329
jest-regex-util: ^27.0.1
1332913330
jest-resolve: ^27.0.1
13331+
jest-runner: ^27.0.1
1333013332
jest-snapshot-serializer-raw: ^1.1.0
1333113333
jest-util: ^27.0.1
1333213334
jest-validate: ^27.0.1

0 commit comments

Comments
 (0)