nim-libp2p/tests/testconnection.nim

50 lines
989 B
Nim
Raw Normal View History

2020-04-05 02:45:00 +00:00
import unittest
import chronos, nimcrypto/utils
import ../libp2p/[stream/connection,
2020-04-05 02:45:00 +00:00
stream/bufferstream]
suite "Connection":
test "close":
proc test(): Future[bool] {.async.} =
var conn = newBufferStream()
2020-04-05 02:45:00 +00:00
await conn.close()
check:
conn.closed == true
result = true
check:
waitFor(test()) == true
test "parent close":
proc test(): Future[bool] {.async.} =
var buf = newBufferStream()
var conn = buf
2020-04-05 02:45:00 +00:00
await conn.close()
check:
conn.closed == true
buf.closed == true
await sleepAsync(1.seconds)
result = true
check:
waitFor(test()) == true
test "child close":
proc test(): Future[bool] {.async.} =
var buf = newBufferStream()
var conn = buf
2020-04-05 02:45:00 +00:00
await buf.close()
check:
conn.closed == true
buf.closed == true
await sleepAsync(1.seconds)
result = true
check:
waitFor(test()) == true