@@ -29,48 +29,52 @@ describe('node-version', () => {
2929 } ) ;
3030
3131 describe ( 'isNodeVersionSupported' , ( ) => {
32- it ( 'rejects 20.19.0 (below minimum major )' , ( ) => {
33- expect ( isNodeVersionSupported ( 20 , 19 , 0 ) ) . toBe ( false ) ;
32+ it ( 'accepts exact minimum version (22.12.0 )' , ( ) => {
33+ expect ( isNodeVersionSupported ( '22.12.0' ) ) . toBe ( true ) ;
3434 } ) ;
3535
36- it ( 'accepts exact minimum version ( 22.12.0 )' , ( ) => {
37- expect ( isNodeVersionSupported ( 22 , 12 , 0 ) ) . toBe ( true ) ;
36+ it ( 'accepts 22.12.1 (patch above minimum )' , ( ) => {
37+ expect ( isNodeVersionSupported ( '22.12.1' ) ) . toBe ( true ) ;
3838 } ) ;
3939
40- it ( 'rejects version below minimum minor (20.18 .0)' , ( ) => {
41- expect ( isNodeVersionSupported ( 20 , 18 , 0 ) ) . toBe ( false ) ;
40+ it ( 'accepts future major above highest defined (24.0 .0)' , ( ) => {
41+ expect ( isNodeVersionSupported ( '24.0.0' ) ) . toBe ( true ) ;
4242 } ) ;
4343
44- it ( 'rejects version below minimum major (18.0 .0)' , ( ) => {
45- expect ( isNodeVersionSupported ( 18 , 0 , 0 ) ) . toBe ( false ) ;
44+ it ( 'accepts prerelease of a supported version (26.1.0-rc .0)' , ( ) => {
45+ expect ( isNodeVersionSupported ( '26.1.0-rc.0' ) ) . toBe ( true ) ;
4646 } ) ;
4747
48- it ( 'rejects 20.20.0 (below minimum major)' , ( ) => {
49- expect ( isNodeVersionSupported ( 20 , 20 , 0 ) ) . toBe ( false ) ;
48+ it ( 'accepts prerelease of a future major (27.0.0-alpha.1 )' , ( ) => {
49+ expect ( isNodeVersionSupported ( '27.0.0-alpha.1' ) ) . toBe ( true ) ;
5050 } ) ;
5151
52- it ( 'rejects 21 .0.0 (below minimum major )' , ( ) => {
53- expect ( isNodeVersionSupported ( 21 , 0 , 0 ) ) . toBe ( false ) ;
52+ it ( 'accepts nightly builds (26 .0.0-nightly20260915abc1234 )' , ( ) => {
53+ expect ( isNodeVersionSupported ( '26.0.0-nightly20260915abc1234' ) ) . toBe ( true ) ;
5454 } ) ;
5555
56- it ( 'accepts future major above highest defined (24.0 .0)' , ( ) => {
57- expect ( isNodeVersionSupported ( 24 , 0 , 0 ) ) . toBe ( true ) ;
56+ it ( 'rejects a prerelease below the minimum (22.12.0-rc .0)' , ( ) => {
57+ expect ( isNodeVersionSupported ( '22.12.0-rc.0' ) ) . toBe ( false ) ;
5858 } ) ;
5959
6060 it ( 'rejects 22.11.0 (one minor below 22.12)' , ( ) => {
61- expect ( isNodeVersionSupported ( 22 , 11 , 0 ) ) . toBe ( false ) ;
61+ expect ( isNodeVersionSupported ( '22.11.0' ) ) . toBe ( false ) ;
6262 } ) ;
6363
64- it ( 'accepts 22.12.1 (patch above minimum)' , ( ) => {
65- expect ( isNodeVersionSupported ( 22 , 12 , 1 ) ) . toBe ( true ) ;
64+ it ( 'rejects 20.19.0 (below minimum major)' , ( ) => {
65+ expect ( isNodeVersionSupported ( '20.19.0' ) ) . toBe ( false ) ;
66+ } ) ;
67+
68+ it ( 'rejects 21.0.0 (below minimum major)' , ( ) => {
69+ expect ( isNodeVersionSupported ( '21.0.0' ) ) . toBe ( false ) ;
6670 } ) ;
6771
68- it ( 'rejects 19.99.99 ' , ( ) => {
69- expect ( isNodeVersionSupported ( 19 , 99 , 99 ) ) . toBe ( false ) ;
72+ it ( 'rejects 18.0.0 (below minimum major) ' , ( ) => {
73+ expect ( isNodeVersionSupported ( '18.0.0' ) ) . toBe ( false ) ;
7074 } ) ;
7175
72- it ( 'rejects major-only "22" (treated as 22.0.0 which is below 22.12 )' , ( ) => {
73- expect ( isNodeVersionSupported ( 22 , 0 , 0 ) ) . toBe ( false ) ;
76+ it ( 'fails closed for unparseable input (not-a-version )' , ( ) => {
77+ expect ( isNodeVersionSupported ( 'not-a-version' ) ) . toBe ( false ) ;
7478 } ) ;
7579 } ) ;
7680
0 commit comments