package Ġpro . j ait l . dynamodb . mapper . converter . type čĊč Ċ import Ġpro . j ait l . dynamodb . mapper . Mapper č Ċ import Ġpro . j ait l . dynamodb . mapper . Unknown Type Exception č Ċ import Ġpro . j ait l . dynamodb . mapper . attribute . number Attribute č Ċ import Ġkotlin . test . Test č Ċ import Ġkotlin . test . assertEquals čĊč Ċ internal Ġclass ĠNumber Converter Test Ġ{ čĊĠĠĠ Ġval Ġmapper Ġ= ĠMapper () čĊčĊĠĠĠ Ġdata Ġclass ĠNumber Data ( čĊĠĠĠĠĠĠĠ Ġval Ġbyte : ĠByte , čĊĠĠĠĠĠĠĠ Ġval Ġshort : ĠShort , čĊĠĠĠĠĠĠĠ Ġval Ġint : ĠInt , čĊĠĠĠĠĠĠĠ Ġval Ġlong : ĠLong , čĊĠĠĠĠĠĠĠ Ġval Ġfloat : ĠFloat , čĊĠĠĠĠĠĠĠ Ġval Ġdouble : ĠDouble čĊĠĠĠ Ġ) čĊčĊĠĠĠ Ġ@ Test čĊĠĠĠ Ġfun Ġtest Write Value () Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġdata Ġ= ĠNumber Data ( 1 , Ġ 2 , Ġ 3 , Ġ 4 , Ġ 5 . 0 f , Ġ 6 . 0 ) čĊčĊĠĠĠĠĠĠĠ Ġval Ġattr Map Ġ= Ġmapper . write Object ( data ) čĊčĊĠĠĠĠĠĠĠ Ġval Ġexpected Map Ġ= Ġmap Of ( čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" byte " Ġto Ġnumber Attribute ( 1 ), čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" short " Ġto Ġnumber Attribute ( 2 ), čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" int " Ġto Ġnumber Attribute ( 3 ), čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" long " Ġto Ġnumber Attribute ( 4 ), čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" float " Ġto Ġnumber Attribute ( 5 . 0 f ), čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" double " Ġto Ġnumber Attribute ( 6 . 0 ), čĊĠĠĠĠĠĠĠ Ġ) čĊčĊĠĠĠĠĠĠĠ ĠassertEquals ( expected Map , Ġattr Map ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Test čĊĠĠĠ Ġfun Ġtest Read Value () Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġexpected Data Ġ= ĠNumber Data ( 1 , Ġ 2 , Ġ 3 , Ġ 4 , Ġ 5 . 0 f , Ġ 6 . 0 ) čĊčĊĠĠĠĠĠĠĠ Ġval Ġattr Map Ġ= Ġmap Of ( čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" byte " Ġto Ġnumber Attribute ( 1 ), čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" short " Ġto Ġnumber Attribute ( 2 ), čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" int " Ġto Ġnumber Attribute ( 3 ), čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" long " Ġto Ġnumber Attribute ( 4 ), čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" float " Ġto Ġnumber Attribute ( 5 . 0 f ), čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" double " Ġto Ġnumber Attribute ( 6 . 0 ), čĊĠĠĠĠĠĠĠ Ġ) čĊčĊĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġmapper . read Object ( attr Map , ĠNumber Data :: class ) čĊčĊĠĠĠĠĠĠĠ ĠassertEquals ( expected Data , Ġdata ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Test ( expected Ġ= ĠUnknown Type Exception :: class ) čĊĠĠĠ Ġfun Ġtest Read Unsupported Type () Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġmap Of (" number " Ġto Ġnumber Attribute ( 1 )) čĊĠĠĠĠĠĠĠ Ġdata Ġclass ĠMy Data ( val Ġnumber : ĠMy Test Number ) čĊčĊĠĠĠĠĠĠĠ Ġmapper . read Object ( data , ĠMy Data :: class ) čĊĠĠĠ Ġ} č Ċ } čĊ