diff --git a/client/src/main/kotlin/com/r3corda/client/testing/Expect.kt b/client/src/main/kotlin/com/r3corda/client/testing/Expect.kt index 220bfba04e..27dcd5f6a3 100644 --- a/client/src/main/kotlin/com/r3corda/client/testing/Expect.kt +++ b/client/src/main/kotlin/com/r3corda/client/testing/Expect.kt @@ -64,9 +64,10 @@ fun parallel(vararg expectations: ExpectCompose): ExpectCompose = Expe */ fun Observable.expectEvents(isStrict: Boolean = true, expectCompose: () -> ExpectCompose) { val finishFuture = SettableFuture() - val lockedState = ThreadBox(object { var state = ExpectComposeState.fromExpectCompose(expectCompose()) }) + val stateLock = object {} + var state = ExpectComposeState.fromExpectCompose(expectCompose()) subscribe { event -> - lockedState.locked { + synchronized(stateLock) { if (state is ExpectComposeState.Finished) { log.warn("Got event $event, but was expecting no further events") return@subscribe @@ -109,7 +110,7 @@ internal data class Expect( val expectClosure: (T) -> Unit ) -private sealed class ExpectComposeState{ +private sealed class ExpectComposeState { class Finished : ExpectComposeState() class Single(val single: ExpectCompose.Single) : ExpectComposeState() class Sequential( @@ -118,8 +119,7 @@ private sealed class ExpectComposeState{ val state: ExpectComposeState ) : ExpectComposeState() class Parallel( - val parallel: - ExpectCompose.Parallel, + val parallel: ExpectCompose.Parallel, val states: List> ) : ExpectComposeState()