@@ -646,6 +646,27 @@ unpack_str_validation_test_() ->
646646 [{spec ,new },{unpack_str ,from_list },{validate_string ,true }]))]}
647647 ].
648648
649+ pack_nil_test_ () ->
650+ ElixirStyleNil = nil ,
651+ NilConversionOpt = [{use_nil , true }],
652+ UseNilDefaultResult = msgpack :pack (ElixirStyleNil ),
653+ UseNilTrueResult = msgpack :pack (ElixirStyleNil , NilConversionOpt ),
654+ [{" use_nil default false" ,
655+ [? _assertEqual ({ok , <<" nil" >>}, msgpack :unpack (UseNilDefaultResult ))]},
656+ {" use_nil explicitly set to true" ,
657+ [? _assertEqual ({ok , null }, msgpack :unpack (UseNilTrueResult ))]}
658+ ].
659+
660+ unpack_nil_test_ () ->
661+ NullPacked = <<16#C0 >>,
662+ NilConversionOpt = [{use_nil , true }],
663+ UseNilDefaultResult = msgpack :unpack (NullPacked ),
664+ UseNilTrueResult = msgpack :unpack (NullPacked , NilConversionOpt ),
665+ [{" use_nil default false" ,
666+ [? _assertEqual ({ok , null }, UseNilDefaultResult )]},
667+ {" use_nil explicitly set to true" ,
668+ [? _assertEqual ({ok , nil }, UseNilTrueResult )]}
669+ ].
649670
650671float_unpacking_test_ () ->
651672 % % float 32
0 commit comments