test/test.lua

changeset 13
3e2ea1e7b2e8
equal deleted inserted replaced
12:a9b590350c03 13:3e2ea1e7b2e8
1 -- Tests Copas with a simple Echo server
2 --
3 -- Run the test file and the connect to the server by telnet on the used port
4 -- to stop the test just send the command "quit"
5
6 require"luaevent"
7 require"socket"
8 local oldPrint = print
9 print = function(...)
10 oldPrint("SRV", ...)
11 end
12
13 local function echoHandler(skt)
14 while true do
15 local data,ret = luaevent.receive(skt, 10)
16 --print("GOT: ", data, ret)
17 if data == "quit" or ret == 'closed' then
18 break
19 end
20 luaevent.send(skt, data)
21 collectgarbage()
22 end
23 skt:close()
24 --print("DONE")
25 end
26 local server = assert(socket.bind("localhost", 20000))
27 server:settimeout(0)
28 local coro = coroutine.create
29 coroutine.create = function(...)
30 local ret = coro(...)
31 return ret
32 end
33 luaevent.addserver(server, echoHandler)
34 luaevent.loop()

mercurial