@@ -18,6 +18,54 @@ describe('location filter with list command', () => {
1818 expect ( stderr ) . toEqual ( '' )
1919 } )
2020
21+ test ( 'finds "basic suite" at correct line number' , async ( ) => {
22+ const { stdout, stderr } = await runVitestCli (
23+ 'list' ,
24+ `-r=${ fixturePath } ` ,
25+ `${ fixturePath } /basic.test.ts:3` ,
26+ )
27+
28+ expect ( stdout ) . toMatchInlineSnapshot ( `
29+ "basic.test.ts > basic suite > inner suite > some test
30+ basic.test.ts > basic suite > inner suite > another test
31+ basic.test.ts > basic suite > basic test
32+ "
33+ ` )
34+ expect ( stderr ) . toEqual ( '' )
35+ } )
36+
37+ test ( 'finds "inner suite" at correct line number' , async ( ) => {
38+ const { stdout, stderr } = await runVitestCli (
39+ 'list' ,
40+ `-r=${ fixturePath } ` ,
41+ `${ fixturePath } /basic.test.ts:4` ,
42+ )
43+
44+ expect ( stdout ) . toMatchInlineSnapshot ( `
45+ "basic.test.ts > basic suite > inner suite > some test
46+ basic.test.ts > basic suite > inner suite > another test
47+ "
48+ ` )
49+ expect ( stderr ) . toEqual ( '' )
50+ } )
51+
52+ test ( 'handles matching test inside a suite' , async ( ) => {
53+ const { stdout, stderr } = await runVitestCli (
54+ 'list' ,
55+ `-r=${ fixturePath } ` ,
56+ `${ fixturePath } /basic.test.ts:3` ,
57+ `${ fixturePath } /basic.test.ts:9` ,
58+ )
59+
60+ expect ( stdout ) . toMatchInlineSnapshot ( `
61+ "basic.test.ts > basic suite > inner suite > some test
62+ basic.test.ts > basic suite > inner suite > another test
63+ basic.test.ts > basic suite > basic test
64+ "
65+ ` )
66+ expect ( stderr ) . toEqual ( '' )
67+ } )
68+
2169 test ( 'handles file with a dash in the name' , async ( ) => {
2270 const { stdout, stderr } = await runVitestCli (
2371 'list' ,
@@ -120,13 +168,48 @@ describe('location filter with run command', () => {
120168 `${ fixturePath } /math.test.ts:3` ,
121169 )
122170
123- // expect(`${stdout}\n--------------------\n${stderr}`).toEqual('')
124-
125171 expect ( stdout ) . contain ( '1 passed' )
126172 expect ( stdout ) . contain ( '1 skipped' )
127173 expect ( stderr ) . toEqual ( '' )
128174 } )
129175
176+ test ( 'finds "basic suite" at correct line number' , async ( ) => {
177+ const { stdout, stderr } = await runVitestCli (
178+ 'run' ,
179+ `-r=${ fixturePath } ` ,
180+ `${ fixturePath } /basic.test.ts:3` ,
181+ )
182+
183+ expect ( stdout ) . contain ( '3 passed' )
184+ expect ( stdout ) . contain ( '1 skipped' )
185+ expect ( stderr ) . toEqual ( '' )
186+ } )
187+
188+ test ( 'finds "inner suite" at correct line number' , async ( ) => {
189+ const { stdout, stderr } = await runVitestCli (
190+ 'run' ,
191+ `-r=${ fixturePath } ` ,
192+ `${ fixturePath } /basic.test.ts:4` ,
193+ )
194+
195+ expect ( stdout ) . contain ( '2 passed' )
196+ expect ( stdout ) . contain ( '2 skipped' )
197+ expect ( stderr ) . toEqual ( '' )
198+ } )
199+
200+ test ( 'handles matching test inside a suite' , async ( ) => {
201+ const { stdout, stderr } = await runVitestCli (
202+ 'run' ,
203+ `-r=${ fixturePath } ` ,
204+ `${ fixturePath } /basic.test.ts:3` ,
205+ `${ fixturePath } /basic.test.ts:9` ,
206+ )
207+
208+ expect ( stdout ) . contain ( '3 passed' )
209+ expect ( stdout ) . contain ( '1 skipped' )
210+ expect ( stderr ) . toEqual ( '' )
211+ } )
212+
130213 test ( 'handles file with a dash in the name' , async ( ) => {
131214 const { stdout, stderr } = await runVitestCli (
132215 'run' ,
0 commit comments