@@ -243,6 +243,7 @@ describe('with package exports resolution enabled', () => {
243
243
'.' : './index.js' ,
244
244
'./foo.js' : './lib/foo.js' ,
245
245
'./baz' : './node_modules/baz/index.js' ,
246
+ './metadata.json' : './metadata.min.json' ,
246
247
} ,
247
248
} ) ,
248
249
'/root/node_modules/test-pkg/index.js' : '' ,
@@ -253,6 +254,8 @@ describe('with package exports resolution enabled', () => {
253
254
'/root/node_modules/test-pkg/lib/foo.ios.js' : '' ,
254
255
'/root/node_modules/test-pkg/private/bar.js' : '' ,
255
256
'/root/node_modules/test-pkg/node_modules/baz/index.js' : '' ,
257
+ '/root/node_modules/test-pkg/metadata.json' : '' ,
258
+ '/root/node_modules/test-pkg/metadata.min.json' : '' ,
256
259
} ) ,
257
260
originModulePath : '/root/src/main.js' ,
258
261
unstable_enablePackageExports : true ,
@@ -305,6 +308,31 @@ describe('with package exports resolution enabled', () => {
305
308
` ) ;
306
309
} ) ;
307
310
311
+ test ( 'should not use "exports" for internal relative imports within a package' , ( ) => {
312
+ const context = {
313
+ ...baseContext ,
314
+ originModulePath : '/root/node_modules/test-pkg/lib/foo.js' ,
315
+ } ;
316
+
317
+ expect ( Resolver . resolve ( context , '../metadata.json' , null ) ) . toEqual ( {
318
+ type : 'sourceFile' ,
319
+ filePath : '/root/node_modules/test-pkg/metadata.json' ,
320
+ } ) ;
321
+ } ) ;
322
+
323
+ test ( 'should not use "exports" for an absolute import path' , ( ) => {
324
+ expect (
325
+ Resolver . resolve (
326
+ baseContext ,
327
+ '/root/node_modules/test-pkg/metadata.json' ,
328
+ null ,
329
+ ) ,
330
+ ) . toEqual ( {
331
+ type : 'sourceFile' ,
332
+ filePath : '/root/node_modules/test-pkg/metadata.json' ,
333
+ } ) ;
334
+ } ) ;
335
+
308
336
describe ( 'should resolve "exports" target directly' , ( ) => {
309
337
test ( 'without expanding `sourceExts`' , ( ) => {
310
338
expect ( Resolver . resolve ( baseContext , 'test-pkg/foo.js' , null ) ) . toEqual ( {
@@ -374,13 +402,15 @@ describe('with package exports resolution enabled', () => {
374
402
name : 'test-pkg' ,
375
403
main : 'index.js' ,
376
404
exports : {
405
+ '.' : './src/index.js' ,
377
406
'./features/*.js' : './src/features/*.js' ,
378
407
'./features/bar/*.js' : {
379
408
'react-native' : null ,
380
409
} ,
381
410
'./assets/*' : './assets/*' ,
382
411
} ,
383
412
} ) ,
413
+ '/root/node_modules/test-pkg/src/index.js' : '' ,
384
414
'/root/node_modules/test-pkg/src/features/foo.js' : '' ,
385
415
'/root/node_modules/test-pkg/src/features/foo.js.js' : '' ,
386
416
'/root/node_modules/test-pkg/src/features/bar/Bar.js' : '' ,
0 commit comments