* Committing what will be version 0.1.2
[luaevent.git] / luaevent / test / test.lua
blob412857e29a90ab2a319792408b9cb9bc6e1003d9
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"
6 require"luaevent"
7 require"socket"
8 local oldPrint = print
9 print = function(...)
10 oldPrint("SRV", ...)
11 end
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()