comunicationLeap/node_modules/cookie/test/serialize.js
node_modules/cookie/test/serialize.jsRaw
1// builtin
2var assert = require('assert');
3
4var cookie = require('..');
5
6suite('serialize');
7
8test('basic', function() {
9 assert.equal('foo=bar', cookie.serialize('foo', 'bar'));
10 assert.equal('foo=bar%20baz', cookie.serialize('foo', 'bar baz'));
11});
12
13test('path', function() {
14 assert.equal('foo=bar; Path=/', cookie.serialize('foo', 'bar', {
15 path: '/'
16 }));
17});
18
19test('secure', function() {
20 assert.equal('foo=bar; Secure', cookie.serialize('foo', 'bar', {
21 secure: true
22 }));
23
24 assert.equal('foo=bar', cookie.serialize('foo', 'bar', {
25 secure: false
26 }));
27});
28
29test('domain', function() {
30 assert.equal('foo=bar; Domain=example.com', cookie.serialize('foo', 'bar', {
31 domain: 'example.com'
32 }));
33});
34
35test('httpOnly', function() {
36 assert.equal('foo=bar; HttpOnly', cookie.serialize('foo', 'bar', {
37 httpOnly: true
38 }));
39});
40
41test('maxAge', function() {
42 assert.equal('foo=bar; Max-Age=1000', cookie.serialize('foo', 'bar', {
43 maxAge: 1000
44 }));
45});
46
47test('escaping', function() {
48 assert.deepEqual('cat=%2B%20', cookie.serialize('cat', '+ '));
49});
50
51test('parse->serialize', function() {
52
53 assert.deepEqual({ cat: 'foo=123&name=baz five' }, cookie.parse(
54 cookie.serialize('cat', 'foo=123&name=baz five')));
55
56 assert.deepEqual({ cat: ' ";/' }, cookie.parse(
57 cookie.serialize('cat', ' ";/')));
58});
59
60test('unencoded', function() {
61 assert.deepEqual('cat=+ ', cookie.serialize('cat', '+ ', {
62 encode: function(value) { return value; }
63 }));
64})