Validates if a value is an array of non-negative number primitives summing to one.
$ npm install validate.io-probability-array
For use in the browser, use browserify.
var isProbabilityArray = require( 'validate.io-probability-array' );
Validates if a value
is an array
of positive number
primitives, excluding NaN, which sum to one.
var probs = [ 0.25, 0.25, 0.3, 0.2 ];
var bool = isProbabilityArray( probs );
// returns true
Note: the method will return false
for an empty array
.
var isProbabilityArray = require( 'validate.io-probability-array' );
console.log( isProbabilityArray( [0.4,0.4,0.2] ) );
// returns true
console.log( isProbabilityArray( [1,2,3] ) );
// returns false
console.log( isProbabilityArray( [ new Number( 1 ) ] ) );
// returns false
console.log( isProbabilityArray( [] ) );
// returns false
console.log( isProbabilityArray( [ NaN ] ) );
// returns false
console.log( isProbabilityArray( ['a','b','c'] ) );
// returns false
To run the example code from the top-level application directory,
$ node ./examples/index.js
Unit tests use the Mocha test framework with Chai assertions. To run the tests, execute the following command in the top-level application directory:
$ make test
All new feature development should have corresponding unit tests to validate correct functionality.
This repository uses Istanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:
$ make test-cov
Istanbul creates a ./reports/coverage
directory. To access an HTML version of the report,
$ make view-cov
Copyright © 2015-2016. The Compute.io Authors.