arnaucube
arnaucube/comunicationLeapPublic Self-hosted repository
comunicationLeap/node_modules/cookie/test/parse.js
node_modules/cookie/test/parse.jsRaw
 1
 2var assert = require('assert');
 3
 4var cookie = require('..');
 5
 6suite('parse');
 7
 8test('basic', function() {
 9    assert.deepEqual({ foo: 'bar' }, cookie.parse('foo=bar'));
10    assert.deepEqual({ foo: '123' }, cookie.parse('foo=123'));
11});
12
13test('ignore spaces', function() {
14    assert.deepEqual({ FOO: 'bar', baz: 'raz' },
15            cookie.parse('FOO    = bar;   baz  =   raz'));
16});
17
18test('escaping', function() {
19    assert.deepEqual({ foo: 'bar=123456789&name=Magic+Mouse' },
20            cookie.parse('foo="bar=123456789&name=Magic+Mouse"'));
21
22    assert.deepEqual({ email: ' ",;/' },
23            cookie.parse('email=%20%22%2c%3b%2f'));
24});
25
26test('ignore escaping error and return original value', function() {
27    assert.deepEqual({ foo: '%1', bar: 'bar' }, cookie.parse('foo=%1;bar=bar'));
28});
29
30test('ignore non values', function() {
31    assert.deepEqual({ foo: '%1', bar: 'bar' }, cookie.parse('foo=%1;bar=bar;HttpOnly;Secure'));
32});
33
34test('unencoded', function() {
35    assert.deepEqual({ foo: 'bar=123456789&name=Magic+Mouse' },
36            cookie.parse('foo="bar=123456789&name=Magic+Mouse"',{
37                decode: function(value) { return value; }
38            }));
39
40    assert.deepEqual({ email: '%20%22%2c%3b%2f' },
41            cookie.parse('email=%20%22%2c%3b%2f',{
42                decode: function(value) { return value; }
43            }));
44})