@@ -263,12 +263,21 @@ describe("CssMinimizerPlugin", () => {
263
263
minify : ( data ) => {
264
264
// eslint-disable-next-line global-require
265
265
const postcss = require ( "postcss" ) ;
266
+ const plugin = ( ) => {
267
+ let erroredDecl ;
266
268
267
- const plugin = postcss . plugin ( "error-plugin" , ( ) => ( css ) => {
268
- css . walkDecls ( ( decl ) => {
269
- throw decl . error ( "Postcss error" ) ;
270
- } ) ;
271
- } ) ;
269
+ return {
270
+ postcssPlugin : "error-plugin" ,
271
+ Declaration ( decl ) {
272
+ erroredDecl = decl ;
273
+ } ,
274
+ OnceExit ( ) {
275
+ throw erroredDecl . error ( "Postcss error" ) ;
276
+ } ,
277
+ } ;
278
+ } ;
279
+
280
+ plugin . postcss = true ;
272
281
273
282
const [ [ filename , input ] ] = Object . entries ( data ) ;
274
283
@@ -296,20 +305,23 @@ describe("CssMinimizerPlugin", () => {
296
305
minify : ( data ) => {
297
306
// eslint-disable-next-line global-require
298
307
const postcss = require ( "postcss" ) ;
299
-
300
- const plugin = postcss . plugin ( "warning-plugin" , ( ) => ( css , result ) => {
308
+ const plugin = ( ) => {
301
309
let rule ;
302
- css . walkDecls ( ( decl ) => {
303
- rule = decl ;
304
- } ) ;
305
310
306
- result . warn ( "Warning" , {
307
- node : rule ,
308
- word : "warning_word" ,
309
- index : 2 ,
310
- plugin : "warning-plugin" ,
311
- } ) ;
312
- } ) ;
311
+ return {
312
+ postcssPlugin : "warning-plugin" ,
313
+ Declaration ( decl , { result } ) {
314
+ result . warn ( "Warning" , {
315
+ node : rule ,
316
+ word : "warning_word" ,
317
+ index : 2 ,
318
+ plugin : "warning-plugin" ,
319
+ } ) ;
320
+ } ,
321
+ } ;
322
+ } ;
323
+
324
+ plugin . postcss = true ;
313
325
314
326
const [ [ filename , input ] ] = Object . entries ( data ) ;
315
327
@@ -786,13 +798,20 @@ describe("CssMinimizerPlugin", () => {
786
798
const postcss = require ( "postcss" ) ;
787
799
const [ [ fileName , input ] ] = Object . entries ( data ) ;
788
800
789
- return postcss ( [
790
- postcss . plugin ( "warning-plugin" , ( ) => ( css , result ) => {
791
- result . warn ( `Warning from ${ result . opts . from } ` , {
792
- plugin : "warning-plugin" ,
793
- } ) ;
794
- } ) ,
795
- ] )
801
+ const plugin = ( ) => {
802
+ return {
803
+ postcssPlugin : "warning-plugin" ,
804
+ OnceExit ( decl , { result } ) {
805
+ result . warn ( `Warning from ${ result . opts . from } ` , {
806
+ plugin : "warning-plugin" ,
807
+ } ) ;
808
+ } ,
809
+ } ;
810
+ } ;
811
+
812
+ plugin . postcss = true ;
813
+
814
+ return postcss ( [ plugin ] )
796
815
. process ( input , { from : fileName , to : fileName } )
797
816
. then ( ( result ) => {
798
817
return {
@@ -863,13 +882,20 @@ describe("CssMinimizerPlugin", () => {
863
882
const postcss = require ( "postcss" ) ;
864
883
const [ [ fileName , input ] ] = Object . entries ( data ) ;
865
884
866
- return postcss ( [
867
- postcss . plugin ( "warning-plugin" , ( ) => ( css , result ) => {
868
- result . warn ( `Warning from ${ result . opts . from } ` , {
869
- plugin : "warning-plugin" ,
870
- } ) ;
871
- } ) ,
872
- ] )
885
+ const plugin = ( ) => {
886
+ return {
887
+ postcssPlugin : "warning-plugin" ,
888
+ OnceExit ( decl , { result } ) {
889
+ result . warn ( `Warning from ${ result . opts . from } ` , {
890
+ plugin : "warning-plugin" ,
891
+ } ) ;
892
+ } ,
893
+ } ;
894
+ } ;
895
+
896
+ plugin . postcss = true ;
897
+
898
+ return postcss ( [ plugin ] )
873
899
. process ( input , { from : fileName , to : fileName } )
874
900
. then ( ( result ) => {
875
901
return {
0 commit comments