Я столкнулся с проблемой при выполнении потоковых тестов, включающих запланированные состояния и потоки.
Здесь определяются состояния и потоки: Невозможно инициировать сеанс потока с другим узлом из ScheduledFlow
Тестовые узлы настроены так:
@Before
fun setup() {
mockNetwork = MockNetwork(listOf("com.example.states", "com.example.contracts", "com.example.flows", "com.example.schema"))
a= mockNetwork.createNode(MockNodeParameters(legalName = CordaX500Name("NodeA", "London", "GB")))
b= mockNetwork.createNode(MockNodeParameters(legalName = CordaX500Name("NodeB", "London", "GB")))
c= mockNetwork.createNode(MockNodeParameters(legalName = CordaX500Name("NodeC", "London", "GB")))
mockNetwork.runNetwork()
}
Тест не продвигается и застревает с журналом ниже:
[INFO ] 2018-08-24T07:49:19,739Z [Node thread-1] flow.[c833dc79-501e-4484-9c43-a6924b472542].initiateSession - Initiating flow session with party O=NodeB, L=London, C=GB. Session id for tracing purposes is SessionId(toLong=4256917187941908080). {}
Как я узнаю, что узел NodeB mockednode вышел из строя и не может получить сеанс потока? Удивительно, но тест работает большую часть времени.