1
- require ( './source-map-support' ) . install ( {
1
+ const underTest = require ( './source-map-support' ) ;
2
+ underTest . install ( {
2
3
emptyCacheBetweenOperations : true // Needed to be able to test for failure
3
4
} ) ;
4
5
@@ -680,3 +681,36 @@ it('supports multiple instances', function(done) {
680
681
/ ^ a t f o o \( (?: .* [ / \\ ] ) ? .o r i g i n a l 2 \. j s : 1 : 1 \) $ /
681
682
] ) ;
682
683
} ) ;
684
+
685
+ describe ( 'redirects require() of "source-map-support" to this module' , function ( ) {
686
+ it ( 'redirects' , function ( ) {
687
+ assert . strictEqual ( require . resolve ( 'source-map-support' ) , require . resolve ( '.' ) ) ;
688
+ assert . strictEqual ( require . resolve ( 'source-map-support/register' ) , require . resolve ( './register' ) ) ;
689
+ assert . strictEqual ( require ( 'source-map-support' ) , require ( '.' ) ) ;
690
+ } ) ;
691
+
692
+ it ( 'emits notifications' , function ( ) {
693
+ let onConflictingLibraryRedirectCalls = [ ] ;
694
+ let onConflictingLibraryRedirectCalls2 = [ ] ;
695
+ underTest . install ( {
696
+ onConflictingLibraryRedirect ( request , parent , isMain , redirectedRequest ) {
697
+ onConflictingLibraryRedirectCalls . push ( [ ...arguments ] ) ;
698
+ }
699
+ } ) ;
700
+ underTest . install ( {
701
+ onConflictingLibraryRedirect ( request , parent , isMain , redirectedRequest ) {
702
+ onConflictingLibraryRedirectCalls2 . push ( [ ...arguments ] ) ;
703
+ }
704
+ } ) ;
705
+ require . resolve ( 'source-map-support' ) ;
706
+ assert . strictEqual ( onConflictingLibraryRedirectCalls . length , 1 ) ;
707
+ assert . strictEqual ( onConflictingLibraryRedirectCalls2 . length , 1 ) ;
708
+ for ( const args of [ onConflictingLibraryRedirectCalls [ 0 ] , onConflictingLibraryRedirectCalls2 [ 0 ] ] ) {
709
+ const [ request , parent , isMain , redirectedRequest ] = args ;
710
+ assert . strictEqual ( request , 'source-map-support' ) ;
711
+ assert . strictEqual ( parent , module ) ;
712
+ assert . strictEqual ( isMain , false ) ;
713
+ assert . strictEqual ( redirectedRequest , require . resolve ( '.' ) ) ;
714
+ }
715
+ } ) ;
716
+ } ) ;
0 commit comments