@@ -15,9 +15,15 @@ function d([str]) {
15
15
describe ( 'loader' , ( ) => {
16
16
function testLoader ( fileName , callback , query , version = 2 ) {
17
17
return done => {
18
- function cb ( ) {
18
+ const addedDependencies = new Set ( ) ;
19
+
20
+ function cb ( ...args ) {
21
+ while ( args . length < 4 ) {
22
+ args . push ( undefined ) ;
23
+ }
24
+ args . push ( addedDependencies ) ;
19
25
try {
20
- callback ( ...[ ] . slice . call ( arguments ) ) ;
26
+ callback ( ...args ) ;
21
27
} catch ( err ) {
22
28
expect ( callbackSpy ) . to . have . been . called ;
23
29
return done ( err ) ;
@@ -32,10 +38,13 @@ describe('loader', () => {
32
38
33
39
const callbackSpy = spy ( cb ) ;
34
40
41
+ const dependencySpy = spy ( function ( p ) { addedDependencies . add ( p ) ; } ) ;
42
+
35
43
loader . call (
36
44
{
37
45
cacheable : cacheableSpy ,
38
46
async : ( ) => callbackSpy ,
47
+ addDependency : dependencySpy ,
39
48
resourcePath : fileName ,
40
49
version,
41
50
query
@@ -45,6 +54,10 @@ describe('loader', () => {
45
54
) ;
46
55
47
56
expect ( cacheableSpy ) . to . have . been . called ;
57
+
58
+ for ( const call of dependencySpy . getCalls ( ) ) {
59
+ expect ( call . firstArg ) . to . be . a ( 'string' ) ;
60
+ }
48
61
} ;
49
62
}
50
63
@@ -246,23 +259,18 @@ describe('loader', () => {
246
259
} ) ;
247
260
248
261
it ( 'should not preprocess successfully' , done => {
249
- const { warn } = console ;
250
- const warnings = [ ] ;
251
-
252
- console . warn = msg => {
253
- warnings . push ( msg ) ;
254
- } ;
255
-
256
262
testLoader (
257
263
'test/fixtures/style-valid.html' ,
258
- ( err , code , map ) => {
264
+ ( err , code , map , context , addedDependencies ) => {
259
265
expect ( err ) . to . exist ;
260
- console . warn = warn ;
266
+ expect ( addedDependencies ) . to . include ( '/some/subresource.css' ) ;
261
267
} ,
262
268
{
263
269
preprocess : {
264
270
style : ( ) => {
265
- throw new Error ( 'Error while preprocessing' ) ;
271
+ const e = new Error ( 'Error while preprocessing' ) ;
272
+ e . filename = '/some/subresource.css' ;
273
+ throw e ;
266
274
}
267
275
}
268
276
}
0 commit comments