package Ġcom . template . contracts Ċ Ċ import Ġcom . r 3 . cord a . lib . tokens . contracts . commands . Create Ċ import Ġcom . template . states . Template E vol vable TokenType Ċ import Ġnet . cord a . core . identity . C ord a X 5 0 0 Name Ċ import Ġnet . cord a . testing . core . Test Identity Ċ import Ġnet . cord a . testing . node . Mock Services Ċ import Ġnet . cord a . testing . node . ledger Ċ import Ġorg . junit . Test Ċ import Ġcom . template . states . Template State Ċ import Ġnet . cord a . core . contracts . Unique Identifier Ċ Ċ class ĠContract Tests Ġ{ ĊĠĠĠ Ġprivate Ġval Ġledger Services : ĠMock Services Ġ= ĠMock Services ( listOf (" com . template ")) ĊĠĠĠ Ġvar Ġalice Ġ= ĠTest Identity ( C ord a X 5 0 0 Name (" Alice ", Ġ" Test Land ", Ġ" US ")) ĊĠĠĠ Ġvar Ġbob Ġ= ĠTest Identity ( C ord a X 5 0 0 Name (" Alice ", Ġ" Test Land ", Ġ" US ")) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġdummy test () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstate Ġ= ĠTemplate State (" Hello - World ", Ġalice . party , Ġbob . party ) ĊĠĠĠĠĠĠĠ Ġledger Services . ledger Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠShould Ġfail Ġbid Ġprice Ġis Ġequal Ġto Ġprevious Ġhighest Ġbid ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// fail ing Ġtransaction ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinput ( Template Contract . ID , Ġstate ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoutput ( Template Contract . ID , Ġstate ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcommand ( alice . publicKey , ĠTemplate Contract . Commands . Create ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfails () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// pass ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// pass ing Ġtransaction ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoutput ( Template Contract . ID , Ġstate ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcommand ( alice . publicKey , ĠTemplate Contract . Commands . Create ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġverifies () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcreate E vol vable TokenType For Tom ato es () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġto mat o Definition Ġ= ĠTemplate E vol vable TokenType ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" Organ ic Ġto mat oes ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmaintainer Ġ= Ġalice . party , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlinear Id Ġ= ĠUnique Identifier () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġledger Services . ledger Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoutput ( Template E vol vable TokenType Contract . ID , Ġto mat o Definition ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcommand ( alice . publicKey , ĠCreate ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġverifies () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }