@@ -4,51 +4,55 @@ const chai = require('chai');
4
4
const expect = chai . expect ;
5
5
const path = require ( 'path' ) ;
6
6
7
- const webpack = require ( '../' ) ;
7
+ const resolver = require ( '../' ) ;
8
8
9
9
const file = path . join ( __dirname , 'package-mains' , 'dummy.js' ) ;
10
10
11
11
12
12
describe ( 'packageMains' , function ( ) {
13
13
14
14
it ( 'captures module' , function ( ) {
15
- expect ( webpack . resolve ( './module' , file ) ) . property ( 'path' )
15
+ expect ( resolver . resolve ( './module' , file ) ) . property ( 'path' )
16
16
. to . equal ( path . join ( __dirname , 'package-mains' , 'module' , 'src' , 'index.js' ) ) ;
17
17
} ) ;
18
18
19
19
it ( 'captures jsnext' , function ( ) {
20
- expect ( webpack . resolve ( './jsnext' , file ) ) . property ( 'path' )
20
+ expect ( resolver . resolve ( './jsnext' , file ) ) . property ( 'path' )
21
21
. to . equal ( path . join ( __dirname , 'package-mains' , 'jsnext' , 'src' , 'index.js' ) ) ;
22
22
} ) ;
23
23
24
24
it ( 'captures module instead of jsnext' , function ( ) {
25
- expect ( webpack . resolve ( './module-and-jsnext' , file ) ) . property ( 'path' )
25
+ expect ( resolver . resolve ( './module-and-jsnext' , file ) ) . property ( 'path' )
26
26
. to . equal ( path . join ( __dirname , 'package-mains' , 'module-and-jsnext' , 'src' , 'index.js' ) ) ;
27
27
} ) ;
28
28
29
+ it ( 'falls back from a missing "module" to "main"' , function ( ) {
30
+ expect ( resolver . resolve ( './module-broken' , file ) ) . property ( 'path' )
31
+ . to . equal ( path . join ( __dirname , 'package-mains' , 'module-broken' , 'main.js' ) ) ;
32
+ } ) ;
33
+
29
34
it ( 'captures webpack' , function ( ) {
30
- expect ( webpack . resolve ( './webpack' , file ) ) . property ( 'path' )
35
+ expect ( resolver . resolve ( './webpack' , file ) ) . property ( 'path' )
31
36
. to . equal ( path . join ( __dirname , 'package-mains' , 'webpack' , 'webpack.js' ) ) ;
32
37
} ) ;
33
38
34
39
it ( 'captures jam (array path)' , function ( ) {
35
- expect ( webpack . resolve ( './jam' , file ) ) . property ( 'path' )
40
+ expect ( resolver . resolve ( './jam' , file ) ) . property ( 'path' )
36
41
. to . equal ( path . join ( __dirname , 'package-mains' , 'jam' , 'jam.js' ) ) ;
37
42
} ) ;
38
43
39
44
it ( 'uses configured packageMains, if provided' , function ( ) {
40
- expect ( webpack . resolve ( './webpack' , file , { config : 'webpack.alt.config.js' } ) ) . property ( 'path' )
45
+ expect ( resolver . resolve ( './webpack' , file , { config : 'webpack.alt.config.js' } ) ) . property ( 'path' )
41
46
. to . equal ( path . join ( __dirname , 'package-mains' , 'webpack' , 'index.js' ) ) ;
42
47
} ) ;
43
48
44
49
it ( 'always defers to module, regardless of config' , function ( ) {
45
- expect ( webpack . resolve ( './module' , file , { config : 'webpack.alt.config.js' } ) ) . property ( 'path' )
50
+ expect ( resolver . resolve ( './module' , file , { config : 'webpack.alt.config.js' } ) ) . property ( 'path' )
46
51
. to . equal ( path . join ( __dirname , 'package-mains' , 'module' , 'src' , 'index.js' ) ) ;
47
52
} ) ;
48
53
49
54
it ( 'always defers to jsnext:main, regardless of config' , function ( ) {
50
- expect ( webpack . resolve ( './jsnext' , file , { config : 'webpack.alt.config.js' } ) ) . property ( 'path' )
55
+ expect ( resolver . resolve ( './jsnext' , file , { config : 'webpack.alt.config.js' } ) ) . property ( 'path' )
51
56
. to . equal ( path . join ( __dirname , 'package-mains' , 'jsnext' , 'src' , 'index.js' ) ) ;
52
57
} ) ;
53
-
54
58
} ) ;
0 commit comments