mirror of https://github.com/lukechilds/node.git
Ryan Dahl
14 years ago
1 changed files with 65 additions and 0 deletions
@ -0,0 +1,65 @@ |
|||
var common = require('../common'); |
|||
var assert = require('assert'); |
|||
var http = require('http'); |
|||
var sys = require('sys'); |
|||
|
|||
var bufferSize = 5 * 1024 * 1024; |
|||
var measuredSize = 0; |
|||
|
|||
var buffer = Buffer(bufferSize); |
|||
for (var i = 0; i < buffer.length; i++) { |
|||
buffer[i] = i % 256; |
|||
} |
|||
|
|||
|
|||
var web = http.Server(function (req, res) { |
|||
web.close(); |
|||
|
|||
console.log(req.headers); |
|||
|
|||
var i = 0; |
|||
|
|||
req.on('data', function (d) { |
|||
process.stdout.write(","); |
|||
measuredSize += d.length; |
|||
for (var j = 0; j < d.length; j++) { |
|||
assert.equal(buffer[i], d[j]); |
|||
i++; |
|||
} |
|||
}); |
|||
|
|||
|
|||
req.on('end', function () { |
|||
res.writeHead(200); |
|||
res.write("thanks"); |
|||
res.end(); |
|||
console.log("response with 'thanks'"); |
|||
}); |
|||
|
|||
req.connection.on('error', function (e) { |
|||
console.log("http server-side error: " + e.message); |
|||
process.exit(1); |
|||
}); |
|||
}); |
|||
|
|||
web.listen(common.PORT, function () { |
|||
console.log("Making request"); |
|||
|
|||
var client = http.createClient(common.PORT); |
|||
var req = client.request('GET', '/', { 'content-length': buffer.length }); |
|||
req.end(buffer); |
|||
|
|||
req.on('response', function (res) { |
|||
console.log('Got response'); |
|||
res.setEncoding('utf8'); |
|||
res.on('data', function (string) { |
|||
assert.equal("thanks", string); |
|||
gotThanks = true; |
|||
}); |
|||
}); |
|||
}); |
|||
|
|||
|
|||
process.on('exit', function () { |
|||
assert.equal(bufferSize, measuredSize); |
|||
}); |
Loading…
Reference in new issue