File tree Expand file tree Collapse file tree 2 files changed +13
-7
lines changed
Expand file tree Collapse file tree 2 files changed +13
-7
lines changed Original file line number Diff line number Diff line change @@ -22,18 +22,23 @@ export type EnvironmentContext = {
2222// TODO: type this better: https://nodejs.org/api/modules.html#modules_the_module_wrapper
2323type 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+
2535export 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}
Original file line number Diff line number Diff line change @@ -12,6 +12,7 @@ import {
1212 JestEnvironment ,
1313 LocalModuleRequire ,
1414 Module ,
15+ hasModuleWrapper
1516} from '@jest/environment' ;
1617import jestMock , { MockFunctionMetadata } from 'jest-mock' ;
1718import 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 ) ;
You can’t perform that action at this time.
0 commit comments