Skip to main content
Module

std/node/perf_hooks_test.ts

Deno standard library
Go to Latest
File
// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license.import * as perfHooks from "./perf_hooks.ts";import { performance } from "./perf_hooks.ts";import { assertEquals } from "../testing/asserts.ts";import { assertSpyCall, assertSpyCalls, spy } from "../testing/mock.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); assertEquals(perfHooks.performance.toJSON, performance.toJSON); perfHooks.performance.measure("test"); perfHooks.performance.mark("test"); perfHooks.performance.clearMarks("test"); perfHooks.performance.now(); perfHooks.performance.toJSON(); },});
Deno.test({ name: "[perf_hooks] performance destructured", fn() { performance.measure("test"); performance.mark("test"); performance.clearMarks("test"); performance.now(); performance.toJSON(); },});
Deno.test({ name: "[perf_hooks] PerformanceEntry", fn() { assertEquals<unknown>(perfHooks.PerformanceEntry, PerformanceEntry); },});
Deno.test({ name: "[perf_hooks] EventTarget methods", fn() { const handler = spy(); performance.addEventListener("event", handler); assertSpyCalls(handler, 0); const e = new Event("event"); performance.dispatchEvent(e); // handler is called once assertSpyCalls(handler, 1); assertSpyCall(handler, 0, { args: [e] }); performance.removeEventListener("event", handler); performance.dispatchEvent(e); // handler is not called anymore assertSpyCalls(handler, 1); },});