Что в Corda означает `getPaper ()` в руководстве «Написание теста по контракту»? - PullRequest
0 голосов
/ 02 мая 2018

Я придерживаюсь следующего урока по Corda: https://docs.corda.net/tutorial-test-dsl.html.

Может кто-нибудь объяснить строку val inState = getPaper()? Не отображается перед этой страницей.

Ответы [ 2 ]

0 голосов
/ 09 июля 2019

Простой способ сделать это будет следующим:

private companion object {
    val testIssuance = bigCorp.ref(111)
    val testPounds: Cash.State = 1999.POUNDS.CASH issuedBy testIssuance

}

fun getPaper(): CommercialPaperState {
    return CommercialPaperState(testIssuance, testIssuance.party, testPounds.amount , Instant.now()+10.days)
    }

Или ниже приведен еще один более сложный способ сделать это без использования денежных средств, предоставляемых в составе Finance CorDapp, поставляемого вместе с Corda 4

import net.corda.finance.`issued by`

private companion object {
     val bigCorp = TestIdentity((CordaX500Name("BigCorp", "New York", "GB")))
     val testIssuance = bigCorp.ref((("JoinKey").toByte()))
     val testAmount = Amount<Currency>(1000,Currency.getInstance(Locale.GERMANY))

}

fun getPaper(): CommercialPaperState {
    return CommercialPaperState(testIssuance, testIssuance.party, testAmount `issued by` testIssuance, Instant.now()+10.days)
}
0 голосов
/ 02 мая 2018

Это просто тестовый метод для возврата нового состояния коммерческой бумаги.

В настоящее время, за пределами Hello, World! учебные пособия (https://docs.corda.net/hello-world-introduction.html и https://docs.corda.net/tut-two-party-introduction.html), учебные пособия не должны следовать друг за другом при создании полноценного CorDapp. Это просто примеры того, как работают различные функции.

Также может быть полезно взглянуть на различные примеры CorDapps, определенные здесь: https://www.corda.net/samples/.

...