File tree 4 files changed +25
-3
lines changed
4 files changed +25
-3
lines changed Original file line number Diff line number Diff line change 1
1
node_modules
2
- dist
2
+ dist
3
+ coverage
Original file line number Diff line number Diff line change @@ -83,7 +83,7 @@ Currently only a few basic types are supported.
83
83
- ` numberParam ` : for numbers (integers and floats)
84
84
- ` objectParam ` : custom Objects that will be serialized to JSON.
85
85
- ` booleanParam ` : for booleans
86
- - ` dateParam ` : for dates
86
+ - ` dateParam ` : for dates and datetime
87
87
- ` arrayParam ` : for arrays of the above types
88
88
NOTE: Nested arrays are currently only possible using ` objectParam ` . e.g.: ` objectParam<number[][]>() ` ;
89
89
Original file line number Diff line number Diff line change 9
9
"prepublish" : " npm run build && npm run test" ,
10
10
"build" : " tsup" ,
11
11
"check" : " tsc --noEmit" ,
12
- "test" : " jest" ,
12
+ "test" : " jest --collectCoverage " ,
13
13
"test:watch" : " jest --watch"
14
14
},
15
15
"repository" : {
Original file line number Diff line number Diff line change
1
+ import { numberParam } from "../converters" ;
2
+ import { withDefault } from "./withDefault" ;
3
+
4
+ describe ( "withDefault" , ( ) => {
5
+ const { serialize, deserialize } = withDefault ( numberParam ( ) , 123 ) ;
6
+
7
+ test ( "returns deserialized value when deserializer returns correct value" , ( ) => {
8
+ expect ( deserialize ( '2' ) ) . toBe ( 2 ) ;
9
+ expect ( deserialize ( '100' ) ) . toBe ( 100 ) ;
10
+ expect ( deserialize ( '-2' ) ) . toBe ( - 2 ) ;
11
+ expect ( deserialize ( '-3.1415' ) ) . toBe ( - 3.1415 ) ;
12
+ } ) ;
13
+
14
+ test ( "returns default value when deserializer returns null" , ( ) => {
15
+ expect ( deserialize ( null ) ) . toBe ( 123 ) ;
16
+ } ) ;
17
+
18
+ test ( "returns default value when deserializer returns undefined" , ( ) => {
19
+ expect ( deserialize ( undefined as unknown as null ) ) . toBe ( 123 ) ;
20
+ } ) ;
21
+ } ) ;
You can’t perform that action at this time.
0 commit comments