summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans <weartistt@gmail.com>2023-06-30 15:46:48 +0800
committerGitHub <noreply@github.com>2023-06-30 16:46:48 +0900
commitaec761f75574a71f11e3faec4764aca2803e48e2 (patch)
tree21fc3796e8d9d1ce9c7f9b13dffc7b48c60123b4
parent9befc5cd48843ed2f6997181af14362d933679d9 (diff)
test(ext/node): add perf_hooks test (#19648)
-rw-r--r--cli/tests/integration/node_unit_tests.rs1
-rw-r--r--cli/tests/unit_node/perf_hooks_test.ts41
2 files changed, 42 insertions, 0 deletions
diff --git a/cli/tests/integration/node_unit_tests.rs b/cli/tests/integration/node_unit_tests.rs
index d8ed0b00d..58183e971 100644
--- a/cli/tests/integration/node_unit_tests.rs
+++ b/cli/tests/integration/node_unit_tests.rs
@@ -68,6 +68,7 @@ util::unit_test_factory!(
module_test,
net_test,
os_test,
+ perf_hooks_test,
process_test,
querystring_test,
readline_test,
diff --git a/cli/tests/unit_node/perf_hooks_test.ts b/cli/tests/unit_node/perf_hooks_test.ts
new file mode 100644
index 000000000..78375d54d
--- /dev/null
+++ b/cli/tests/unit_node/perf_hooks_test.ts
@@ -0,0 +1,41 @@
+// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
+import * as perfHooks from "node:perf_hooks";
+import { performance } from "node:perf_hooks";
+import { assertEquals } from "../../../test_util/std/testing/asserts.ts";
+
+Deno.test({
+ name: "[perf_hooks] performance",
+ fn() {
+ assertEquals(perfHooks.performance.measure, performance.measure);
+ assertEquals(perfHooks.performance.clearMarks, performance.clearMarks);
+ assertEquals(perfHooks.performance.mark, performance.mark);
+ assertEquals(perfHooks.performance.now, performance.now);
+ // @ts-ignore toJSON is not in Performance interface
+ assertEquals(perfHooks.performance.toJSON, performance.toJSON);
+ perfHooks.performance.measure("test");
+ perfHooks.performance.mark("test");
+ perfHooks.performance.clearMarks("test");
+ perfHooks.performance.now();
+ // @ts-ignore toJSON is not in Performance interface
+ perfHooks.performance.toJSON();
+ },
+});
+
+Deno.test({
+ name: "[perf_hooks] performance destructured",
+ fn() {
+ performance.measure("test");
+ performance.mark("test");
+ performance.clearMarks("test");
+ performance.now();
+ // @ts-ignore toJSON is not in Performance interface
+ performance.toJSON();
+ },
+});
+
+Deno.test({
+ name: "[perf_hooks] PerformanceEntry",
+ fn() {
+ assertEquals<unknown>(perfHooks.PerformanceEntry, PerformanceEntry);
+ },
+});