@@ -232,11 +232,60 @@ map_test_()->
232232
233233int_test_ () ->
234234 [
235- {" " ,
235+ {" negative fixnum " ,
236236 fun () ->
237- Term = - 2147483649 ,
237+ Term = - 32 ,
238238 Binary = pack (Term ),
239+ ? assertEqual (1 , byte_size (Binary )),
239240 ? assertEqual ({ok , Term }, unpack (Binary ))
241+ end },
242+ {" int 8" ,
243+ fun () ->
244+ Term = - 33 ,
245+ Binary = pack (Term ),
246+ ? assertEqual (2 , byte_size (Binary )),
247+ ? assertEqual ({ok , Term }, unpack (Binary )),
248+
249+ Term2 = - 128 ,
250+ Binary2 = pack (Term2 ),
251+ ? assertEqual (2 , byte_size (Binary2 )),
252+ ? assertEqual ({ok , Term2 }, unpack (Binary2 ))
253+ end },
254+ {" int 16" ,
255+ fun () ->
256+ Term = - 129 ,
257+ Binary = pack (Term ),
258+ ? assertEqual (3 , byte_size (Binary )),
259+ ? assertEqual ({ok , Term }, unpack (Binary )),
260+
261+ Term2 = - 16#8000 ,
262+ Binary2 = pack (Term2 ),
263+ ? assertEqual (3 , byte_size (Binary2 )),
264+ ? assertEqual ({ok , Term2 }, unpack (Binary2 ))
265+ end },
266+ {" int 32" ,
267+ fun () ->
268+ Term = - 16#8001 ,
269+ Binary = pack (Term ),
270+ ? assertEqual (5 , byte_size (Binary )),
271+ ? assertEqual ({ok , Term }, unpack (Binary )),
272+
273+ Term2 = - 16#80000000 ,
274+ Binary2 = pack (Term2 ),
275+ ? assertEqual (5 , byte_size (Binary2 )),
276+ ? assertEqual ({ok , Term2 }, unpack (Binary2 ))
277+ end },
278+ {" int 64" ,
279+ fun () ->
280+ Term = - 16#80000001 ,
281+ Binary = pack (Term ),
282+ ? assertEqual (9 , byte_size (Binary )),
283+ ? assertEqual ({ok , Term }, unpack (Binary )),
284+
285+ Term2 = - 16#8000000000000000 ,
286+ Binary2 = pack (Term2 ),
287+ ? assertEqual (9 , byte_size (Binary2 )),
288+ ? assertEqual ({ok , Term2 }, unpack (Binary2 ))
240289 end }
241290 ].
242291
0 commit comments