From 895968d8f8494a900cac68bfe038669119b75061 Mon Sep 17 00:00:00 2001 From: Ryan Dahl Date: Thu, 27 Jan 2011 19:27:25 -0800 Subject: [PATCH] Add test-https-large-response.js --- test/simple/test-https-large-response.js | 56 ++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 test/simple/test-https-large-response.js diff --git a/test/simple/test-https-large-response.js b/test/simple/test-https-large-response.js new file mode 100644 index 0000000..ab80ba2 --- /dev/null +++ b/test/simple/test-https-large-response.js @@ -0,0 +1,56 @@ +var common = require('../common'); +var assert = require('assert'); + +var fs = require('fs'); +var https = require('https'); + +var options = { + key: fs.readFileSync(common.fixturesDir + '/keys/agent1-key.pem'), + cert: fs.readFileSync(common.fixturesDir + '/keys/agent1-cert.pem') +}; + +var reqCount = 0; +var body = ''; + +process.stdout.write('build body...'); +for (var i = 0; i < 1024*1024; i++) { + body += 'hello world\n'; +} +process.stdout.write('done\n'); + +var server = https.createServer(options, function (req, res) { + reqCount++; + console.log('got request'); + res.writeHead(200, { 'content-type': 'text/plain' }); + res.end(body); +}) + +var count = 0; +var gotResEnd = false; + +server.listen(common.PORT, function () { + https.get({ port: common.PORT }, function(res) { + console.log("response!"); + + res.on('data', function(d) { + process.stdout.write('.'); + count += d.length; + }); + + res.on('end', function(d) { + process.stdout.write('\n'); + console.log("expected: ", body.length); + console.log(" got: ", count); + server.close(); + gotResEnd = true; + }); + }); +}); + + +process.on('exit', function () { + assert.equal(1, reqCount); + assert.equal(body.length, count); + assert.ok(gotResEnd); +}); + -- 2.7.4