Add. Allow get error
option to socket.
This commit is contained in:
parent
b84a5f3d08
commit
1de617e355
5 changed files with 43 additions and 0 deletions
27
test/test_socket_error.lua
Normal file
27
test/test_socket_error.lua
Normal file
|
@ -0,0 +1,27 @@
|
|||
local socket = require "socket"
|
||||
|
||||
local host, port = "127.0.0.1", "5462"
|
||||
|
||||
assert(socket.bind(host, port)):close()
|
||||
|
||||
local sock = socket.tcp()
|
||||
sock:settimeout(0)
|
||||
|
||||
local ok, err = sock:connect(host, port)
|
||||
assert(not ok)
|
||||
assert('timeout' == err)
|
||||
|
||||
for i = 1, 10 do
|
||||
-- select pass even if socket has error
|
||||
local _, rec, err = socket.select(nil, {sock}, 1)
|
||||
assert('timeout' == err)
|
||||
assert(not next(rec))
|
||||
err = sock:getoption("error") -- i get 'connection refused' on WinXP
|
||||
if err then
|
||||
print("Passed! Error is '" .. err .. "'.")
|
||||
os.exit(0)
|
||||
end
|
||||
end
|
||||
|
||||
print("Fail! No error detected!")
|
||||
os.exit(1)
|
Loading…
Add table
Add a link
Reference in a new issue