child.stdout.on('data', function(data) {
console.log('child said: ' + JSON.stringify(data));
if (!gotHelloWorld) {
+ console.error('testing for hello world');
assert.equal('hello world\r\n', data);
gotHelloWorld = true;
+ console.error('writing echo me');
child.stdin.write('echo me\r\n');
} else {
+ console.error('testing for echo me');
assert.equal('echo me\r\n', data);
gotEcho = true;
child.stdin.end();
responses = 0;
var server = http.createServer(function(req, res) {
+ console.error('request', testIndex);
switch (testIndex++) {
case 0:
res.writeHead(200, { test: 'foo \r\ninvalid: bar' });
res.writeHead(200, { test: 'foo \n\n\ninvalid: bar' });
break;
case 4:
+ console.error('send request, then close');
res.writeHead(200, { test: 'foo \r\n \r\n \r\ninvalid: bar' });
server.close();
break;
}
res.end('Hi mars!');
});
-server.listen(common.PORT);
-
-for (var i = 0; i < 5; i++) {
- var req = http.get({ port: common.PORT, path: '/' }, function(res) {
- assert.strictEqual(res.headers.test, 'foo invalid: bar');
- assert.strictEqual(res.headers.invalid, undefined);
- responses++;
- });
-}
+server.listen(common.PORT, function() {
+ for (var i = 0; i < 5; i++) {
+ var req = http.get({ port: common.PORT, path: '/' }, function(res) {
+ assert.strictEqual(res.headers.test, 'foo invalid: bar');
+ assert.strictEqual(res.headers.invalid, undefined);
+ responses++;
+ res.resume();
+ });
+ }
+});
process.on('exit', function() {
assert.strictEqual(responses, 5);
var server = tls.Server(options, function(socket) {
socket.pipe(socket);
+ socket.on('data', function(c) {
+ console.error('data', c.length);
+ });
});
server.listen(common.PORT, function() {
port: common.PORT,
rejectUnauthorized: false
}, function() {
+ console.error('connected');
client.pause();
common.debug('paused');
send();
function send() {
- if (client.write(new Buffer(bufSize))) {
+ console.error('sending');
+ var ret = client.write(new Buffer(bufSize));
+ console.error('write => %j', ret);
+ if (false !== ret) {
+ console.error('write again');
sent += bufSize;
assert.ok(sent < 100 * 1024 * 1024); // max 100MB
return process.nextTick(send);
common.debug('sent: ' + sent);
resumed = true;
client.resume();
- common.debug('resumed');
+ console.error('resumed', client);
}
});
client.on('data', function(data) {
+ console.error('data');
assert.ok(resumed);
received += data.length;
+ console.error('received', received);
+ console.error('sent', sent);
if (received >= sent) {
common.debug('received: ' + received);
client.end();