diff options
author | Kay Zheng <l04m33@gmail.com> | 2015-04-18 10:27:35 +0800 |
---|---|---|
committer | Kay Zheng <l04m33@gmail.com> | 2015-04-18 10:27:35 +0800 |
commit | a11a2f0fdb3ecdd995e4fc1a6cb41de4e7fc12f2 (patch) | |
tree | ddec51c41b22c38ad7f4aea2d09b07fa4b9620d3 /tests/async/tasyncconnect.nim | |
parent | 3125058b6ab4bd9c3ad2cb103bb326463af0a7ff (diff) | |
download | Nim-a11a2f0fdb3ecdd995e4fc1a6cb41de4e7fc12f2.tar.gz |
Check for async errors in
Diffstat (limited to 'tests/async/tasyncconnect.nim')
-rw-r--r-- | tests/async/tasyncconnect.nim | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/async/tasyncconnect.nim b/tests/async/tasyncconnect.nim new file mode 100644 index 000000000..bc63b8e82 --- /dev/null +++ b/tests/async/tasyncconnect.nim @@ -0,0 +1,33 @@ +discard """ + file: "tasyncconnect.nim" + exitcode: 1 + outputsub: "Error: unhandled exception: Connection refused [Exception]" +""" + +import + asyncdispatch, + posix + + +const + testHost = "127.0.0.1" + testPort = Port(17357) + + +when defined(windows) or defined(nimdoc): + discard +else: + proc testAsyncConnect() {.async.} = + var s = newAsyncRawSocket() + + await s.connect(testHost, testPort) + + var peerAddr: SockAddr + var addrSize = Socklen(sizeof(peerAddr)) + var ret = SocketHandle(s).getpeername(addr(peerAddr), addr(addrSize)) + + if ret < 0: + echo("`connect(...)` failed but no exception was raised.") + quit(2) + + waitFor(testAsyncConnect()) |