package Ġcom . rar ible . protocol . order . core . integration Ċ Ċ import Ġcom . rar ible . core . application . Application Environment Info Ċ import Ġcom . rar ible . core . contract . model . E rc 2 0 Token Ċ import Ġcom . rar ible . ethereum . contract . service . Contract Service Ċ import Ġcom . rar ible . ethereum . domain . Blockchain Ċ import Ġcom . rar ible . protocol . currency . api . client . Currency Controller Api Ċ import Ġcom . rar ible . protocol . currency . dto . Blockchain Dto Ċ import Ġcom . rar ible . protocol . currency . dto . Currency Rate Dto Ċ import Ġcom . rar ible . protocol . dto . Order Activity Dto Ċ import Ġcom . rar ible . protocol . dto . Order Event Dto Ċ import Ġcom . rar ible . protocol . erc 2 0 . api . client . E rc 2 0 Balance Controller Api Ċ import Ġcom . rar ible . protocol . nft . api . client . N ft Ownership Controller Api Ċ import Ġcom . rar ible . protocol . order . core . configuration . Order Indexer Properties Ċ import Ġcom . rar ible . protocol . order . core . data . create E rc 2 0 Balance Dto Ċ import Ġcom . rar ible . protocol . order . core . data . create N ft Ownership Dto Ċ import Ġcom . rar ible . protocol . order . core . producer . Protocol Order Publisher Ċ import Ġio . da onom ic . rpc . mono . Web Client Transport Ċ import Ġio . mock k . co Every Ċ import Ġio . mock k . every Ċ import Ġio . mock k . mock k Ċ import Ġorg . springframework . beans . factory . annotation . Value Ċ import Ġorg . springframework . boot . context . properties . Enable Configuration Properties Ċ import Ġorg . springframework . boot . test . context . Test Configuration Ċ import Ġorg . springframework . context . annotation . Bean Ċ import Ġorg . springframework . context . annotation . Primary Ċ import Ġreactor . core . publisher . Mono Ċ import Ġreactor . kotlin . core . publisher . to Mono Ċ import Ġscale ther . core . Mono E thereum Ċ import Ġscale ther . domain . Address Ċ import Ġscale ther . transaction . Mono Transaction Poller Ċ import Ġscale ther . transaction . ReadOnly Mono Transaction Sender Ċ import Ġjava . time . Instant Ċ Ċ @ Test Configuration Ċ @ Enable Configuration Properties ( Order Indexer Properties :: class ) Ċ class ĠTest Properties Configuration Ġ{ ĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġ@ Primary ĊĠĠĠ Ġfun Ġmock Order Publisher (): ĠProtocol Order Publisher Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmock k Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġco Every Ġ{ Ġpublish ( any < Order Event Dto >()) Ġ} Ġreturns ĠUnit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġco Every Ġ{ Ġpublish ( any < Order Activity Dto >()) Ġ} Ġreturns ĠUnit ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġblockchain (): ĠBlock chain Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠBlock chain . ET HERE UM ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġtest E thereum (@ Value ("\ ${ parity Urls }") Ġurl : ĠString ): ĠMono E thereum Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠMono E thereum ( Web Client Transport ( url , ĠMono E thereum . mapper (), Ġ 1 0 0 0 0 , Ġ 1 0 0 0 0 )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun ĠreadOnly Mono Transaction Sender ( ethereum : ĠMono E thereum ): ĠReadOnly Mono Transaction Sender Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠReadOnly Mono Transaction Sender ( ethereum , ĠAddress . ONE ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġpol ler ( ethereum : ĠMono E thereum ): ĠMono Transaction Poller Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠMono Transaction Poller ( ethereum ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġ@ Primary ĊĠĠĠ Ġfun Ġmocked E rc 2 0 Balance ApiClient (): ĠE rc 2 0 Balance Controller Api Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmock k Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġget E rc 2 0 Balance ( any (), Ġany ()) Ġ} Ġreturns ĠMono . just ( create E rc 2 0 Balance Dto ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġ@ Primary ĊĠĠĠ Ġfun Ġmocked N ft Ownership Api (): ĠN ft Ownership Controller Api Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmock k Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġget N ft Ownership ById ( any ()) Ġ} Ġreturns ĠMono . just ( create N ft Ownership Dto ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġtest Contract Service (): ĠContract Service Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmock Ġ= Ġmock k < Contract Service >() ĊĠĠĠĠĠĠĠ Ġco Every Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmock . get ( any ()) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠE rc 2 0 Token ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAddress . ONE (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" test ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" T ST ", ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 8 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġreturn Ġmock ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġapplication Environment () Ġ= ĠApplication Environment Info ( ĊĠĠĠĠĠĠĠ Ġ" e 2 e ", Ġ" localhost " ĊĠĠĠ Ġ) ĊĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġtest Currency Api (): ĠCurrency Controller Api Ġ= Ġobject Ġ: ĠCurrency Controller Api () Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Currency Rate ( blockchain : ĠBlock chain Dto , Ġaddress : ĠString ?, Ġat : ĠLong ?): ĠMono < Currency Rate Dto > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠCurrency Rate Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" test ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" usd ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 . 5 . to BigDecimal (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠInstant . of Epoch Milli ( at !! ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ). to Mono () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ