@@ -13,7 +13,14 @@ import {
1313import  type  {  Page  }  from  'playwright-chromium' 
1414import  WebSocket  from  'ws' 
1515import  testJSON  from  '../safe.json' 
16- import  {  browser ,  isServe ,  page ,  viteServer ,  viteTestUrl  }  from  '~utils' 
16+ import  { 
17+   browser , 
18+   isServe , 
19+   isWindows , 
20+   page , 
21+   viteServer , 
22+   viteTestUrl , 
23+ }  from  '~utils' 
1724
1825const  __dirname  =  path . dirname ( fileURLToPath ( import . meta. url ) ) 
1926
@@ -538,6 +545,23 @@ describe.runIf(isServe)('invalid request', () => {
538545    expect ( response ) . toContain ( 'HTTP/1.1 403 Forbidden' ) 
539546  } ) 
540547
548+   test ( 'should deny request to denied file when a request ends with \\' ,  async  ( )  =>  { 
549+     const  response  =  await  sendRawRequest ( viteTestUrl ,  '/src/.env\\' ) 
550+     expect ( response ) . toContain ( 
551+       isWindows  ? 'HTTP/1.1 403 Forbidden'  : 'HTTP/1.1 404 Not Found' , 
552+     ) 
553+   } ) 
554+ 
555+   test ( 'should deny request to denied file when a request ends with \\ with /@fs/' ,  async  ( )  =>  { 
556+     const  response  =  await  sendRawRequest ( 
557+       viteTestUrl , 
558+       path . posix . join ( '/@fs/' ,  root ,  'root/src/.env' )  +  '\\' , 
559+     ) 
560+     expect ( response ) . toContain ( 
561+       isWindows  ? 'HTTP/1.1 403 Forbidden'  : 'HTTP/1.1 404 Not Found' , 
562+     ) 
563+   } ) 
564+ 
541565  test ( 'should deny request with /@fs/ to denied file when a request has /.' ,  async  ( )  =>  { 
542566    const  response  =  await  sendRawRequest ( 
543567      viteTestUrl , 
0 commit comments