UNPKG

fluentnode

Version:

Fluent apis for node (based on the concepts used in C#'s FluentSharp

102 lines (99 loc) 4.44 kB
// Generated by CoffeeScript 1.12.7 (function() { require('../../src/fluentnode'); describe('| node-native | crypo', function() { var value; value = "abc123"; it('add_Random_Chars', function() { return using(value, function() { this.add_Random_Chars(1).size().assert_Is(value.size().add(1)); this.add_Random_Chars().size().assert_Above(value.size().add(5)); return this.add_Random_Chars(100).size().assert_Above(value.size().add(80)); }); }); it('add_Random_String', function() { return using(value, function() { this.add_Random_String().size().assert_Is(value.size().add(10)); this.add_Random_String(1).size().assert_Is(value.size().add(1)); return this.add_Random_String(100).size().assert_Is(value.size().add(100)); }); }); it('add_Random_Letters', function() { var char, charSet_Letters, charSet_Numbers, j, len, randomLetters, results; value.add_Random_Letters(5).size().assert_Is(value.size().add(5)); randomLetters = "".add_Random_Letters(5); charSet_Numbers = '0123456789'; charSet_Letters = 'abcdefghijklmnopqrstuvwxyz'; results = []; for (j = 0, len = randomLetters.length; j < len; j++) { char = randomLetters[j]; (function() { return charSet_Numbers.assert_Contains(char); }).assert_Throws(); results.push((function() { return charSet_Letters.assert_Contains(char); }).assert_Not_Throws()); } return results; }); it('add_5_Random_Letters', function() { value.add_5_Random_Letters().size().assert_Is(value.size().add(5)); value.add_5_Letters().size().assert_Is(value.size().add(5)); return ''.add_5_Random_Letters.assert_Is(''.add_5_Letters); }); it('add_Random_Numbers', function() { var char, charSet_Letters, charSet_Numbers, j, len, randomNumbers, results; value.add_Random_Numbers(5).size().assert_Is(value.size() + 5); "".add_Random_Numbers(500).size().assert_Is(500); randomNumbers = "".add_Random_Numbers(5); charSet_Numbers = '0123456789'; charSet_Letters = 'abcdefghijklmnopqrstuvwxyz'; results = []; for (j = 0, len = randomNumbers.length; j < len; j++) { char = randomNumbers[j]; (function() { return charSet_Numbers.assert_Contains(char); }).assert_Not_Throws(); results.push((function() { return charSet_Letters.assert_Contains(char); }).assert_Throws()); } return results; }); it('checksum', function() { '1234'.checksum().assert_Is_Not('12345'.checksum()); '1234'.checksum().assert_Is('81dc9bdb52d04dc20036dbd8313ed055'); 'admin'.checksum().assert_Is('21232f297a57a5a743894a0e4a801fc3'); '1234'.checksum('sha1').assert_Is('7110eda4d09e062aa5e4a390b0a572ac0d2c0220'); 'admin'.checksum('sha1').assert_Is('d033e22ae348aeb5660fc2140aec35850c4da997'); '1234'.checksum('sha256').assert_Is('03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4'); 'admin'.checksum('sha256').assert_Is('8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918'); '1234'.checksum('sha512').assert_Is('d404559f602eab6fd602ac7680dacbfaadd13630335e951f097af3900e9de176b6db28512f2e000b9d04fba5133e8b1c6e8df59db3a8ab9d60be4b97cc9e81db'); 'admin'.checksum('sha512').assert_Is('c7ad44cbad762a5da0a452f9e854fdc1e0e7a52a38015f23f3eab1d80b931dd472634dfac71cd34ebc35d16ab7fb8a90c81f975113d6c7538dc69dd8de9077ec'); return (function() { return 'admin'.checksum('aaa'); }).assert_Throws(function(error) { return error.message.assert_Is('Digest method not supported'); }); }); it('random_Chars', function() { var chars, count, i, j, ref, size; size = 10; chars = size.random_Chars(); count = 0; for (i = j = 0, ref = size; 0 <= ref ? j < ref : j > ref; i = 0 <= ref ? ++j : --j) { chars.charCodeAt(i + 5); count++; } return count.assert_Is(size); }); it('random_String', function() { 0..random_String().size().assert_Is_Equal_To(10); 1..random_String().size().assert_Is_Equal_To(1); return 1..random_String().assert_Size_Is(1); }); return it('random_Letters', function() { return 10..random_Letters().size().assert_Is_Equal_To(10); }); }); }).call(this);