1 module("Ajatus::utils");
3 test("Requirements", function() {
4 ok( $.ajatus.utils, "$.ajatus.utils" );
7 test("Boolean", function() {
8 ok($.ajatus.utils.to_boolean(true) == true, "true => true");
9 ok($.ajatus.utils.to_boolean(false) == false, "false => false");
10 ok($.ajatus.utils.to_boolean("true") == true, "'true' => true");
11 ok($.ajatus.utils.to_boolean("false") == false, "'false' => false");
12 ok($.ajatus.utils.to_boolean(1) == true, "1 => true");
13 ok($.ajatus.utils.to_boolean(0) == false, "0 => false");
14 ok($.ajatus.utils.to_boolean("x") == false, "'x' => false");
17 test("MD5", function() {
18 ok( $.ajatus.utils.md5.encode("abc") == '900150983cd24fb0d6963f7d28e17f72', "abc == 900150983cd24fb0d6963f7d28e17f72" );
19 ok( $.ajatus.utils.md5.encode("client:nemein=") == '016409af20109b2d38f5d868646a806d', "client:nemein= == 016409af20109b2d38f5d868646a806d" );
20 ok( $.ajatus.utils.md5.encode("project:ajatus=") == 'f73de6e5d6830def0b10238edf65d37f', "project:ajatus= == f73de6e5d6830def0b10238edf65d37f" );
21 ok( $.ajatus.utils.md5.encode("project:ajatus=200801") == '67353a86ad5ef28c7dfe6570e22607bd', "project:ajatus=200801 == 67353a86ad5ef28c7dfe6570e22607bd" );
24 test("Base64", function() {
25 var b64_key = 'abcdefghijklmnopqrstuvwxyzåäö!';
26 var eb64_str = $.ajatus.utils.base64.encode(b64_key);
27 var db64_str = $.ajatus.utils.base64.decode(eb64_str);
29 ok( eb64_str == 'YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXrl5PYh', b64_key+" == YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXrl5PYh" );
30 ok( db64_str == b64_key, eb64_str+" == "+b64_key );
33 test("UTF-8", function() {
35 texts[0] = "1. Ascii: hello"
36 texts[1] = "2. Russian: На берегу пустынных волн"
37 texts[2] = "3. Math: ∮ E⋅da = Q, n → ∞, ∑ f(i) = ∏ g(i),"
38 texts[3] = "4. Geek: STARGΛ̊TE SG-1"
39 texts[4] = "5. Braille: ⡌⠁⠧⠑ ⠼⠁⠒ ⡍⠜⠇⠑⠹⠰⠎ ⡣⠕⠌"
41 for (var i=0; i<texts.length; i++) {
42 var e = $.ajatus.utils.utf8.encode(texts[i]);
43 var d = $.ajatus.utils.utf8.decode(e);
44 ok(texts[i] == d, "Encode/Decode: "+texts[i]);
51 function gen_ids(count) {
52 for (var i=0; i<count;i++) {
53 ids[x] = $.ajatus.utils.generate_id();
59 for (var i=0; i<100;i++) {
60 ti = setTimeout('gen_ids('+150+');', 250);
63 test("Generate id", function() {
64 ok(ids.length == 14850, "Generate 14 850 ids");
66 var match_found = false;
69 for (var i=0; i<ids.length;i++) {
72 var matched = $.inArray(key, cids);
79 ok((match_found == false && match_count == 0), "All generated ids are different");