advanced-assert
v0.0.1
Published
Advanced assert function
Readme
advanced-assert
Install
npm install advanced-assert --save
Only es6+
Example
import { assert } from "advanced-assert";
function divide(a: number, b: number) {
assert(b !== 0, "second parameter should not equal 0");
return a / b;
}
divide(10, 5); // OK
divide(5, 0); // throw AdvancedAssertionErrorDifference between advanced-assert and assert
Our package provides better functional to throw errors.
Custom error
import { assert } from "advanced-assert";
class NotFoundError {}
function findUserOrFail() {
const user: User | undefined = findUser();
assert(user, NotFoundError);
return user; // will always return User
}Configure package behaviour
import { assert, Settings } from "advanced-assert";
class BaseAppError {
constructor(protected message: string) {}
}
Settings.instance.throwAssertionErrorCallback = ({ message }) => {
throw new BaseAppError(message);
};
function findUserOrFail() {
const user: User | undefined = findUser();
assert(user, "User must be found"); // throw BaseAppError
return user;
}
