mirror of https://github.com/lukechilds/node.git
Ryan Dahl
15 years ago
2 changed files with 108 additions and 20 deletions
@ -0,0 +1,71 @@ |
|||
common = require("../common"); |
|||
assert = common.assert; |
|||
http = require("http"); |
|||
|
|||
nresponses = 0; |
|||
|
|||
var server = http.createServer(function(req, res) { |
|||
if (req.url == '/one') { |
|||
res.writeHead(200, [ ['set-cookie', 'A'], |
|||
['content-type', 'text/plain'] ]); |
|||
res.end("one\n"); |
|||
} else { |
|||
res.writeHead(200, [ ['set-cookie', 'A'], |
|||
['set-cookie', 'B'], |
|||
['content-type', 'text/plain'] ]); |
|||
res.end("two\n"); |
|||
} |
|||
}); |
|||
server.listen(common.PORT); |
|||
|
|||
server.addListener("listening", function() { |
|||
//
|
|||
// one set-cookie header
|
|||
//
|
|||
var client = http.createClient(common.PORT); |
|||
var req = client.request('GET', '/one'); |
|||
req.end(); |
|||
|
|||
req.addListener('response', function(res) { |
|||
// set-cookie headers are always return in an array.
|
|||
// even if there is only one.
|
|||
assert.deepEqual(['A'], res.headers['set-cookie']); |
|||
assert.equal('text/plain', res.headers['content-type']); |
|||
|
|||
res.addListener('data', function(chunk) { |
|||
console.log(chunk.toString()); |
|||
}); |
|||
|
|||
res.addListener('end', function() { |
|||
if (++nresponses == 2) { |
|||
server.close(); |
|||
} |
|||
}); |
|||
}); |
|||
|
|||
// two set-cookie headers
|
|||
|
|||
var client = http.createClient(common.PORT); |
|||
var req = client.request('GET', '/two'); |
|||
req.end(); |
|||
|
|||
req.addListener('response', function(res) { |
|||
assert.deepEqual(['A', 'B'], res.headers['set-cookie']); |
|||
assert.equal('text/plain', res.headers['content-type']); |
|||
|
|||
res.addListener('data', function(chunk) { |
|||
console.log(chunk.toString()); |
|||
}); |
|||
|
|||
res.addListener('end', function() { |
|||
if (++nresponses == 2) { |
|||
server.close(); |
|||
} |
|||
}); |
|||
}); |
|||
|
|||
}); |
|||
|
|||
process.addListener("exit", function () { |
|||
assert.equal(2, nresponses); |
|||
}); |
Loading…
Reference in new issue