mirror of https://github.com/lukechilds/node.git
Browse Source
discussion: http://groups.google.com/group/nodejs/browse_thread/thread/11a920da4d0ed21dv0.7.4-release
Ryan
16 years ago
3 changed files with 79 additions and 6 deletions
@ -0,0 +1,57 @@ |
|||
include("mjsunit.js"); |
|||
PORT = 20444; |
|||
N = 30*1024; // 500kb
|
|||
|
|||
puts("build big string"); |
|||
var body = ""; |
|||
for (var i = 0; i < N; i++) { |
|||
body += "C"; |
|||
} |
|||
|
|||
puts("start server on port " + PORT); |
|||
|
|||
server = node.tcp.createServer(function (connection) { |
|||
connection.addListener("connect", function () { |
|||
connection.send(body); |
|||
connection.fullClose(); |
|||
}); |
|||
}); |
|||
server.listen(PORT); |
|||
|
|||
|
|||
chars_recved = 0; |
|||
npauses = 0; |
|||
|
|||
|
|||
function onLoad () { |
|||
var paused = false; |
|||
client = node.tcp.createConnection(PORT); |
|||
client.setEncoding("ascii"); |
|||
client.addListener("receive", function (d) { |
|||
chars_recved += d.length; |
|||
puts("got " + chars_recved); |
|||
if (!paused) { |
|||
client.readPause(); |
|||
npauses += 1; |
|||
paused = true; |
|||
puts("pause"); |
|||
x = chars_recved; |
|||
setTimeout(function () { |
|||
assertEquals(chars_recved, x); |
|||
client.readResume(); |
|||
puts("resume"); |
|||
paused = false; |
|||
}, 100); |
|||
} |
|||
}); |
|||
|
|||
client.addListener("eof", function () { |
|||
server.close(); |
|||
client.close(); |
|||
}); |
|||
} |
|||
|
|||
function onExit () { |
|||
assertEquals(N, chars_recved); |
|||
assertTrue(npauses > 2); |
|||
} |
Loading…
Reference in new issue