Socket
Socket
Sign inDemoInstall

cert-is

Package Overview
Dependencies
0
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    cert-is

Provides a collection of runtime assertion tools for checking strict equality, type, and range of a set of values.


Version published
Weekly downloads
13
Maintainers
1
Install size
80.2 kB
Created
Weekly downloads
 

Readme

Source

cert-is

Provides a collection of assertion tools for checking strict equality, type, and range of a set of values.

This project aims to simplify runtime value checking for safety-critical applications.

NPM

NPM NPM NPM NPM NPM NPM

Migration Notice 0.2.1 --> 1.0.0:

  • Certifier.isRange and Checker.isRange have been removed.
  • Exports are now structured as follows:
export declare function cert(...values: any): Certifier
export declare function check(...values: any): Checker
export {
  Certifier,
  Checker,
  RangeArgumentError,
  RangeAssertionError,
  TypeArgumentError,
  TypeAssertionError,
  ValueArgumentError,
  ValueAssertionError
};
export default cert;
  • Project has been converted to TypeScript

Update 1.0.0:

  • This library has been converted to TypeScript, but development will likely stop here.
  • Please check out jpcx/restrict-v instead.

Installation

yarn add cert-is

Testing

cd /path/to/node_modules/cert-is
yarn install -dev
yarn test

Contribution

Please raise an issue if you find any. Pull requests are welcome!

Documentation

Module: cert-is

Index
Classes
Type aliases
Functions
Type aliases
AnyConstructorFunction

Ƭ AnyConstructorFunction: object

Defined in src/certifier.ts:16

Any function that uses new to construct an object.

Type declaration:
Functions
cert

cert(...values: any): Certifier

Defined in src/index.ts:59

Constructs a Certifier instance given a set of values. All values must pass the supplied tests.

func cert

example

const certifier = cert('foo', 'bar')
certifier.is('foo') // undefined
certifier.is('bar') // undefined
certifier.is('qux') // THROWS ValueAssertionError

example

cert('foo').is('foo')                      // returns Certifier instance
cert('foo').is('bar')                      // THROWS ValueAssertionError
cert('foo').is('foo', 'bar')               // returns Certifier instance
cert('foo').isNot('foo')                   // THROWS ValueAssertionError
cert('foo').isType('string')               // returns Certifier instance
cert('foo').isType('number')               // THROWS TypeAssertionError
cert('foo').isType('string', 'number')     // returns Certifier instance
cert(new Map()).isType(Map)                // returns Certifier instance
cert(new Map()).isType(Object)             // returns Certifier instance
cert(new Map()).isType(Set)                // THROWS TypeAssertionError
cert(new Map()).isType(Map, Set)           // returns Certifier instance
cert(15).isGT(2)                           // returns Certifier instance
cert(15).isGT(2).isLT(17)                  // returns Certifier instance
cert(18).isGT(17).isLT(2)                  // THROWS RangeAssertionError
cert(15).isGT(15)                          // THROWS RangeAssertionError
cert(15).isGTE(15)                         // returns Certifier instance
cert(15, 23).isGTE(15)                     // returns Certifier instance
cert(15, 23).isGTE('foo')                  // THROWS TypeArgumentError

Parameters:

NameTypeDescription
...valuesanyValues to construct Certifier with.

Returns: Certifier

Certifier instance.


check

check(...values: any): Checker

Defined in src/index.ts:80

Constructs a Checker instance given a set of values. All values must pass the supplied tests.

func check

example

check('foo').is('foo')        // returns true
check('foo').is('bar')        // returns Checker instance
check('foo').isType('string') // returns true
check('foo').isType('bar')    // THROWS TypeArgumentError
check('foo').isGT('')         // THROWS TypeArgumentError

Parameters:

NameTypeDescription
...valuesanyValues to construct Checker with.

Returns: Checker

Checker instance.

License

This project is licensed under the MIT License - see the LICENSE file for details

Keywords

FAQs

Last updated on 24 Jan 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc