package Ġorg . tok end . wallet _ test Ċ Ċ import Ġorg . junit . Assert Ċ import Ġorg . junit . Test Ċ import Ġorg . tok end . wallet . Account Ċ import Ġorg . tok end . wallet . Network Params Ċ import Ġorg . tok end . wallet . PublicKey Factory Ċ import Ġorg . tok end . wallet . Transaction Builder Ċ import Ġorg . tok end . wallet . xd r .* Ċ Ċ class ĠTransaction Builder Test Ġ{ ĊĠĠĠ Ġval ĠSOURCE _ ACCOUNT _ ID Ġ= Ġ" GD V JS B SB SER R 3 YP 3 L KL H TO D WE FG CS LD W DIO DER 3 CK L ZX UM VP Z OPT 4 M HY " ĊĠĠĠ Ġval ĠSOURCE _ ACCOUNT _ PUB KEY Ġ= ĠPublicKey Factory . from AccountId ( SOURCE _ ACCOUNT _ ID ) ĊĠĠĠ Ġval ĠNET WORK Ġ= ĠNetwork Params (" Example ĠTest ĠNetwork ") ĊĠĠĠ Ġval ĠS IMP LE _ OP Ġ= ĠManage Balance Op ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠManage Balance Action . CREATE , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSOURCE _ ACCOUNT _ PUB KEY , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" OL G ", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠManage Balance Op . Manage Balance Op Ext . Empty Version () ĊĠĠĠ Ġ) ĊĠĠĠ Ġval ĠS IMP LE _ OP _ 2 Ġ= ĠManage Balance Op ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠManage Balance Action . CREATE , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSOURCE _ ACCOUNT _ PUB KEY , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" O LE ", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠManage Balance Op . Manage Balance Op Ext . Empty Version () ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġsingle Operation () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġoperation Body Ġ= ĠOperation . Operation Body . Manage Balance ( SIMPLE _ OP ) ĊĠĠĠĠĠĠĠ Ġval Ġtransaction Ġ= ĠTransaction Builder ( NETWORK , ĠSOURCE _ ACCOUNT _ PUB KEY ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Operation ( operation Body ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( SOURCE _ ACCOUNT _ PUB KEY , Ġtransaction . source AccountId ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( NETWORK . pass phrase , Ġtransaction . network Params . pass phrase ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( operation Body . to Base 6 4 (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction . operations [ 0 ]. body . to Base 6 4 ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġmultiple Operations () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġoperation B odies Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠOperation . Operation Body . Manage Balance ( SIMPLE _ OP ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠOperation . Operation Body . Manage Balance ( SIMPLE _ OP _ 2 ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġtransaction Ġ= ĠTransaction Builder ( NETWORK , ĠSOURCE _ ACCOUNT _ PUB KEY ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Operations ( operation B odies ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( SOURCE _ ACCOUNT _ PUB KEY , Ġtransaction . source AccountId ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( NETWORK . pass phrase , Ġtransaction . network Params . pass phrase ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( operation B odies [ 0 ]. to Base 6 4 (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction . operations [ 0 ]. body . to Base 6 4 ()) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( operation B odies [ 1 ]. to Base 6 4 (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction . operations [ 1 ]. body . to Base 6 4 ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġset Memo () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmemo Text Ġ= Ġ" Token D Ġis Ġawesome " ĊĠĠĠĠĠĠĠ Ġval Ġtransaction Ġ= ĠTransaction Builder ( NETWORK , ĠSOURCE _ ACCOUNT _ PUB KEY ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Operation ( Operation . Operation Body . Manage Balance ( SIMPLE _ OP )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Memo ( Memo . Memo Text ( memo Text )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ ĠAssert . assertTrue ( transaction . memo Ġis ĠM emo . Memo Text ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( memo Text , Ġ( transaction . memo Ġas ĠM emo . Memo Text ). text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġset Time Bounds () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtime Bounds Ġ= ĠTime Bounds ( 1 , Ġ 5 ) ĊĠĠĠĠĠĠĠ Ġval Ġtransaction Ġ= ĠTransaction Builder ( NETWORK , ĠSOURCE _ ACCOUNT _ PUB KEY ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Operation ( Operation . Operation Body . Manage Balance ( SIMPLE _ OP )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTime Bounds ( time Bounds ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( time Bounds . max Time , Ġtransaction . time Bounds . max Time ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( time Bounds . min Time , Ġtransaction . time Bounds . min Time ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġset Salt () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsalt Ġ= Ġ 4 2 L ĊĠĠĠĠĠĠĠ Ġval Ġtransaction Ġ= ĠTransaction Builder ( NETWORK , ĠSOURCE _ ACCOUNT _ PUB KEY ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Operation ( Operation . Operation Body . Manage Balance ( SIMPLE _ OP )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Salt ( salt ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( salt , Ġtransaction . salt ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġadd Signer () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsigner Ġ= ĠAccount . random () ĊĠĠĠĠĠĠĠ Ġval Ġsignature Hint Ġ= Ġsigner . sign Decorated ( byte ArrayOf ()). hint ĊĊĠĠĠĠĠĠĠ Ġval Ġtransaction Ġ= ĠTransaction Builder ( NETWORK , ĠSOURCE _ ACCOUNT _ PUB KEY ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Operation ( Operation . Operation Body . Manage Balance ( SIMPLE _ OP )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Signer ( signer ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( 1 , Ġtransaction . signatures . size ) ĊĠĠĠĠĠĠĠ ĠAssert . assertArrayEquals ( signature Hint . wrapped , Ġtransaction . signatures [ 0 ]. hint . wrapped ) ĊĠĠĠ Ġ} Ċ }