forked from brix/crypto-js
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlib-wordarray-test.js
More file actions
85 lines (65 loc) · 3.23 KB
/
lib-wordarray-test.js
File metadata and controls
85 lines (65 loc) · 3.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
YUI.add('lib-wordarray-test', function (Y) {
var C = CryptoJS;
Y.Test.Runner.add(new Y.Test.Case({
name: 'WordArray',
testInit0: function () {
Y.Assert.areEqual('', C.lib.WordArray.create().toString());
},
testInit1: function () {
Y.Assert.areEqual('12345678', C.lib.WordArray.create([0x12345678]).toString());
},
testInit2: function () {
Y.Assert.areEqual('1234', C.lib.WordArray.create([0x12345678], 2).toString());
},
testToStringPassedEncoder: function () {
Y.Assert.areEqual('\x12\x34\x56\x78', C.lib.WordArray.create([0x12345678]).toString(C.enc.Latin1));
},
testToStringDefaultEncoder: function () {
Y.Assert.areEqual('12345678', C.lib.WordArray.create([0x12345678]).toString());
},
testConcat3: function () {
var wordArray1 = C.lib.WordArray.create([0x12345678], 3);
var wordArray2 = C.lib.WordArray.create([0x12345678], 3);
Y.Assert.areEqual('123456123456', wordArray1.concat(wordArray2).toString());
Y.Assert.areEqual('123456123456', wordArray1.toString());
},
testConcat4: function () {
var wordArray1 = C.lib.WordArray.create([0x12345678], 4);
var wordArray2 = C.lib.WordArray.create([0x12345678], 3);
Y.Assert.areEqual('12345678123456', wordArray1.concat(wordArray2).toString());
Y.Assert.areEqual('12345678123456', wordArray1.toString());
},
testConcat5: function () {
var wordArray1 = C.lib.WordArray.create([0x12345678], 5);
var wordArray2 = C.lib.WordArray.create([0x12345678], 3);
Y.Assert.areEqual('1234567800123456', wordArray1.concat(wordArray2).toString());
Y.Assert.areEqual('1234567800123456', wordArray1.toString());
},
testConcatLong: function () {
var wordArray1 = C.lib.WordArray.create();
var wordArray2 = C.lib.WordArray.create();
var wordArray3 = C.lib.WordArray.create();
for (var i = 0; i < 500000; i++) {
wordArray2.words[i] = i;
wordArray3.words[i] = i;
}
wordArray2.sigBytes = wordArray3.sigBytes = 500000;
Y.Assert.areEqual(wordArray2.toString() + wordArray3.toString(), wordArray1.concat(wordArray2.concat(wordArray3)).toString());
},
testClamp: function () {
var wordArray = C.lib.WordArray.create([0x12345678, 0x12345678], 3);
wordArray.clamp();
Y.Assert.areEqual([0x12345600].toString(), wordArray.words.toString());
},
testClone: function () {
var wordArray = C.lib.WordArray.create([0x12345678]);
var clone = wordArray.clone();
clone.words[0] = 0;
Y.Assert.areNotEqual(wordArray.toString(), clone.toString());
},
testRandom: function () {
Y.Assert.areNotEqual(C.lib.WordArray.random(8).toString(), C.lib.WordArray.random(8).toString());
Y.Assert.areEqual(8, C.lib.WordArray.random(8).sigBytes);
}
}));
}, '$Rev$');