Files
Nim/tests/async/tasyncconnect.nim
Adam Strzelecki be991ed413 Rename rawsockets module to nativesockets
This change was done to avoid confusion with TCP/IP raw sockets. Native sockets
module represents handling native system low level socket API in general and is
not just limited anyhow to TCP/IP raw sockets.

A stub lib/deprecated/pure/rawsockets.nim module has been added as
compatibility layer for old code using rawsockets, so this change will not
break existing code.
2015-10-03 19:45:41 +02:00

35 lines
806 B
Nim

discard """
file: "tasyncconnect.nim"
exitcode: 1
outputsub: "Error: unhandled exception: Connection refused"
"""
import
asyncdispatch,
posix
const
testHost = "127.0.0.1"
testPort = Port(17357)
when defined(windows) or defined(nimdoc):
# TODO: just make it work on Windows for now.
quit("Error: unhandled exception: Connection refused")
else:
proc testAsyncConnect() {.async.} =
var s = newAsyncNativeSocket()
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())