Initial commit
[yaffs-website] / node_modules / hawk / test / crypto.js
1 // Load modules\r
2 \r
3 var Code = require('code');\r
4 var Hawk = require('../lib');\r
5 var Lab = require('lab');\r
6 \r
7 \r
8 // Declare internals\r
9 \r
10 var internals = {};\r
11 \r
12 \r
13 // Test shortcuts\r
14 \r
15 var lab = exports.lab = Lab.script();\r
16 var describe = lab.experiment;\r
17 var it = lab.test;\r
18 var expect = Code.expect;\r
19 \r
20 \r
21 describe('Crypto', function () {\r
22 \r
23     describe('generateNormalizedString()', function () {\r
24 \r
25         it('should return a valid normalized string', function (done) {\r
26 \r
27             expect(Hawk.crypto.generateNormalizedString('header', {\r
28                 ts: 1357747017,\r
29                 nonce: 'k3k4j5',\r
30                 method: 'GET',\r
31                 resource: '/resource/something',\r
32                 host: 'example.com',\r
33                 port: 8080\r
34             })).to.equal('hawk.1.header\n1357747017\nk3k4j5\nGET\n/resource/something\nexample.com\n8080\n\n\n');\r
35 \r
36             done();\r
37         });\r
38 \r
39         it('should return a valid normalized string (ext)', function (done) {\r
40 \r
41             expect(Hawk.crypto.generateNormalizedString('header', {\r
42                 ts: 1357747017,\r
43                 nonce: 'k3k4j5',\r
44                 method: 'GET',\r
45                 resource: '/resource/something',\r
46                 host: 'example.com',\r
47                 port: 8080,\r
48                 ext: 'this is some app data'\r
49             })).to.equal('hawk.1.header\n1357747017\nk3k4j5\nGET\n/resource/something\nexample.com\n8080\n\nthis is some app data\n');\r
50 \r
51             done();\r
52         });\r
53 \r
54         it('should return a valid normalized string (payload + ext)', function (done) {\r
55 \r
56             expect(Hawk.crypto.generateNormalizedString('header', {\r
57                 ts: 1357747017,\r
58                 nonce: 'k3k4j5',\r
59                 method: 'GET',\r
60                 resource: '/resource/something',\r
61                 host: 'example.com',\r
62                 port: 8080,\r
63                 hash: 'U4MKKSmiVxk37JCCrAVIjV/OhB3y+NdwoCr6RShbVkE=',\r
64                 ext: 'this is some app data'\r
65             })).to.equal('hawk.1.header\n1357747017\nk3k4j5\nGET\n/resource/something\nexample.com\n8080\nU4MKKSmiVxk37JCCrAVIjV/OhB3y+NdwoCr6RShbVkE=\nthis is some app data\n');\r
66 \r
67             done();\r
68         });\r
69     });\r
70 });\r