1
+ var path = require ( 'path' ) ;
1
2
var test = require ( 'tape' ) ;
2
3
var resolve = require ( '../' ) ;
3
4
4
5
test ( 'mock' , function ( t ) {
5
6
t . plan ( 6 ) ;
6
7
7
- var files = {
8
- '/foo/bar/baz.js' : 'beep'
9
- } ;
8
+ var files = { } ;
9
+ files [ path . resolve ( '/foo/bar/baz.js' ) ] = 'beep' ;
10
10
11
11
function opts ( basedir ) {
12
12
return {
13
- basedir : basedir ,
13
+ basedir : path . resolve ( basedir ) ,
14
14
isFile : function ( file , cb ) {
15
- cb ( null , Object . prototype . hasOwnProperty . call ( files , file ) ) ;
15
+ cb ( null , Object . prototype . hasOwnProperty . call ( files , path . resolve ( file ) ) ) ;
16
16
} ,
17
17
readFile : function ( file , cb ) {
18
- cb ( null , files [ file ] ) ;
18
+ cb ( null , files [ path . resolve ( file ) ] ) ;
19
19
}
20
20
} ;
21
21
}
22
22
23
23
resolve ( './baz' , opts ( '/foo/bar' ) , function ( err , res , pkg ) {
24
- if ( err ) t . fail ( err ) ;
25
- t . equal ( res , '/foo/bar/baz.js' ) ;
24
+ if ( err ) return t . fail ( err ) ;
25
+ t . equal ( res , path . resolve ( '/foo/bar/baz.js' ) ) ;
26
26
t . equal ( pkg , undefined ) ;
27
27
} ) ;
28
28
29
29
resolve ( './baz.js' , opts ( '/foo/bar' ) , function ( err , res , pkg ) {
30
- if ( err ) t . fail ( err ) ;
31
- t . equal ( res , '/foo/bar/baz.js' ) ;
30
+ if ( err ) return t . fail ( err ) ;
31
+ t . equal ( res , path . resolve ( '/foo/bar/baz.js' ) ) ;
32
32
t . equal ( pkg , undefined ) ;
33
33
} ) ;
34
34
35
35
resolve ( 'baz' , opts ( '/foo/bar' ) , function ( err , res ) {
36
- t . equal ( err . message , "Cannot find module 'baz' from '/foo/bar'" ) ;
36
+ t . equal ( err . message , "Cannot find module 'baz' from '" + path . resolve ( ' /foo/bar' ) + " '") ;
37
37
} ) ;
38
38
39
39
resolve ( '../baz' , opts ( '/foo/bar' ) , function ( err , res ) {
40
- t . equal ( err . message , "Cannot find module '../baz' from '/foo/bar'" ) ;
40
+ t . equal ( err . message , "Cannot find module '../baz' from '" + path . resolve ( ' /foo/bar' ) + " '") ;
41
41
} ) ;
42
42
} ) ;
43
43
44
44
test ( 'mock from package' , function ( t ) {
45
45
t . plan ( 6 ) ;
46
46
47
- var files = {
48
- '/foo/bar/baz.js' : 'beep'
49
- } ;
47
+ var files = { } ;
48
+ files [ path . resolve ( '/foo/bar/baz.js' ) ] = 'beep' ;
50
49
51
50
function opts ( basedir ) {
52
51
return {
53
- basedir : basedir ,
52
+ basedir : path . resolve ( basedir ) ,
54
53
isFile : function ( file , cb ) {
55
54
cb ( null , Object . prototype . hasOwnProperty . call ( files , file ) ) ;
56
55
} ,
@@ -62,81 +61,79 @@ test('mock from package', function (t) {
62
61
}
63
62
64
63
resolve ( './baz' , opts ( '/foo/bar' ) , function ( err , res , pkg ) {
65
- if ( err ) t . fail ( err ) ;
66
- t . equal ( res , '/foo/bar/baz.js' ) ;
67
- t . equal ( pkg . main , 'bar' ) ;
64
+ if ( err ) return t . fail ( err ) ;
65
+ t . equal ( res , path . resolve ( '/foo/bar/baz.js' ) ) ;
66
+ t . equal ( pkg && pkg . main , 'bar' ) ;
68
67
} ) ;
69
68
70
69
resolve ( './baz.js' , opts ( '/foo/bar' ) , function ( err , res , pkg ) {
71
- if ( err ) t . fail ( err ) ;
72
- t . equal ( res , '/foo/bar/baz.js' ) ;
73
- t . equal ( pkg . main , 'bar' ) ;
70
+ if ( err ) return t . fail ( err ) ;
71
+ t . equal ( res , path . resolve ( '/foo/bar/baz.js' ) ) ;
72
+ t . equal ( pkg && pkg . main , 'bar' ) ;
74
73
} ) ;
75
74
76
75
resolve ( 'baz' , opts ( '/foo/bar' ) , function ( err , res ) {
77
- t . equal ( err . message , "Cannot find module 'baz' from '/foo/bar'" ) ;
76
+ t . equal ( err . message , "Cannot find module 'baz' from '" + path . resolve ( ' /foo/bar' ) + " '") ;
78
77
} ) ;
79
78
80
79
resolve ( '../baz' , opts ( '/foo/bar' ) , function ( err , res ) {
81
- t . equal ( err . message , "Cannot find module '../baz' from '/foo/bar'" ) ;
80
+ t . equal ( err . message , "Cannot find module '../baz' from '" + path . resolve ( ' /foo/bar' ) + " '") ;
82
81
} ) ;
83
82
} ) ;
84
83
85
84
test ( 'mock package' , function ( t ) {
86
85
t . plan ( 2 ) ;
87
86
88
- var files = {
89
- '/foo/node_modules/bar/baz.js' : 'beep' ,
90
- '/foo/node_modules/bar/package.json' : JSON . stringify ( {
91
- main : './baz.js'
92
- } )
93
- } ;
87
+ var files = { } ;
88
+ files [ path . resolve ( '/foo/node_modules/bar/baz.js' ) ] = 'beep' ;
89
+ files [ path . resolve ( '/foo/node_modules/bar/package.json' ) ] = JSON . stringify ( {
90
+ main : './baz.js'
91
+ } ) ;
94
92
95
93
function opts ( basedir ) {
96
94
return {
97
- basedir : basedir ,
95
+ basedir : path . resolve ( basedir ) ,
98
96
isFile : function ( file , cb ) {
99
- cb ( null , Object . prototype . hasOwnProperty . call ( files , file ) ) ;
97
+ cb ( null , Object . prototype . hasOwnProperty . call ( files , path . resolve ( file ) ) ) ;
100
98
} ,
101
99
readFile : function ( file , cb ) {
102
- cb ( null , files [ file ] ) ;
100
+ cb ( null , files [ path . resolve ( file ) ] ) ;
103
101
}
104
102
} ;
105
103
}
106
104
107
105
resolve ( 'bar' , opts ( '/foo' ) , function ( err , res , pkg ) {
108
- if ( err ) t . fail ( err ) ;
109
- t . equal ( res , '/foo/node_modules/bar/baz.js' ) ;
110
- t . equal ( pkg . main , './baz.js' ) ;
106
+ if ( err ) return t . fail ( err ) ;
107
+ t . equal ( res , path . resolve ( '/foo/node_modules/bar/baz.js' ) ) ;
108
+ t . equal ( pkg && pkg . main , './baz.js' ) ;
111
109
} ) ;
112
110
} ) ;
113
111
114
112
test ( 'mock package from package' , function ( t ) {
115
113
t . plan ( 2 ) ;
116
114
117
- var files = {
118
- '/foo/node_modules/bar/baz.js' : 'beep' ,
119
- '/foo/node_modules/bar/package.json' : JSON . stringify ( {
120
- main : './baz.js'
121
- } )
122
- } ;
115
+ var files = { } ;
116
+ files [ path . resolve ( '/foo/node_modules/bar/baz.js' ) ] = 'beep' ;
117
+ files [ path . resolve ( '/foo/node_modules/bar/package.json' ) ] = JSON . stringify ( {
118
+ main : './baz.js'
119
+ } ) ;
123
120
124
121
function opts ( basedir ) {
125
122
return {
126
- basedir : basedir ,
123
+ basedir : path . resolve ( basedir ) ,
127
124
isFile : function ( file , cb ) {
128
- cb ( null , Object . prototype . hasOwnProperty . call ( files , file ) ) ;
125
+ cb ( null , Object . prototype . hasOwnProperty . call ( files , path . resolve ( file ) ) ) ;
129
126
} ,
130
127
'package' : { main : 'bar' } ,
131
128
readFile : function ( file , cb ) {
132
- cb ( null , files [ file ] ) ;
129
+ cb ( null , files [ path . resolve ( file ) ] ) ;
133
130
}
134
131
} ;
135
132
}
136
133
137
134
resolve ( 'bar' , opts ( '/foo' ) , function ( err , res , pkg ) {
138
- if ( err ) t . fail ( err ) ;
139
- t . equal ( res , '/foo/node_modules/bar/baz.js' ) ;
140
- t . equal ( pkg . main , './baz.js' ) ;
135
+ if ( err ) return t . fail ( err ) ;
136
+ t . equal ( res , path . resolve ( '/foo/node_modules/bar/baz.js' ) ) ;
137
+ t . equal ( pkg && pkg . main , './baz.js' ) ;
141
138
} ) ;
142
139
} ) ;
0 commit comments