@@ -507,6 +507,18 @@ describe("basic functionality", () => {
507
507
508
508
@Type ( type => String )
509
509
lastVisitDate : string ;
510
+
511
+ @Type ( type => String )
512
+ nullableString ?: null | string ;
513
+
514
+ @Type ( type => Number )
515
+ nullableNumber ?: null | number ;
516
+
517
+ @Type ( type => Boolean )
518
+ nullableBoolean ?: null | boolean ;
519
+
520
+ @Type ( type => Date )
521
+ nullableDate ?: null | Date ;
510
522
}
511
523
512
524
const date = new Date ( ) ;
@@ -517,14 +529,22 @@ describe("basic functionality", () => {
517
529
user . isActive = "1" as any ;
518
530
user . registrationDate = date . toString ( ) as any ;
519
531
user . lastVisitDate = date as any ;
532
+ user . nullableString = null as any ;
533
+ user . nullableNumber = null as any ;
534
+ user . nullableBoolean = null as any ;
535
+ user . nullableDate = null as any ;
520
536
521
537
const fromPlainUser = {
522
538
firstName : 321 ,
523
539
lastName : 123 ,
524
540
password : "123" ,
525
541
isActive : "1" ,
526
542
registrationDate : date . toString ( ) ,
527
- lastVisitDate : date
543
+ lastVisitDate : date ,
544
+ nullableString : null as null | string ,
545
+ nullableNumber : null as null | string ,
546
+ nullableBoolean : null as null | string ,
547
+ nullableDate : null as null | string ,
528
548
} ;
529
549
530
550
const fromExistUser = new User ( ) ;
@@ -539,6 +559,10 @@ describe("basic functionality", () => {
539
559
isActive : true ,
540
560
registrationDate : new Date ( date . toString ( ) ) ,
541
561
lastVisitDate : date . toString ( ) ,
562
+ nullableString : null ,
563
+ nullableNumber : null ,
564
+ nullableBoolean : null ,
565
+ nullableDate : null ,
542
566
} ) ;
543
567
544
568
const existUser = { id : 1 , age : 27 } ;
@@ -553,6 +577,10 @@ describe("basic functionality", () => {
553
577
isActive : true ,
554
578
registrationDate : new Date ( date . toString ( ) ) ,
555
579
lastVisitDate : date . toString ( ) ,
580
+ nullableString : null ,
581
+ nullableNumber : null ,
582
+ nullableBoolean : null ,
583
+ nullableDate : null ,
556
584
} ) ;
557
585
plainUser2 . should . be . equal ( existUser ) ;
558
586
@@ -565,6 +593,10 @@ describe("basic functionality", () => {
565
593
isActive : true ,
566
594
registrationDate : new Date ( date . toString ( ) ) ,
567
595
lastVisitDate : date . toString ( ) ,
596
+ nullableString : null ,
597
+ nullableNumber : null ,
598
+ nullableBoolean : null ,
599
+ nullableDate : null ,
568
600
} ) ;
569
601
570
602
const fromExistTransformedUser = plainToClassFromExist ( fromExistUser , fromPlainUser , { strategy : "exposeAll" } ) ;
@@ -577,6 +609,10 @@ describe("basic functionality", () => {
577
609
isActive : true ,
578
610
registrationDate : new Date ( date . toString ( ) ) ,
579
611
lastVisitDate : date . toString ( ) ,
612
+ nullableString : null ,
613
+ nullableNumber : null ,
614
+ nullableBoolean : null ,
615
+ nullableDate : null ,
580
616
} ) ;
581
617
582
618
const classToClassUser = classToClass ( user , { strategy : "exposeAll" } ) ;
@@ -589,6 +625,10 @@ describe("basic functionality", () => {
589
625
isActive : true ,
590
626
registrationDate : new Date ( date . toString ( ) ) ,
591
627
lastVisitDate : date . toString ( ) ,
628
+ nullableString : null ,
629
+ nullableNumber : null ,
630
+ nullableBoolean : null ,
631
+ nullableDate : null ,
592
632
} ) ;
593
633
594
634
const classToClassFromExistUser = classToClassFromExist ( user , fromExistUser , { strategy : "exposeAll" } ) ;
@@ -603,6 +643,10 @@ describe("basic functionality", () => {
603
643
isActive : true ,
604
644
registrationDate : new Date ( date . toString ( ) ) ,
605
645
lastVisitDate : date . toString ( ) ,
646
+ nullableString : null ,
647
+ nullableNumber : null ,
648
+ nullableBoolean : null ,
649
+ nullableDate : null ,
606
650
} ) ;
607
651
} ) ;
608
652
@@ -1694,4 +1738,4 @@ describe("basic functionality", () => {
1694
1738
transformedClass . should . be . instanceOf ( TestClass ) ;
1695
1739
} ) ;
1696
1740
1697
- } ) ;
1741
+ } ) ;
0 commit comments