@@ -3,7 +3,29 @@ import { isBetween } from "@auaust/primitive-kit/numbers";
33import { describe , expect , it } from "vitest" ;
44
55describe ( "isBetween()" , ( ) => {
6- it ( "should work" , ( ) => {
7- expect ( isBetween ) . toBeTypeOf ( "function" ) ;
6+ it ( "should return true if the number is between the two bounds inclusive" , ( ) => {
7+ expect ( isBetween ( 4 , 3 , 5 ) ) . toBe ( true ) ;
8+ expect ( isBetween ( 3 , 3 , 3 ) ) . toBe ( true ) ;
9+ expect ( isBetween ( 5 , 3 , 5 ) ) . toBe ( true ) ;
10+ } ) ;
11+
12+ it ( "should return false if the number is not between the two bounds inclusive" , ( ) => {
13+ expect ( isBetween ( 2 , 3 , 5 ) ) . toBe ( false ) ;
14+ expect ( isBetween ( 6 , 3 , 5 ) ) . toBe ( false ) ;
15+ } ) ;
16+
17+ it ( "should return false for any bounds if the number is NaN" , ( ) => {
18+ expect ( isBetween ( NaN , 3 , 5 ) ) . toBe ( false ) ;
19+ expect ( isBetween ( 4 , NaN , 5 ) ) . toBe ( false ) ;
20+ expect ( isBetween ( 4 , 3 , NaN ) ) . toBe ( false ) ;
21+ expect ( isBetween ( NaN , NaN , NaN ) ) . toBe ( false ) ;
22+ } ) ;
23+
24+ it ( "should hendle Infinity and -Infinity as lower than or greater than checks" , ( ) => {
25+ expect ( isBetween ( 4 , - Infinity , Infinity ) ) . toBe ( true ) ;
26+ expect ( isBetween ( 10 , 0 , Infinity ) ) . toBe ( true ) ;
27+ expect ( isBetween ( - 10 , 0 , Infinity ) ) . toBe ( false ) ;
28+ expect ( isBetween ( 4 , - Infinity , 5 ) ) . toBe ( true ) ;
29+ expect ( isBetween ( 6 , - Infinity , 5 ) ) . toBe ( false ) ;
830 } ) ;
931} ) ;
0 commit comments