UNPKG

@thisisagile/easy-test

Version:

Straightforward library for testing microservices built with @thisisagile/easy

24 lines (20 loc) 629 B
import { Validatable } from '../utils/Types'; import { isA } from '../utils/Utils'; import { match } from './Match'; export const toBeValid = (v?: unknown): jest.CustomMatcherResult => match<Validatable>(v as Validatable) .undefined(s => s, 'Subject is undefined.') .not(s => isA<Validatable>(s, 'isValid'), 'Subject is not validatable.') .not(s => s.isValid, `Subject is not valid.`) .else(`Subject is valid`); expect.extend({ toBeValid, }); declare global { // eslint-disable-next-line @typescript-eslint/no-namespace namespace jest { interface Matchers<R, T> { toBeValid(): R; } } }