@push.rocks/smartexpect
Version:
A testing library to manage expectations in code, offering both synchronous and asynchronous assertion methods.
29 lines (28 loc) • 1.47 kB
TypeScript
import { Assertion } from '../smartexpect.classes.assertion.js';
import type { TExecutionType } from '../types.js';
/**
* Namespace for number-specific matchers
*/
export declare class NumberMatchers<M extends TExecutionType> {
private assertion;
constructor(assertion: Assertion<number, M>);
toBeGreaterThan(value: number): M extends "async" ? Promise<Assertion<number, M>> : Assertion<number, M>;
toBeLessThan(value: number): M extends "async" ? Promise<Assertion<number, M>> : Assertion<number, M>;
toBeGreaterThanOrEqual(value: number): M extends "async" ? Promise<Assertion<number, M>> : Assertion<number, M>;
toBeLessThanOrEqual(value: number): M extends "async" ? Promise<Assertion<number, M>> : Assertion<number, M>;
toBeCloseTo(value: number, precision?: number): M extends "async" ? Promise<Assertion<number, M>> : Assertion<number, M>;
/** Equality check for numbers */
toEqual(value: number): M extends "async" ? Promise<Assertion<number, M>> : Assertion<number, M>;
/**
* Checks for NaN
*/
toBeNaN(): M extends "async" ? Promise<Assertion<number, M>> : Assertion<number, M>;
/**
* Checks for finite number
*/
toBeFinite(): M extends "async" ? Promise<Assertion<number, M>> : Assertion<number, M>;
/**
* Checks if number is within inclusive range
*/
toBeWithinRange(min: number, max: number): M extends "async" ? Promise<Assertion<number, M>> : Assertion<number, M>;
}