@@ -4,6 +4,7 @@ import { fileURLToPath } from 'node:url'
4
4
import { describe , expect , it } from 'vitest'
5
5
import { transformGlobImport } from '../../../plugins/importMetaGlob'
6
6
import { transformWithEsbuild } from '../../../plugins/esbuild'
7
+ import type { Logger } from '../../../logger'
7
8
import { createLogger } from '../../../logger'
8
9
9
10
const __dirname = resolve ( fileURLToPath ( import . meta. url ) , '..' )
@@ -72,4 +73,43 @@ describe('fixture', async () => {
72
73
) ?. s . toString ( )
73
74
) . toMatchSnapshot ( )
74
75
} )
76
+
77
+ it ( 'warn when glob css without ?inline' , async ( ) => {
78
+ const logs : string [ ] = [ ]
79
+ const logger = {
80
+ warn ( msg : string ) {
81
+ logs . push ( msg )
82
+ }
83
+ } as Logger
84
+
85
+ await transformGlobImport (
86
+ "import.meta.glob('./fixture-c/*.css', { query: '?inline' })" ,
87
+ fileURLToPath ( import . meta. url ) ,
88
+ root ,
89
+ resolveId ,
90
+ logger
91
+ )
92
+ expect ( logs ) . toHaveLength ( 0 )
93
+
94
+ await transformGlobImport (
95
+ "import.meta.glob('./fixture-c/*.module.css')" ,
96
+ fileURLToPath ( import . meta. url ) ,
97
+ root ,
98
+ resolveId ,
99
+ logger
100
+ )
101
+ expect ( logs ) . toHaveLength ( 0 )
102
+
103
+ await transformGlobImport (
104
+ "import.meta.glob('./fixture-c/*.css')" ,
105
+ fileURLToPath ( import . meta. url ) ,
106
+ root ,
107
+ resolveId ,
108
+ logger
109
+ )
110
+ expect ( logs ) . toHaveLength ( 1 )
111
+ expect ( logs [ 0 ] ) . to . include (
112
+ 'Globbing CSS files without the ?inline query is deprecated'
113
+ )
114
+ } )
75
115
} )
0 commit comments