102
102
------------------------------------------------------------------------
103
103
function test_methods(sock, methods)
104
for _, v in methods do
104
for _, v in pairs(methods) do
105
105
if type(sock[v]) ~= "function" then
106
106
fail(sock.class .. " method '" .. v .. "' not registered")
500
500
------------------------------------------------------------------------
501
function test_readafterclose()
502
local back, partial, err
503
local str = 'little string'
505
pass("trying repeated '*a' pattern")
506
remote (string.format ([[
511
back, err, partial = data:receive("*a")
512
assert(back == str, "unexpected data read")
513
back, err, partial = data:receive("*a")
514
assert(back == nil and err == "closed", "should have returned 'closed'")
517
pass("trying active close before '*a'")
518
remote (string.format ([[
523
back, err, partial = data:receive("*a")
524
assert(back == nil and err == "closed", "should have returned 'closed'")
527
pass("trying active close before '*l'")
528
remote (string.format ([[
533
back, err, partial = data:receive()
534
assert(back == nil and err == "closed", "should have returned 'closed'")
537
pass("trying active close before raw 1")
538
remote (string.format ([[
543
back, err, partial = data:receive(1)
544
assert(back == nil and err == "closed", "should have returned 'closed'")
547
pass("trying active close before raw 0")
548
remote (string.format ([[
553
back, err, partial = data:receive(0)
554
assert(back == nil and err == "closed", "should have returned 'closed'")
503
558
test("method registration")
504
559
test_methods(socket.tcp(), {