summaryrefslogtreecommitdiff
path: root/std/node/_crypto/randomBytes_test.ts
diff options
context:
space:
mode:
authorSteven Guerrero <stephenguerrero43@gmail.com>2020-10-29 21:53:27 -0500
committerGitHub <noreply@github.com>2020-10-29 22:53:27 -0400
commit5aeac009712e4b28cee4437d4d9a6f3832296672 (patch)
tree00742533110b0cd5c1ca56b85a397bd640b28a88 /std/node/_crypto/randomBytes_test.ts
parent6be6c517d0691bf1d14eef67668e575c84cdfdf4 (diff)
feat(std/node/crypto): randomBytes and pbkdf2 (#8191)
* crypto * Other thing * Test for pdkdf2 * Add randomBytes * Refactor pbkdf2 * Lint and format
Diffstat (limited to 'std/node/_crypto/randomBytes_test.ts')
-rw-r--r--std/node/_crypto/randomBytes_test.ts68
1 files changed, 68 insertions, 0 deletions
diff --git a/std/node/_crypto/randomBytes_test.ts b/std/node/_crypto/randomBytes_test.ts
new file mode 100644
index 000000000..701127dce
--- /dev/null
+++ b/std/node/_crypto/randomBytes_test.ts
@@ -0,0 +1,68 @@
+import { assert, assertEquals, assertThrows } from "../../testing/asserts.ts";
+import randomBytes, { MAX_RANDOM_VALUES, MAX_SIZE } from "./randomBytes.ts";
+
+Deno.test("randomBytes sync works correctly", function () {
+ assertEquals(randomBytes(0).length, 0, "len: " + 0);
+ assertEquals(randomBytes(3).length, 3, "len: " + 3);
+ assertEquals(randomBytes(30).length, 30, "len: " + 30);
+ assertEquals(randomBytes(300).length, 300, "len: " + 300);
+ assertEquals(
+ randomBytes(17 + MAX_RANDOM_VALUES).length,
+ 17 + MAX_RANDOM_VALUES,
+ "len: " + 17 + MAX_RANDOM_VALUES,
+ );
+ assertEquals(
+ randomBytes(MAX_RANDOM_VALUES * 100).length,
+ MAX_RANDOM_VALUES * 100,
+ "len: " + MAX_RANDOM_VALUES * 100,
+ );
+ assertThrows(() => randomBytes(MAX_SIZE + 1));
+ assertThrows(() => randomBytes(-1));
+});
+
+Deno.test("randomBytes async works correctly", function () {
+ randomBytes(0, function (err, resp) {
+ assert(!err);
+ assertEquals(resp?.length, 0, "len: " + 0);
+ });
+ randomBytes(3, function (err, resp) {
+ assert(!err);
+ assertEquals(resp?.length, 3, "len: " + 3);
+ });
+ randomBytes(30, function (err, resp) {
+ assert(!err);
+ assertEquals(resp?.length, 30, "len: " + 30);
+ });
+ randomBytes(300, function (err, resp) {
+ assert(!err);
+ assertEquals(resp?.length, 300, "len: " + 300);
+ });
+ randomBytes(17 + MAX_RANDOM_VALUES, function (err, resp) {
+ assert(!err);
+ assertEquals(
+ resp?.length,
+ 17 + MAX_RANDOM_VALUES,
+ "len: " + 17 + MAX_RANDOM_VALUES,
+ );
+ });
+ randomBytes(MAX_RANDOM_VALUES * 100, function (err, resp) {
+ assert(!err);
+ assertEquals(
+ resp?.length,
+ MAX_RANDOM_VALUES * 100,
+ "len: " + MAX_RANDOM_VALUES * 100,
+ );
+ });
+ assertThrows(() =>
+ randomBytes(MAX_SIZE + 1, function (err) {
+ //Shouldn't throw async
+ assert(!err);
+ })
+ );
+ assertThrows(() =>
+ randomBytes(-1, function (err) {
+ //Shouldn't throw async
+ assert(!err);
+ })
+ );
+});