Skip to content

Error constructor for test and validation frameworks that implements standardized AssertionError specification.

License

Notifications You must be signed in to change notification settings

chaijs/assertion-error

Folders and files

NameName
Last commit message
Last commit date

Latest commit

08a1f16 · Oct 25, 2021

History

43 Commits
Oct 25, 2021
Oct 25, 2021
Sep 26, 2021
Oct 25, 2021
Mar 5, 2015
Oct 25, 2021
Sep 26, 2021
Oct 25, 2021
Oct 25, 2021
Oct 25, 2021
Oct 25, 2021
Oct 25, 2021
Oct 25, 2021
Oct 25, 2021

Repository files navigation

AssertionError and AssertionResult classes.

build:? downloads:? devDependencies:none

What is AssertionError?

Assertion Error is a module that contains two classes: AssertionError, which is an instance of an Error, and AssertionResult which is not an instance of Error.

These can be useful for returning from a function - if the function "succeeds" return an AssertionResult and if the function fails return (or throw) an AssertionError.

Both AssertionError and AssertionResult implement the Result interface:

interface Result {
  name: "AssertionError" | "AssertionResult";
  ok: boolean;
  toJSON(...args: unknown[]): Record<string, unknown>;
}

So if a function returns AssertionResult | AssertionError it is easy to check which one is returned by checking either .name or .ok, or check instanceof Error.

Installation

Node.js

assertion-error is available on npm.

$ npm install --save assertion-error

Deno

assertion_error is available on Deno.land

import {
  AssertionError,
  AssertionResult,
} from "https://deno.land/x/assertion_error@2.0.0/mod.ts";

About

Error constructor for test and validation frameworks that implements standardized AssertionError specification.

Resources

License

Stars

Watchers

Forks

Packages

No packages published