Skip to content

Commit 09fa164

Browse files
authored
feat(jest-core, jest-watcher)!: move TestWatcher class to jest-watcher (#12652)
1 parent 051af02 commit 09fa164

File tree

20 files changed

+18
-30
lines changed

20 files changed

+18
-30
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#12620](https://github.com/facebook/jest/pull/12620))
1818
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#12440](https://github.com/facebook/jest/pull/12440))
1919
- `[jest-core]` Stabilize test runners with event emitters ([#12641](https://github.com/facebook/jest/pull/12641))
20+
- `[jest-core, jest-watcher]` [**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#12652](https://github.com/facebook/jest/pull/12652))
2021
- `[jest-environment-jsdom]` [**BREAKING**] Upgrade jsdom to 19.0.0 ([#12290](https://github.com/facebook/jest/pull/12290))
2122
- `[jest-environment-jsdom]` [**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#11924](https://github.com/facebook/jest/pull/11924))
2223
- `[jest-environment-jsdom]` [**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#12461](https://github.com/facebook/jest/pull/12461))

e2e/transform/transform-runner/runner.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ import type {
1313
OnTestStart,
1414
OnTestSuccess,
1515
TestRunnerContext,
16-
TestWatcher,
1716
} from 'jest-runner';
17+
import type {TestWatcher} from 'jest-watcher';
1818

1919
export default class BaseTestRunner {
2020
private _globalConfig: Config.GlobalConfig;

packages/jest-core/package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
"@types/node": "*",
2121
"ansi-escapes": "^4.2.1",
2222
"chalk": "^4.0.0",
23-
"emittery": "^0.10.2",
2423
"exit": "^0.1.2",
2524
"graceful-fs": "^4.2.9",
2625
"jest-changed-files": "^28.0.0-alpha.3",

packages/jest-core/src/TestScheduler.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ import {
3636
cleanup as cleanupSnapshots,
3737
} from 'jest-snapshot';
3838
import {requireOrImportModule} from 'jest-util';
39+
import type {TestWatcher} from 'jest-watcher';
3940
import ReporterDispatcher from './ReporterDispatcher';
40-
import type TestWatcher from './TestWatcher';
4141
import {shouldRunInBand} from './testSchedulerHelper';
4242

4343
type TestRunnerConstructor = new (

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

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,8 @@
77
*/
88

99
import chalk from 'chalk';
10-
import {JestHook, KEYS} from 'jest-watcher';
1110
// eslint-disable-next-line import/order
12-
import TestWatcher from '../TestWatcher';
11+
import {JestHook, KEYS, TestWatcher} from 'jest-watcher';
1312

1413
const runJestMock = jest.fn();
1514
const watchPluginPath = `${__dirname}/__fixtures__/watchPlugin`;

packages/jest-core/src/cli/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import {readConfigs} from 'jest-config';
1616
import type HasteMap from 'jest-haste-map';
1717
import Runtime, {Context} from 'jest-runtime';
1818
import {createDirectory, preRunMessage} from 'jest-util';
19-
import TestWatcher from '../TestWatcher';
19+
import {TestWatcher} from 'jest-watcher';
2020
import {formatHandleErrors} from '../collectHandles';
2121
import getChangedFilesPromise from '../getChangedFilesPromise';
2222
import getConfigsOfProjectsToRun from '../getConfigsOfProjectsToRun';

packages/jest-core/src/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,5 @@
77

88
export {default as SearchSource} from './SearchSource';
99
export {createTestScheduler} from './TestScheduler';
10-
export {default as TestWatcher} from './TestWatcher';
1110
export {runCLI} from './cli';
1211
export {default as getVersion} from './version';

packages/jest-core/src/runJest.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@ import Resolver from 'jest-resolve';
2424
import type {Context} from 'jest-runtime';
2525
import {requireOrImportModule, tryRealpath} from 'jest-util';
2626
import {JestHook, JestHookEmitter} from 'jest-watcher';
27+
import type {TestWatcher} from 'jest-watcher';
2728
import type FailedTestsCache from './FailedTestsCache';
2829
import SearchSource from './SearchSource';
2930
import {TestSchedulerContext, createTestScheduler} from './TestScheduler';
30-
import type TestWatcher from './TestWatcher';
3131
import collectNodeHandles, {HandleCollectionResult} from './collectHandles';
3232
import getNoTestsFoundMessage from './getNoTestsFoundMessage';
3333
import runGlobalHook from './runGlobalHook';

packages/jest-core/src/watch.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,12 @@ import {
2828
AllowedConfigOptions,
2929
JestHook,
3030
KEYS,
31+
TestWatcher,
3132
WatchPlugin,
3233
WatchPluginClass,
3334
} from 'jest-watcher';
3435
import FailedTestsCache from './FailedTestsCache';
3536
import SearchSource from './SearchSource';
36-
import TestWatcher from './TestWatcher';
3737
import getChangedFilesPromise from './getChangedFilesPromise';
3838
import activeFilters from './lib/activeFiltersMessage';
3939
import createContext from './lib/createContext';

packages/jest-runner/__typetests__/jest-runner.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ import type {
1515
OnTestSuccess,
1616
TestRunnerContext,
1717
TestRunnerOptions,
18-
TestWatcher,
1918
UnsubscribeFn,
2019
} from 'jest-runner';
20+
import type {TestWatcher} from 'jest-watcher';
2121

2222
const globalConfig = {} as Config.GlobalConfig;
2323
const runnerContext = {} as TestRunnerContext;

packages/jest-runner/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
"jest-resolve": "^28.0.0-alpha.8",
3535
"jest-runtime": "^28.0.0-alpha.8",
3636
"jest-util": "^28.0.0-alpha.8",
37+
"jest-watcher": "^28.0.0-alpha.8",
3738
"jest-worker": "^28.0.0-alpha.8",
3839
"source-map-support": "^0.5.6",
3940
"throat": "^6.0.1"

packages/jest-runner/src/__tests__/testRunner.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
*
77
*/
88

9-
import {TestWatcher} from '@jest/core';
109
import type {TestContext} from '@jest/test-result';
1110
import {makeGlobalConfig, makeProjectConfig} from '@jest/test-utils';
11+
import {TestWatcher} from 'jest-watcher';
1212
import TestRunner from '../index';
1313

1414
let mockWorkerFarm;

packages/jest-runner/src/index.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,11 @@ import type {
1515
TestResult,
1616
} from '@jest/test-result';
1717
import {deepCyclicCopy} from 'jest-util';
18+
import type {TestWatcher} from 'jest-watcher';
1819
import {PromiseWithCustomMessage, Worker} from 'jest-worker';
1920
import runTest from './runTest';
2021
import type {SerializableResolver, worker} from './testWorker';
21-
import {
22-
EmittingTestRunner,
23-
TestRunnerOptions,
24-
TestWatcher,
25-
UnsubscribeFn,
26-
} from './types';
22+
import {EmittingTestRunner, TestRunnerOptions, UnsubscribeFn} from './types';
2723

2824
const TEST_WORKER_PATH = require.resolve('./testWorker');
2925

@@ -36,7 +32,6 @@ export type {
3632
OnTestFailure,
3733
OnTestStart,
3834
OnTestSuccess,
39-
TestWatcher,
4035
TestRunnerContext,
4136
TestRunnerOptions,
4237
JestTestRunner,

packages/jest-runner/src/types.ts

Lines changed: 1 addition & 10 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 Emittery = require('emittery');
98
import type {JestEnvironment} from '@jest/environment';
109
import type {
1110
SerializableError,
@@ -16,6 +15,7 @@ import type {
1615
} from '@jest/test-result';
1716
import type {Config} from '@jest/types';
1817
import type RuntimeType from 'jest-runtime';
18+
import type {TestWatcher} from 'jest-watcher';
1919

2020
export type ErrorWithCode = Error & {code?: string};
2121

@@ -96,12 +96,3 @@ export abstract class EmittingTestRunner extends BaseTestRunner {
9696
}
9797

9898
export type JestTestRunner = CallbackTestRunner | EmittingTestRunner;
99-
100-
// TODO: Should live in `@jest/core` or `jest-watcher`
101-
type WatcherState = {interrupted: boolean};
102-
export interface TestWatcher extends Emittery<{change: WatcherState}> {
103-
state: WatcherState;
104-
setState(state: WatcherState): void;
105-
isInterrupted(): boolean;
106-
isWatchMode(): boolean;
107-
}

packages/jest-runner/tsconfig.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
{"path": "../jest-transform"},
2121
{"path": "../jest-types"},
2222
{"path": "../jest-util"},
23+
{"path": "../jest-watcher"},
2324
{"path": "../jest-worker"}
2425
]
2526
}

packages/jest-watcher/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"@types/node": "*",
1818
"ansi-escapes": "^4.2.1",
1919
"chalk": "^4.0.0",
20+
"emittery": "^0.10.2",
2021
"jest-util": "^28.0.0-alpha.8",
2122
"string-length": "^4.0.1"
2223
},

packages/jest-watcher/src/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
export {default as BaseWatchPlugin} from './BaseWatchPlugin';
99
export {default as JestHook} from './JestHooks';
1010
export {default as PatternPrompt} from './PatternPrompt';
11+
export {default as TestWatcher} from './TestWatcher';
1112
export * from './constants';
1213
export type {
1314
AllowedConfigOptions,

packages/jest/src/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
export {
99
SearchSource,
10-
TestWatcher,
1110
createTestScheduler,
1211
getVersion,
1312
runCLI,

yarn.lock

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2557,7 +2557,6 @@ __metadata:
25572557
"@types/rimraf": ^3.0.0
25582558
ansi-escapes: ^4.2.1
25592559
chalk: ^4.0.0
2560-
emittery: ^0.10.2
25612560
exit: ^0.1.2
25622561
graceful-fs: ^4.2.9
25632562
jest-changed-files: ^28.0.0-alpha.3
@@ -13514,6 +13513,7 @@ __metadata:
1351413513
jest-resolve: ^28.0.0-alpha.8
1351513514
jest-runtime: ^28.0.0-alpha.8
1351613515
jest-util: ^28.0.0-alpha.8
13516+
jest-watcher: ^28.0.0-alpha.8
1351713517
jest-worker: ^28.0.0-alpha.8
1351813518
source-map-support: ^0.5.6
1351913519
throat: ^6.0.1
@@ -13721,6 +13721,7 @@ __metadata:
1372113721
"@types/node": "*"
1372213722
ansi-escapes: ^4.2.1
1372313723
chalk: ^4.0.0
13724+
emittery: ^0.10.2
1372413725
jest-util: ^28.0.0-alpha.8
1372513726
string-length: ^4.0.1
1372613727
languageName: unknown

0 commit comments

Comments
 (0)