aboutsummaryrefslogtreecommitdiff
path: root/bench/snippets/crypto.mjs
diff options
context:
space:
mode:
Diffstat (limited to 'bench/snippets/crypto.mjs')
-rw-r--r--bench/snippets/crypto.mjs17
1 files changed, 12 insertions, 5 deletions
diff --git a/bench/snippets/crypto.mjs b/bench/snippets/crypto.mjs
index 572e127bc..132e6595d 100644
--- a/bench/snippets/crypto.mjs
+++ b/bench/snippets/crypto.mjs
@@ -1,18 +1,25 @@
// so it can run in environments without node module resolution
import { bench, run } from "../node_modules/mitata/src/cli.mjs";
+var crypto = globalThis.crypto;
// web crypto is not a global in node
-if (!globalThis.crypto) {
- globalThis.crypto = await import("crypto");
+if (!crypto) {
+ crypto = await import("crypto");
}
-var foo = new Uint8Array(2);
-bench("crypto.getRandomValues()", () => {
+var foo = new Uint8Array(65536);
+bench("crypto.getRandomValues(65536)", () => {
crypto.getRandomValues(foo);
});
+var small = new Uint8Array(32);
+bench("crypto.getRandomValues(32)", () => {
+ crypto.getRandomValues(small);
+});
+
bench("crypto.randomUUID()", () => {
- crypto.randomUUID();
+ // node uses a rope string for each hex byte so any subsequent operation after creating it is slow
+ return crypto.randomUUID()[2];
});
await run();