1
- 'use strict ';
1
+ import { join } from 'path ';
2
2
3
- const { join} = require ( 'path' ) ;
4
-
5
- const {
3
+ import {
6
4
test ,
7
5
stub ,
8
- } = require ( 'supertape' ) ;
6
+ } from 'supertape' ;
9
7
10
- const montag = require ( 'montag' ) ;
11
- const mockRequire = require ( 'mock-require' ) ;
12
- const tryToCatch = require ( 'try-to-catch' ) ;
8
+ import montag from 'montag' ;
9
+ import tryToCatch from 'try-to-catch' ;
10
+ import { createCommons } from 'simport' ;
11
+ import { createMockImport } from 'mock-import' ;
12
+
13
+ const { __dirname} = createCommons ( import . meta. url ) ;
14
+ const {
15
+ mockImport,
16
+ reImport,
17
+ stopAll,
18
+ } = createMockImport ( import . meta. url ) ;
13
19
14
- const { reRequire} = mockRequire ;
15
20
const { stringify} = JSON ;
16
21
17
22
test ( 'madrun: init: createMadrun: found' , async ( t ) => {
18
23
const access = stub ( ) ;
19
24
20
- mockRequire ( 'fs/promises' , {
25
+ mockImport ( 'fs/promises' , {
21
26
access,
22
27
} ) ;
23
28
24
- const { createMadrun} = await reRequire ( './init' ) ;
29
+ const { createMadrun} = await reImport ( './init.mjs ' ) ;
25
30
const cwd = '/hello' ;
26
31
const name = await createMadrun ( cwd ) ;
27
32
@@ -33,12 +38,12 @@ test('madrun: init: createMadrun: writeFile', async (t) => {
33
38
const access = stub ( ) . throws ( Error ( 'xxx' ) ) ;
34
39
const writeFile = stub ( ) ;
35
40
36
- mockRequire ( 'fs/promises' , {
41
+ mockImport ( 'fs/promises' , {
37
42
access,
38
43
writeFile,
39
44
} ) ;
40
45
41
- const { createMadrun} = await reRequire ( './init' ) ;
46
+ const { createMadrun} = await reImport ( './init.mjs ' ) ;
42
47
const cwd = '/hello' ;
43
48
44
49
await createMadrun ( cwd , {
@@ -72,12 +77,12 @@ test('madrun: init: createMadrun: writeFile: no scripts', async (t) => {
72
77
const access = stub ( ) . throws ( Error ( 'xxx' ) ) ;
73
78
const writeFile = stub ( ) ;
74
79
75
- mockRequire ( 'fs/promises' , {
80
+ mockImport ( 'fs/promises' , {
76
81
access,
77
82
writeFile,
78
83
} ) ;
79
84
80
- const { createMadrun} = await reRequire ( './init' ) ;
85
+ const { createMadrun} = await reImport ( './init.mjs ' ) ;
81
86
const cwd = '/hello' ;
82
87
83
88
await createMadrun ( cwd , { } ) ;
@@ -104,7 +109,7 @@ test('madrun: init: createMadrun: writeFile: no scripts', async (t) => {
104
109
} ) ;
105
110
106
111
test ( 'madrun: init: patchPackage: import error' , async ( t ) => {
107
- const { patchPackage} = await reRequire ( './init' ) ;
112
+ const { patchPackage} = await reImport ( './init.mjs ' ) ;
108
113
const [ error ] = await tryToCatch ( patchPackage , 'xxx' ) ;
109
114
110
115
t . ok ( error . message . includes ( `Cannot find package 'xxx'` ) ) ;
@@ -115,11 +120,11 @@ test('madrun: init: patchPackage: import error', async (t) => {
115
120
const writeFile = stub ( ) ;
116
121
const madrunFile = join ( __dirname , 'fixture' , 'madrun.mjs' ) ;
117
122
118
- mockRequire ( 'fs/promises' , {
123
+ mockImport ( 'fs/promises' , {
119
124
writeFile,
120
125
} ) ;
121
126
122
- const { patchPackage} = await reRequire ( './init' ) ;
127
+ const { patchPackage} = await reImport ( './init.mjs ' ) ;
123
128
await patchPackage ( madrunFile , {
124
129
hello : 'world' ,
125
130
} ) ;
@@ -131,6 +136,8 @@ test('madrun: init: patchPackage: import error', async (t) => {
131
136
} ,
132
137
} , null , 2 ) + '\n' ;
133
138
139
+ stopAll ( ) ;
140
+
134
141
const expected = [
135
142
'./package.json' ,
136
143
content ,
0 commit comments