summaryrefslogtreecommitdiff
path: root/test/parallel/test-http-incoming-matchKnownFields.js
diff options
context:
space:
mode:
authorBrian White <mscdex@mscdex.net>2017-02-09 06:49:39 -0500
committerBrian White <mscdex@mscdex.net>2017-03-09 08:10:25 -0500
commit6b2cef65c99cb40fb9ca0789670b9ea9f5fcc2dd (patch)
treeb1348fbb4974dd34d77fcd0c21a321b84be5b317 /test/parallel/test-http-incoming-matchKnownFields.js
parent8243ca0e0e87b3e114d9ddf2843d1272bc56b053 (diff)
downloadandroid-node-v8-6b2cef65c99cb40fb9ca0789670b9ea9f5fcc2dd.tar.gz
android-node-v8-6b2cef65c99cb40fb9ca0789670b9ea9f5fcc2dd.tar.bz2
android-node-v8-6b2cef65c99cb40fb9ca0789670b9ea9f5fcc2dd.zip
http: append Cookie header values with semicolon
Previously, separate incoming Cookie headers would be concatenated with a comma, which can cause confusion in userland code when it comes to parsing the final Cookie header value. This commit concatenates using a semicolon instead. Fixes: https://github.com/nodejs/node/issues/11256 PR-URL: https://github.com/nodejs/node/pull/11259 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Roman Reiss <me@silverwind.io> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Diffstat (limited to 'test/parallel/test-http-incoming-matchKnownFields.js')
-rw-r--r--test/parallel/test-http-incoming-matchKnownFields.js11
1 files changed, 7 insertions, 4 deletions
diff --git a/test/parallel/test-http-incoming-matchKnownFields.js b/test/parallel/test-http-incoming-matchKnownFields.js
index 7411be4e84..f301b9169f 100644
--- a/test/parallel/test-http-incoming-matchKnownFields.js
+++ b/test/parallel/test-http-incoming-matchKnownFields.js
@@ -6,9 +6,10 @@ const IncomingMessage = require('http').IncomingMessage;
function checkDest(field, result, value) {
const dest = {};
- if (value) dest[field] = 'test';
const incomingMessage = new IncomingMessage(field);
// dest is changed by IncomingMessage._addHeaderLine
+ if (value)
+ incomingMessage._addHeaderLine(field, 'test', dest);
incomingMessage._addHeaderLine(field, value, dest);
assert.deepStrictEqual(dest, result);
}
@@ -49,7 +50,7 @@ checkDest('age', {age: 'test'}, 'value');
checkDest('Expires', {expires: undefined});
checkDest('expires', {expires: 'test'}, 'value');
checkDest('Set-Cookie', {'set-cookie': [undefined]});
-checkDest('set-cookie', {'set-cookie': [undefined]});
+checkDest('set-cookie', {'set-cookie': ['test', 'value']}, 'value');
checkDest('Transfer-Encoding', {'transfer-encoding': undefined});
checkDest('transfer-encoding', {'transfer-encoding': 'test, value'}, 'value');
checkDest('Date', {date: undefined});
@@ -64,8 +65,8 @@ checkDest('Vary', {vary: undefined});
checkDest('vary', {vary: 'test, value'}, 'value');
checkDest('Content-Encoding', {'content-encoding': undefined}, undefined);
checkDest('content-encoding', {'content-encoding': 'test, value'}, 'value');
-checkDest('Cookies', {cookies: undefined});
-checkDest('cookies', {cookies: 'test, value'}, 'value');
+checkDest('Cookie', {cookie: undefined});
+checkDest('cookie', {cookie: 'test; value'}, 'value');
checkDest('Origin', {origin: undefined});
checkDest('origin', {origin: 'test, value'}, 'value');
checkDest('Upgrade', {upgrade: undefined});
@@ -88,3 +89,5 @@ checkDest('X-Forwarded-Host', {'x-forwarded-host': undefined});
checkDest('x-forwarded-host', {'x-forwarded-host': 'test, value'}, 'value');
checkDest('X-Forwarded-Proto', {'x-forwarded-proto': undefined});
checkDest('x-forwarded-proto', {'x-forwarded-proto': 'test, value'}, 'value');
+checkDest('X-Foo', {'x-foo': undefined});
+checkDest('x-foo', {'x-foo': 'test, value'}, 'value');