diff --git a/client/src/integration-test/kotlin/net/corda/client/CordaRPCClientTest.kt b/client/src/integration-test/kotlin/net/corda/client/CordaRPCClientTest.kt index c0aa68974e..c363202be2 100644 --- a/client/src/integration-test/kotlin/net/corda/client/CordaRPCClientTest.kt +++ b/client/src/integration-test/kotlin/net/corda/client/CordaRPCClientTest.kt @@ -10,9 +10,6 @@ import net.corda.core.random63BitValue import net.corda.core.serialization.OpaqueBytes import net.corda.flows.CashIssueFlow import net.corda.flows.CashPaymentFlow -import net.corda.node.driver.DriverBasedTest -import net.corda.node.driver.NodeHandle -import net.corda.node.driver.driver import net.corda.node.internal.Node import net.corda.node.services.User import net.corda.node.services.config.configureTestSSL @@ -22,8 +19,11 @@ import net.corda.node.services.transactions.ValidatingNotaryService import net.corda.testing.node.NodeBasedTest import org.apache.activemq.artemis.api.core.ActiveMQSecurityException import org.assertj.core.api.Assertions.assertThatExceptionOfType +import org.junit.After import org.junit.Before import org.junit.Test +import java.util.* +import kotlin.test.assertEquals class CordaRPCClientTest : NodeBasedTest() { private val rpcUser = User("user1", "test", permissions = setOf( @@ -39,6 +39,11 @@ class CordaRPCClientTest : NodeBasedTest() { client = CordaRPCClient(node.configuration.artemisAddress, configureTestSSL()) } + @After + fun done() { + client.close() + } + @Test fun `log in with valid username and password`() { client.start(rpcUser.username, rpcUser.password) @@ -95,7 +100,22 @@ class CordaRPCClientTest : NodeBasedTest() { client.start(rpcUser.username, rpcUser.password) println("Creating proxy") val proxy = client.proxy() - val cash = proxy.getCashBalances() - println("Cash Balances: $cash") + + val startCash = proxy.getCashBalances() + assert(startCash.isEmpty(), {"Should not start with any cash"}) + + val flowHandle = proxy.startFlow(::CashIssueFlow, + 123.DOLLARS, OpaqueBytes.of(0), + node.info.legalIdentity, node.info.legalIdentity + ) + println("Started issuing cash, waiting on result") + flowHandle.progress.subscribe { + println("CashIssue PROGRESS $it") + } + + val finishCash = proxy.getCashBalances() + println("Cash Balances: $finishCash") + assertEquals(1, finishCash.size) + assertEquals(123.DOLLARS, finishCash.get(Currency.getInstance("USD"))) } }