File tree Expand file tree Collapse file tree 2 files changed +10
-3
lines changed Expand file tree Collapse file tree 2 files changed +10
-3
lines changed Original file line number Diff line number Diff line change @@ -19,6 +19,7 @@ const minVersion = (range, loose) => {
1919 for ( let i = 0 ; i < range . set . length ; ++ i ) {
2020 const comparators = range . set [ i ]
2121
22+ let setMin = null
2223 comparators . forEach ( ( comparator ) => {
2324 // Clone to avoid manipulating the comparator's semver object.
2425 const compver = new SemVer ( comparator . semver . version )
@@ -33,8 +34,8 @@ const minVersion = (range, loose) => {
3334 /* fallthrough */
3435 case '' :
3536 case '>=' :
36- if ( ! minver || gt ( minver , compver ) ) {
37- minver = compver
37+ if ( ! setMin || gt ( compver , setMin ) ) {
38+ setMin = compver
3839 }
3940 break
4041 case '<' :
@@ -46,6 +47,8 @@ const minVersion = (range, loose) => {
4647 throw new Error ( `Unexpected operation: ${ comparator . operator } ` )
4748 }
4849 } )
50+ if ( setMin && ( ! minver || gt ( minver , setMin ) ) )
51+ minver = setMin
4952 }
5053
5154 if ( minver && range . test ( minver ) ) {
Original file line number Diff line number Diff line change @@ -33,6 +33,7 @@ test('minimum version in range tests', (t) => {
3333 [ '^1.1.1' , '1.1.1' ] ,
3434 [ '^1.1.1-beta' , '1.1.1-beta' ] ,
3535 [ '^1.1.1 || >=2' , '1.1.1' ] ,
36+ [ '^2.16.2 ^2.16' , '2.16.2' ] ,
3637
3738 // '-' operator
3839 [ '1.1.1 - 1.8.0' , '1.1.1' ] ,
@@ -69,7 +70,10 @@ test('minimum version in range tests', (t) => {
6970 const loose = tuple [ 2 ] || false
7071 const msg = `minVersion(${ range } , ${ loose } ) = ${ version } `
7172 const min = minVersion ( range , loose )
72- t . ok ( min === version || ( min && min . version === version ) , msg )
73+ t . ok ( min === version || ( min && min . version === version ) , msg , {
74+ found : min ,
75+ wanted : version ,
76+ } )
7377 } )
7478 t . end ( )
7579} )
You can’t perform that action at this time.
0 commit comments