Skip to main content
Using Deno in production at your company? Earn free Deno merch.
Give us feedback
Module

x/oak/test_deps.ts>assertRejects

A middleware framework for handling HTTP with Deno 🐿️ 🦕
Extremely Popular
Go to Latest
function assertRejects
import { assertRejects } from "https://deno.land/x/oak@v12.1.0/test_deps.ts";

Executes a function which returns a promise, expecting it to reject.

Examples

Example 1

import { assertRejects } from "https://deno.land/std@0.224.0/testing/asserts.ts";

Deno.test("doesThrow", async function () {
  await assertRejects(
    async () => {
      throw new TypeError("hello world!");
    },
  );
  await assertRejects(
    async () => {
      return Promise.reject(new Error());
    },
  );
});

// This test will not pass.
Deno.test("fails", async function () {
  await assertRejects(
    async () => {
      console.log("Hello world");
    },
  );
});

Parameters

fn: () => PromiseLike<unknown>
optional
msg: string

Returns

Promise<unknown>

Executes a function which returns a promise, expecting it to reject. 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 { assertRejects } from "https://deno.land/std@0.224.0/testing/asserts.ts";

Deno.test("doesThrow", async function () {
  await assertRejects(async () => {
    throw new TypeError("hello world!");
  }, TypeError);
  await assertRejects(
    async () => {
      throw new TypeError("hello world!");
    },
    TypeError,
    "hello",
  );
});

// This test will not pass.
Deno.test("fails", async function () {
  await assertRejects(
    async () => {
      console.log("Hello world");
    },
  );
});

Type Parameters

optional
E extends Error = Error

Parameters

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

Returns

Promise<E>