@@ -205,16 +205,18 @@ export default testSuite(async ({ describe }, fixturePath: string) => {
205205 const entryFile = 'index.js' ;
206206 const fileA = 'file-a.js' ;
207207 const fileB = 'directory/file-b.js' ;
208- let value = Date . now ( ) ;
208+ const depA = 'node_modules/a/index.js' ;
209209
210210 const fixture = await createFixture ( {
211+ [ fileA ] : 'export default "logA"' ,
212+ [ fileB ] : 'export default "logB"' ,
213+ [ depA ] : 'export default "logC"' ,
211214 [ entryFile ] : `
212215 import valueA from './${ fileA } '
213216 import valueB from './${ fileB } '
214- console.log(valueA, valueB)
217+ import valueC from './${ depA } '
218+ console.log(valueA, valueB, valueC)
215219 ` . trim ( ) ,
216- [ fileA ] : `export default ${ value } ` ,
217- [ fileB ] : `export default ${ value } ` ,
218220 } ) ;
219221
220222 onTestFinish ( async ( ) => await fixture . rm ( ) ) ;
@@ -229,19 +231,25 @@ export default testSuite(async ({ describe }, fixturePath: string) => {
229231 entryFile ,
230232 ] ,
231233 } ) ;
234+ const negativeSignal = '"fail"' ;
232235
233236 await interact (
234237 tsxProcess . stdout ! ,
235238 [
236239 async ( data ) => {
237- if ( data === `${ value } ${ value } \n` ) {
238- value = Date . now ( ) ;
240+ if ( data . includes ( 'fail' ) ) {
241+ throw new Error ( 'should not log ignored file' ) ;
242+ }
243+
244+ if ( data === 'logA logB logC\n' ) {
245+ // These changes should not trigger a re-run
239246 await Promise . all ( [
240- fixture . writeFile ( fileA , `export default ${ value } ` ) ,
241- fixture . writeFile ( fileB , `export default ${ value } ` ) ,
247+ fixture . writeFile ( fileA , `export default ${ negativeSignal } ` ) ,
248+ fixture . writeFile ( fileB , `export default ${ negativeSignal } ` ) ,
249+ fixture . writeFile ( depA , `export default ${ negativeSignal } ` ) ,
242250 ] ) ;
243251
244- await setTimeout ( 500 ) ;
252+ await setTimeout ( 1500 ) ;
245253 await fixture . writeFile ( entryFile , 'console.log("TERMINATE")' ) ;
246254 return true ;
247255 }
@@ -253,7 +261,7 @@ export default testSuite(async ({ describe }, fixturePath: string) => {
253261 tsxProcess . kill ( ) ;
254262
255263 const { all, stderr } = await tsxProcess ;
256- expect ( all ) . not . toMatch ( ` ${ value } ${ value } ` ) ;
264+ expect ( all ) . not . toMatch ( 'fail' ) ;
257265 expect ( stderr ) . toBe ( '' ) ;
258266 } , 10_000 ) ;
259267 } ) ;
0 commit comments