cancellability experiments in tests
This commit is contained in:
parent
75e91f8092
commit
0c05cce13b
@ -2,12 +2,8 @@ package net.sergeych.kiloparsec.adapters
|
|||||||
|
|
||||||
import com.ionspin.kotlin.crypto.util.decodeFromUByteArray
|
import com.ionspin.kotlin.crypto.util.decodeFromUByteArray
|
||||||
import com.ionspin.kotlin.crypto.util.encodeToUByteArray
|
import com.ionspin.kotlin.crypto.util.encodeToUByteArray
|
||||||
import kotlinx.coroutines.cancel
|
import kotlinx.coroutines.*
|
||||||
import kotlinx.coroutines.coroutineScope
|
|
||||||
import kotlinx.coroutines.flow.cancellable
|
|
||||||
import kotlinx.coroutines.launch
|
|
||||||
import kotlinx.coroutines.test.runTest
|
import kotlinx.coroutines.test.runTest
|
||||||
import kotlinx.coroutines.yield
|
|
||||||
import net.sergeych.kiloparsec.adapter.UdpServer
|
import net.sergeych.kiloparsec.adapter.UdpServer
|
||||||
import net.sergeych.kiloparsec.adapter.acceptTcpDevice
|
import net.sergeych.kiloparsec.adapter.acceptTcpDevice
|
||||||
import net.sergeych.kiloparsec.adapter.connectTcpDevice
|
import net.sergeych.kiloparsec.adapter.connectTcpDevice
|
||||||
@ -38,8 +34,8 @@ class NetworkTest {
|
|||||||
Log.connectConsole(Log.Level.DEBUG)
|
Log.connectConsole(Log.Level.DEBUG)
|
||||||
|
|
||||||
coroutineScope {
|
coroutineScope {
|
||||||
val serverFlow = acceptTcpDevice(17171).cancellable()
|
val serverFlow = acceptTcpDevice(17171)
|
||||||
launch {
|
val j = launch {
|
||||||
serverFlow.collect { device ->
|
serverFlow.collect { device ->
|
||||||
println("collected input: $device")
|
println("collected input: $device")
|
||||||
device.output.send("Hello, world!".encodeToUByteArray())
|
device.output.send("Hello, world!".encodeToUByteArray())
|
||||||
@ -70,8 +66,9 @@ class NetworkTest {
|
|||||||
println("--1")
|
println("--1")
|
||||||
assertEquals("Great", s.input.receive()!!.decodeFromUByteArray())
|
assertEquals("Great", s.input.receive()!!.decodeFromUByteArray())
|
||||||
println("--2")
|
println("--2")
|
||||||
s.output.send("die".encodeToUByteArray())
|
// s.output.send("die".encodeToUByteArray())
|
||||||
// s.close()
|
s.close()
|
||||||
|
j.cancelAndJoin()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user