22
33const tryToCatch = require ( 'try-to-catch' ) ;
44const { test, stub} = require ( 'supertape' ) ;
5- const mockRequire = require ( 'mock-require' ) ;
6-
7- const { reRequire, stopAll} = mockRequire ;
5+ const { get, set} = require ( './staged' ) ;
86
97test ( 'putout: cli: staged' , async ( t ) => {
108 const findUp = stub ( ) . returns ( '.' ) ;
119
12- const { get} = reRequire ( './staged' ) ;
13-
1410 await get ( {
1511 findUp,
1612 isSupported : Boolean ,
1713 } ) ;
1814
19- stopAll ( ) ;
20-
2115 const type = 'directory' ;
2216
2317 const args = [ '.git' , {
@@ -34,16 +28,11 @@ test('putout: cli: staged: set: porcelain', async (t) => {
3428
3529 const porcelain = stub ( ) . returns ( [ 'packages/putout/lib/cli/index.js' ] ) ;
3630
37- mockRequire ( '@putout/git-status-porcelain' , porcelain ) ;
38-
39- const { set} = reRequire ( './staged' ) ;
40-
4131 await set ( {
4232 findUp,
33+ porcelain,
4334 } ) ;
4435
45- stopAll ( ) ;
46-
4736 const expected = [ {
4837 unstaged : true ,
4938 } ] ;
@@ -58,17 +47,12 @@ test('putout: cli: staged: get: statusMatrix', async (t) => {
5847
5948 const porcelain = stub ( ) . returns ( [ 'packages/putout/lib/cli/index.js' ] ) ;
6049
61- mockRequire ( '@putout/git-status-porcelain' , porcelain ) ;
62-
63- const { get} = reRequire ( './staged' ) ;
64-
6550 await get ( {
6651 findUp,
6752 isSupported : Boolean ,
53+ porcelain,
6854 } ) ;
6955
70- stopAll ( ) ;
71-
7256 const expected = {
7357 added : true ,
7458 modified : true ,
@@ -85,16 +69,12 @@ test('putout: cli: staged: get: statusMatrix: result', async (t) => {
8569
8670 const porcelain = stub ( ) . returns ( [ 'packages/putout/lib/cli/index.js' ] ) ;
8771
88- mockRequire ( '@putout/git-status-porcelain' , porcelain ) ;
89- const { get} = reRequire ( './staged' ) ;
90-
9172 const names = await get ( {
9273 findUp,
9374 isSupported : Boolean ,
75+ porcelain,
9476 } ) ;
9577
96- stopAll ( ) ;
97-
9878 const expected = [
9979 '/putout/packages/putout/lib/cli/index.js' ,
10080 ] ;
@@ -109,16 +89,11 @@ test('putout: cli: staged: set: findUp', async (t) => {
10989
11090 const porcelain = stub ( ) . returns ( [ 'packages/putout/lib/cli/index.js' ] ) ;
11191
112- mockRequire ( '@putout/git-status-porcelain' , porcelain ) ;
113-
114- const { set} = reRequire ( './staged' ) ;
115-
11692 await set ( {
11793 findUp,
94+ porcelain,
11895 } ) ;
11996
120- stopAll ( ) ;
121-
12297 const type = 'directory' ;
12398
12499 t . calledWith ( findUp , [ '.git' , {
@@ -131,27 +106,10 @@ test('putout: cli: staged: set: findUp: not found', async (t) => {
131106 const dir = '' ;
132107 const findUp = stub ( ) . returns ( dir ) ;
133108
134- const statusMatrix = stub ( ) . returns ( [
135- [
136- 'packages/putout/lib/cli/index.js' ,
137- 1 ,
138- 2 ,
139- 2 ,
140- ] ,
141- ] ) ;
142-
143- mockRequire ( 'isomorphic-git' , {
144- statusMatrix,
145- } ) ;
146-
147- const { set} = reRequire ( './staged' ) ;
148-
149109 await tryToCatch ( set , {
150110 findUp,
151111 } ) ;
152112
153- stopAll ( ) ;
154-
155113 const type = 'directory' ;
156114
157115 t . calledWith ( findUp , [ '.git' , {
@@ -179,24 +137,18 @@ test('putout: cli: staged: add', async (t) => {
179137
180138 const spawnSync = stub ( ) ;
181139
182- mockRequire ( 'node:child_process' , {
183- spawnSync,
184- } ) ;
185- mockRequire ( '@putout/git-status-porcelain' , porcelain ) ;
186-
187- const { get, set} = reRequire ( './staged' ) ;
188-
189140 await get ( {
190141 findUp,
191142 isSupported : Boolean ,
143+ porcelain,
192144 } ) ;
193145
194146 await set ( {
195147 findUp,
148+ spawnSync,
149+ porcelain,
196150 } ) ;
197151
198- stopAll ( ) ;
199-
200152 const filepath = 'packages/putout/lib/cli/index.js' ;
201153
202154 const args = [ 'git' , [
@@ -228,24 +180,18 @@ test('putout: cli: staged: no files', async (t) => {
228180 const spawnSync = stub ( ) ;
229181 const isSupported = stub ( ) . returns ( false ) ;
230182
231- mockRequire ( 'node:child_process' , {
232- spawnSync,
233- } ) ;
234- mockRequire ( '@putout/git-status-porcelain' , porcelain ) ;
235-
236- const { get, set} = reRequire ( './staged' ) ;
237-
238183 await get ( {
239184 findUp,
240185 isSupported,
186+ porcelain,
241187 } ) ;
242188
243189 await set ( {
244190 findUp,
191+ spawnSync,
192+ porcelain,
245193 } ) ;
246194
247- stopAll ( ) ;
248-
249195 t . notCalled ( spawnSync ) ;
250196 t . end ( ) ;
251197} ) ;
0 commit comments