Skip to main content
Deno 2 is finally here 🎉️
Learn more
Module

x/dtils/deps.ts>asserts.assertThrows

The best unofficial library of utilities for Deno applications
Go to Latest
function asserts.assertThrows
import { asserts } from "https://deno.land/x/dtils@2.6.0/deps.ts";
const { assertThrows } = asserts;

Executes a function, expecting it to throw. If it does not, then it throws.

Examples

Example 1

import { assertThrows } from "https://deno.land/std@0.224.0/assert/assert_throws.ts";

Deno.test("doesThrow", function (): void {
  assertThrows((): void => {
    throw new TypeError("hello world!");
  });
});

// This test will not pass.
Deno.test("fails", function (): void {
  assertThrows((): void => {
    console.log("Hello world");
  });
});

Parameters

fn: () => unknown
optional
msg: string

Returns

unknown

Executes a function, expecting it to throw. If it does not, then it throws. An error class and a string that should be included in the error message can also be asserted.

Examples

Example 1

import { assertThrows } from "https://deno.land/std@0.224.0/assert/assert_throws.ts";

Deno.test("doesThrow", function (): void {
  assertThrows((): void => {
    throw new TypeError("hello world!");
  }, TypeError);
  assertThrows(
    (): void => {
      throw new TypeError("hello world!");
    },
    TypeError,
    "hello",
  );
});

// This test will not pass.
Deno.test("fails", function (): void {
  assertThrows((): void => {
    console.log("Hello world");
  });
});

Type Parameters

optional
E extends Error = Error

Parameters

fn: () => unknown
ErrorClass: new (...args: any[]) => E
optional
msgIncludes: string
optional
msg: string