Skip to content

A quality control validation library built on top of @whi/serious-error-types

Notifications You must be signed in to change notification settings

mjbrisebois/skeptic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Skeptic

A quality control validation library built on top of @whi/serious-error-types. It enables developers to clearly state input/output assumptions in their code.

Overview

These validation methods cover more complex scenarios and throw specific error types where assert statements would only throw AssertionError.

Usage

const { SeriousErrors,
        FunctionIO,
        DatabaseIO } = require('@whi/skeptic');

function user ( name, age ) {
    FunctionIO.validateArguments(arguments, [
        FunctionIO.requiredArgumentType("string", "User's Name"),
        FunctionIO.optionalArgumentType("number", "User's Age"),
    ]);
}

user();
// throws MissingArgumentError

user( 22 );
// throws InvalidArgumentError

user( "Dave" );
// will not throw

user( "Dave", null );
// throws InvalidArgumentError

user( "Dave", 22 );
// will not throw

About

A quality control validation library built on top of @whi/serious-error-types

Resources

Stars

Watchers

Forks

Packages