Bank of Corda demo: Fix broken RPC client test.

This commit is contained in:
Qian Hong 2017-03-23 17:41:36 +11:00 committed by Mike Hearn
parent 259bdf4261
commit d9a1e352cd
2 changed files with 15 additions and 14 deletions

View File

@ -10,7 +10,7 @@ import net.corda.node.driver.driver
import net.corda.node.services.startFlowPermission import net.corda.node.services.startFlowPermission
import net.corda.node.services.transactions.SimpleNotaryService import net.corda.node.services.transactions.SimpleNotaryService
import net.corda.nodeapi.User import net.corda.nodeapi.User
import net.corda.testing.BOC_PARTY_REF import net.corda.testing.BIG_CORP_PARTY_REF
import net.corda.testing.expect import net.corda.testing.expect
import net.corda.testing.expectEvents import net.corda.testing.expectEvents
import net.corda.testing.sequence import net.corda.testing.sequence
@ -20,20 +20,21 @@ class BankOfCordaRPCClientTest {
@Test @Test
fun `issuer flow via RPC`() { fun `issuer flow via RPC`() {
driver(dsl = { driver(dsl = {
val user = User("user1", "test", permissions = setOf(startFlowPermission<IssuanceRequester>())) val bocManager = User("bocManager", "password1", permissions = setOf(startFlowPermission<IssuanceRequester>()))
val bigCorpCFO = User("bigCorpCFO", "password2", permissions = emptySet())
val (nodeBankOfCorda, nodeBigCorporation) = Futures.allAsList( val (nodeBankOfCorda, nodeBigCorporation) = Futures.allAsList(
startNode("BankOfCorda", setOf(ServiceInfo(SimpleNotaryService.type)), listOf(user)), startNode("BankOfCorda", setOf(ServiceInfo(SimpleNotaryService.type)), listOf(bocManager)),
startNode("BigCorporation", rpcUsers = listOf(user)) startNode("BigCorporation", rpcUsers = listOf(bigCorpCFO))
).getOrThrow() ).getOrThrow()
// Bank of Corda RPC Client // Bank of Corda RPC Client
val bocClient = nodeBankOfCorda.rpcClientToNode() val bocClient = nodeBankOfCorda.rpcClientToNode()
bocClient.start("user1", "test") bocClient.start("bocManager", "password1")
val bocProxy = bocClient.proxy() val bocProxy = bocClient.proxy()
// Big Corporation RPC Client // Big Corporation RPC Client
val bigCorpClient = nodeBankOfCorda.rpcClientToNode() // TODO This test is broken as this should be nodeBigCorporation val bigCorpClient = nodeBigCorporation.rpcClientToNode()
bigCorpClient.start("user1", "test") bigCorpClient.start("bigCorpCFO", "password2")
val bigCorpProxy = bigCorpClient.proxy() val bigCorpProxy = bigCorpClient.proxy()
// Register for Bank of Corda Vault updates // Register for Bank of Corda Vault updates
@ -47,7 +48,7 @@ class BankOfCordaRPCClientTest {
::IssuanceRequester, ::IssuanceRequester,
1000.DOLLARS, 1000.DOLLARS,
nodeBigCorporation.nodeInfo.legalIdentity, nodeBigCorporation.nodeInfo.legalIdentity,
BOC_PARTY_REF, BIG_CORP_PARTY_REF,
nodeBankOfCorda.nodeInfo.legalIdentity).returnValue.getOrThrow() nodeBankOfCorda.nodeInfo.legalIdentity).returnValue.getOrThrow()
// Check Bank of Corda Vault Updates // Check Bank of Corda Vault Updates
@ -69,15 +70,10 @@ class BankOfCordaRPCClientTest {
// Check Big Corporation Vault Updates // Check Big Corporation Vault Updates
vaultUpdatesBigCorp.expectEvents { vaultUpdatesBigCorp.expectEvents {
sequence( sequence(
// ISSUE // MOVE
expect { update -> expect { update ->
require(update.consumed.isEmpty()) { update.consumed.size } require(update.consumed.isEmpty()) { update.consumed.size }
require(update.produced.size == 1) { update.produced.size } require(update.produced.size == 1) { update.produced.size }
},
// MOVE
expect { update ->
require(update.consumed.size == 1) { update.consumed.size }
require(update.produced.isEmpty()) { update.produced.size }
} }
) )
} }

View File

@ -85,6 +85,11 @@ val BOC_PUBKEY: CompositeKey get() = BOC_KEY.public.composite
val BOC: Party get() = Party("BankOfCorda", BOC_PUBKEY) val BOC: Party get() = Party("BankOfCorda", BOC_PUBKEY)
val BOC_PARTY_REF = BOC.ref(OpaqueBytes.of(1)).reference val BOC_PARTY_REF = BOC.ref(OpaqueBytes.of(1)).reference
val BIG_CORP_KEY: KeyPair by lazy { generateKeyPair() }
val BIG_CORP_PUBKEY: CompositeKey get() = BIG_CORP_KEY.public.composite
val BIG_CORP: Party get() = Party("BigCorporation", BIG_CORP_PUBKEY)
val BIG_CORP_PARTY_REF = BIG_CORP.ref(OpaqueBytes.of(1)).reference
val ALL_TEST_KEYS: List<KeyPair> get() = listOf(MEGA_CORP_KEY, MINI_CORP_KEY, ALICE_KEY, BOB_KEY, DUMMY_NOTARY_KEY) val ALL_TEST_KEYS: List<KeyPair> get() = listOf(MEGA_CORP_KEY, MINI_CORP_KEY, ALICE_KEY, BOB_KEY, DUMMY_NOTARY_KEY)
val MOCK_IDENTITY_SERVICE: MockIdentityService get() = MockIdentityService(listOf(MEGA_CORP, MINI_CORP, DUMMY_NOTARY)) val MOCK_IDENTITY_SERVICE: MockIdentityService get() = MockIdentityService(listOf(MEGA_CORP, MINI_CORP, DUMMY_NOTARY))