package Ġio . lun arch ain . lun ar coin Core . tests Ċ Ċ import Ġio . lun arch ain . lun ar coin . config . Block Chain Config Ċ import Ġio . lun arch ain . lun ar coin . util . Byte Util Ċ import Ġio . lun arch ain . lun ar coin . util . Crypto Util Ċ import Ġio . lun arch ain . lun ar coin . vm . program . invoke . Program Invoke Impl Ċ import Ġio . lun arch ain . lun ar coin . storage . Server Repository Ċ import Ġjunit . framework . Assert . assertEquals Ċ import Ġl un ar . vm . Data Word Ċ import Ġl un ar . vm . program . Program Ċ import Ġl un ar . vm . program . invoke . Program Invoke Ċ import Ġorg . junit . Assert Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ import Ġorg . sp ong ycastle . util . en coders . Hex Ċ import Ġjava . nio . ByteBuffer Ċ Ċ class ĠProgram Memory Test Ġ{ ĊĊĠĠĠ Ġval Ġorigin Priv Key Ġ= ĠCrypto Util . generate KeyPair (). private . encoded ĊĠĠĠ Ġval Ġorigin PubKey Ġ= ĠCrypto Util . generate PublicKey ( Crypto Util . deserialize PrivateKey ( origin Priv Key )) ĊĠĠĠ Ġval Ġorigin Address Ġ= ĠCrypto Util . generate Address ( origin PubKey !! ) ĊĊĠĠĠ Ġval Ġcaller Priv Key Ġ= ĠCrypto Util . generate KeyPair (). private . encoded ĊĠĠĠ Ġval Ġcaller PubKey Ġ= ĠCrypto Util . generate PublicKey ( Crypto Util . deserialize PrivateKey ( caller Priv Key )) ĊĠĠĠ Ġval Ġcaller Address Ġ= ĠCrypto Util . generate Address ( caller PubKey !! ) ĊĊĠĠĠ Ġval Ġbalance Ġ= ĠHex . decode (" 0 DE 0 B 6 B 3 A 7 6 4 0 0 0 0 ") ĊĠĠĠ Ġval Ġmin Gas Price Ġ= ĠHex . decode (" 0 9 1 8 4 e 7 2 a 0 0 0 ") ĊĠĠĠ Ġval Ġgas Limit : ĠLong Ġ= Ġ 1 0 0 0 0 0 0 ĊĠĠĠ Ġval Ġmsg Data Ġ= ĠByteArray ( 3 2 ) ĊĠĠĠ Ġval Ġprev Hash Ġ= ĠHex . decode (" 9 6 1 CB 1 1 7 AB A 8 6 D 1 E 5 9 6 8 5 4 0 1 5 A 1 4 8 3 3 2 3 F 1 8 8 8 3 C 2 D 7 4 5 B 0 BC 0 3 E 8 7 F 1 4 6 D 2 BB 1 C ") ĊĠĠĠ Ġval Ġcoin Base Ġ= ĠHex . decode (" E 5 5 9 DE 5 5 2 7 4 9 2 B CB 4 2 EC 6 8 D 0 7 DF 0 7 4 2 A 9 8 EC 3 F 1 E ") ĊĠĠĠ Ġval Ġtimestamp : ĠLong Ġ= Ġ 1 4 0 1 4 2 1 3 4 8 ĊĠĠĠ Ġval Ġnumber : ĠLong Ġ= Ġ 3 3 ĊĠĠĠ Ġval Ġdifficulty Ġ= ĠHex . decode (" 3 ED 2 9 0 ") ĊĠĠĠ Ġval Ġblock Store Ġ= ĠServer Repository ( Block Chain Config ()) ĊĊĊĊĠĠĠ Ġvar Ġprogram Invoke : ĠProgram Invoke Ġ= ĠProgram Invoke Impl ( ĊĠĠĠĠĠĠĠ ĠData Word (" cd 2 a 3 d 9 f 9 3 8 e 1 3 cd 9 4 7 ec 0 5 abc 7 fe 7 3 4 df 8 dd 8 2 6 "), ĊĠĠĠĠĠĠĠ ĠData Word ( origin Address ), ĊĠĠĠĠĠĠĠ ĠData Word ( caller Address ), ĊĠĠĠĠĠĠĠ ĠData Word ( balance ), ĊĠĠĠĠĠĠĠ ĠData Word ( min Gas Price ), ĊĠĠĠĠĠĠĠ ĠData Word ( gas Limit ), ĊĠĠĠĠĠĠĠ ĠData Word ( balance ), ĊĠĠĠĠĠĠĠ Ġmsg Data , ĊĠĠĠĠĠĠĠ ĠData Word ( prev Hash ), ĊĠĠĠĠĠĠĠ ĠData Word ( coin Base ), ĊĠĠĠĠĠĠĠ ĠData Word ( timestamp ), ĊĠĠĠĠĠĠĠ ĠData Word ( number ), ĊĠĠĠĠĠĠĠ ĠData Word ( difficulty ), ĊĠĠĠĠĠĠĠ ĠData Word ( gas Limit ), ĊĠĠĠĠĠĠĠ Ġblock Store , ĊĠĠĠĠĠĠĠĠ 0 , ĊĠĠĠĠĠĠĠ Ġfalse , ĊĠĠĠĠĠĠĠ Ġfalse ĊĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġvar Ġprogram : ĠProgram ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġmemory : ĠByteBuffer ? Ġ= Ġnull ĊĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun Ġcreate Program () Ġ{ ĊĠĠĠĠĠĠĠ Ġprogram Ġ= ĠProgram ( Byte Util . EMPTY _ BYTE _ ARRAY , Ġprogram Invoke ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun ĠtestGet Mem Size () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmemory Ġ= ĠByteArray ( 6 4 ) ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( memory ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 6 4 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Memory Chunk 1 () Ġ{ ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 1 2 8 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġprogram !!. memory Chunk ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 6 0 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test Ġ// Ġsize Ġ 0 Ġdoesn 't Ġincrease Ġmemory ĊĠĠĠ Ġfun Ġtest Memory Chunk 2 () Ġ{ ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 9 6 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġprogram !!. memory Chunk ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 6 4 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 1 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 6 4 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 2 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ> Ġoffset , Ġ== Ġsize ĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ< Ġoffset Ġ+ Ġsize ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 6 4 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 9 6 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 3 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ> Ġoffset , Ġ> Ġsize ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 6 4 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 4 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 6 4 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 6 4 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 5 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 6 4 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 6 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ== Ġoffset , Ġ> Ġsize ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 6 4 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 9 6 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 7 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ== Ġoffset Ġ- Ġsize ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 9 6 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 2 8 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 8 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 9 6 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 9 6 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 9 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ< Ġoffset , Ġ> Ġsize ĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ< Ġoffset Ġ- Ġsize ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 9 6 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 6 4 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** Ġ*/ ĊĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 1 0 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory Ġ= Ġnull , Ġoffset Ġ> Ġsize ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 0 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 1 1 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory Ġ= Ġnull , Ġoffset Ġ< Ġsize ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 3 2 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 1 2 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ< Ġoffset , Ġ< Ġsize ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 6 4 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 9 6 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 6 0 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 1 3 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ> Ġoffset , Ġ< Ġsize ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 1 2 8 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 6 0 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 1 4 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ< Ġoffset , Ġ== Ġsize ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 9 6 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 6 4 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 6 0 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 1 5 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ== Ġoffset , Ġ< Ġsize ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 6 4 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 9 6 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 6 0 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 1 6 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ== Ġoffset , Ġ== Ġsize ĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ> Ġoffset Ġ- Ġsize ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 6 4 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 6 4 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 2 8 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory 1 7 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory . limit () Ġ> Ġoffset Ġ+ Ġsize ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 9 6 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 9 6 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory Un rounded 1 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory Ġun rounded ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 6 4 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 9 6 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory Un rounded 2 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġoffset Ġun rounded ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 1 6 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 6 4 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory Un rounded 3 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġsize Ġun rounded ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 6 4 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 1 6 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 9 6 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory Un rounded 4 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory Ġ+ Ġoffset Ġun rounded ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 1 6 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 6 4 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory Un rounded 5 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory Ġ+ Ġsize Ġun rounded ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 6 4 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 3 2 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 1 6 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 6 4 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory Un rounded 6 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġoffset Ġ+ Ġsize Ġun rounded ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 3 2 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 1 6 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 1 6 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 3 2 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Allocate Memory Un rounded 7 () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġmemory Ġ+ Ġoffset Ġ+ Ġsize Ġun rounded ĊĠĠĠĠĠĠĠ Ġprogram !!. init Mem ( ByteArray ( 3 2 )) ĊĠĠĠĠĠĠĠ Ġval Ġoffset Ġ= Ġ 1 6 ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġ 1 6 ĊĠĠĠĠĠĠĠ Ġprogram !!. allocate Memory ( offset , Ġsize ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 3 2 , Ġprogram !!. get Mem Size ()) ĊĠĠĠ Ġ} ĊĊ Ċ }