node/test/parallel/test-http-upgrade-client.js
Rich Trott bc5b89f9ca test: remove unused vars from http/https tests
Remove handful of variables that are assigned but never used.

(This was missed by the linter in previous versions of ESLint but is
flagged by the current version. Updating the linter is contingent on
this change or some similar remedy landing.)

PR-URL: https://github.com/nodejs/node/pull/7598
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
2016-07-10 16:25:44 -07:00

65 lines
1.4 KiB
JavaScript

'use strict';
// Verify that the 'upgrade' header causes an 'upgrade' event to be emitted to
// the HTTP client. This test uses a raw TCP server to better control server
// behavior.
var common = require('../common');
var assert = require('assert');
var http = require('http');
var net = require('net');
// Create a TCP server
var srv = net.createServer(function(c) {
c.on('data', function(d) {
c.write('HTTP/1.1 101\r\n');
c.write('hello: world\r\n');
c.write('connection: upgrade\r\n');
c.write('upgrade: websocket\r\n');
c.write('\r\n');
c.write('nurtzo');
});
c.on('end', function() {
c.end();
});
});
var gotUpgrade = false;
srv.listen(0, '127.0.0.1', function() {
var req = http.get({
port: this.address().port,
headers: {
connection: 'upgrade',
upgrade: 'websocket'
}
});
req.on('upgrade', function(res, socket, upgradeHead) {
var recvData = upgradeHead;
socket.on('data', function(d) {
recvData += d;
});
socket.on('close', common.mustCall(function() {
assert.equal(recvData, 'nurtzo');
}));
console.log(res.headers);
var expectedHeaders = {'hello': 'world',
'connection': 'upgrade',
'upgrade': 'websocket' };
assert.deepStrictEqual(expectedHeaders, res.headers);
socket.end();
srv.close();
gotUpgrade = true;
});
});
process.on('exit', function() {
assert.ok(gotUpgrade);
});