Skip to content

Commit 3f20cf5

Browse files
authoredJan 23, 2023
revert!: don't rely on environment for interopDefault (#2682)
Closes #2610
1 parent a5ec633 commit 3f20cf5

File tree

3 files changed

+10
-45
lines changed

3 files changed

+10
-45
lines changed
 

‎packages/vitest/src/runtime/execute.ts

-6
Original file line numberDiff line numberDiff line change
@@ -71,10 +71,4 @@ export class VitestRunner extends ViteNodeRunner {
7171
__vitest_mocker__: this.mocker,
7272
})
7373
}
74-
75-
shouldInterop(path: string, mod: any) {
76-
if (this.options.interopDefault === false)
77-
return false
78-
return (this.options.interopDefault || getCurrentEnvironment() !== 'node') && super.shouldInterop(path, mod)
79-
}
8074
}

‎test/core/test/module-dom.test.ts

-33
This file was deleted.

‎test/core/test/module.test.ts

+10-6
Original file line numberDiff line numberDiff line change
@@ -30,17 +30,21 @@ describe('validating nested defaults in isolation', () => {
3030
it.each([
3131
nestedDefaultCjs,
3232
nestedDefaultExternalCjs,
33-
])('nested default should stay, because environment is node', (mod) => {
33+
])('nested default should be resolved', (mod) => {
3434
expect(mod).toHaveProperty('default')
35-
expect(mod.default).toHaveProperty('default')
36-
expect(mod.default.default.a).toBe('a')
37-
expect(mod.default.default.b).toBe('b')
35+
expect(mod.default).not.toHaveProperty('default')
36+
expect(mod.default.a).toBe('a')
37+
expect(mod.default.b).toBe('b')
38+
expect(mod.a).toBe('a')
39+
expect(mod.b).toBe('b')
3840
})
3941

40-
it('don\'t interop external module.exports, because environment is node', () => {
42+
it('externalized "module.exports" CJS module interops default', () => {
4143
expect(moduleDefaultCjs).toHaveProperty('default')
4244
expect(moduleDefaultCjs.default).toHaveProperty('a')
43-
expect(moduleDefaultCjs).not.toHaveProperty('a')
45+
expect(moduleDefaultCjs.default.a).toBe('a')
46+
expect(moduleDefaultCjs).toHaveProperty('a')
47+
expect(moduleDefaultCjs.a).toBe('a')
4448
})
4549
})
4650

0 commit comments

Comments
 (0)
Please sign in to comment.