Skip to content

Commit 1f9081a

Browse files
author
Mikael Lirbank
committed
Change runScript return type to unknown
1 parent f45cc88 commit 1f9081a

File tree

2 files changed

+13
-7
lines changed

2 files changed

+13
-7
lines changed

packages/jest-environment/src/index.ts

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,23 @@ export type EnvironmentContext = {
2222
// TODO: type this better: https://nodejs.org/api/modules.html#modules_the_module_wrapper
2323
type ModuleWrapper = (...args: Array<unknown>) => unknown;
2424

25+
export function hasModuleWrapper(
26+
obj: unknown,
27+
): obj is {[ScriptTransformer.EVAL_RESULT_VARIABLE]: ModuleWrapper} {
28+
return (
29+
typeof obj === 'object' &&
30+
!!obj &&
31+
obj.hasOwnProperty(ScriptTransformer.EVAL_RESULT_VARIABLE)
32+
);
33+
}
34+
2535
export declare class JestEnvironment {
2636
constructor(config: Config.ProjectConfig);
2737
constructor(config: Config.ProjectConfig, context: EnvironmentContext);
2838
global: Global.Global;
2939
fakeTimers: FakeTimers<unknown> | null;
3040
moduleMocker: ModuleMocker | null;
31-
// runScript(
32-
// script: Script,
33-
// ): {[ScriptTransformer.EVAL_RESULT_VARIABLE]: ModuleWrapper} | null | unknown;
34-
runScript(
35-
script: Script,
36-
): {[ScriptTransformer.EVAL_RESULT_VARIABLE]: ModuleWrapper} | null;
41+
runScript(script: Script): unknown;
3742
setup(): Promise<void>;
3843
teardown(): Promise<void>;
3944
}

packages/jest-runtime/src/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import {
1212
JestEnvironment,
1313
LocalModuleRequire,
1414
Module,
15+
hasModuleWrapper
1516
} from '@jest/environment';
1617
import jestMock, {MockFunctionMetadata} from 'jest-mock';
1718
import HasteMap, {ModuleMap} from 'jest-haste-map';
@@ -679,7 +680,7 @@ class Runtime {
679680

680681
const runScript = this._environment.runScript(transformedFile.script);
681682

682-
if (runScript === null) {
683+
if (!hasModuleWrapper(runScript)) {
683684
this._logFormattedReferenceError(
684685
'You are trying to `import` a file after the Jest environment has been torn down.',
685686
);

0 commit comments

Comments
 (0)