/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at . */ import { reportException, executeSoon } from "../DevToolsUtils.js"; describe("DevToolsUtils", () => { describe("reportException", () => { beforeEach(() => { global.console = { error: jest.fn() }; }); it("calls console.error", () => { reportException("caller", ["you broke it"]); expect(console.error).toHaveBeenCalled(); }); it("returns a description of caller and exception text", () => { const who = "who", exception = "this is an error", msgTxt = " threw an exception: "; reportException(who, [exception]); expect(console.error).toHaveBeenCalledWith(`${who}${msgTxt}`, [ exception, ]); }); }); describe("executeSoon", () => { it("calls setTimeout with 0 ms", () => { global.setTimeout = jest.fn(); const fnc = () => {}; executeSoon(fnc); expect(setTimeout).toHaveBeenCalledWith(fnc, 0); }); }); });