diff --git a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js index b431f358d284..63f9b6d15d42 100644 --- a/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js +++ b/lib/node_modules/@stdlib/assert/is-cube-number/benchmark/benchmark.js @@ -16,7 +16,7 @@ * limitations under the License. */ -/* eslint-disable no-new-wrappers, no-empty-function */ +/* eslint-disable no-empty-function */ 'use strict'; @@ -31,26 +31,51 @@ var isCubeNumber = require( './../lib' ); // MAIN // -bench( pkg+'::primitives', function benchmark( b ) { +bench( pkg+'::primitives,true', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + 8, + 64, + 1, + -27, + -8, + 125, + -1000, + 27 + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::primitives,false', function benchmark( b ) { var values; var bool; var i; values = [ '5', - 5, - 4, - 0.5, - 1.0, - 0.0, - 3.14, - -5, - -4, NaN, true, false, null, - void 0 + void 0, + -6, + 7.25 ]; b.tic(); @@ -68,19 +93,51 @@ bench( pkg+'::primitives', function benchmark( b ) { b.end(); }); -bench( pkg+'::objects', function benchmark( b ) { +bench( pkg+'::objects,true', function benchmark( b ) { var values; var bool; var i; values = [ + new Number( 8 ), + new Number( 64 ), + new Number( 1 ), + new Number( -27 ), + new Number( -8 ), + new Number( 125 ), + new Number( -1000 ), + new Number( 27 ) + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::objects,false', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + new Number( 5 ), + new Number( NaN ), + new Number( 3.14 ), + new Number( -6 ), + new Number( 7.25 ), [], {}, - function noop() {}, - new Number( 8.0 ), - new Number( 0.5 ), - new Number( NaN ), - new Number( 3.14 ) + function noop() {} ]; b.tic(); @@ -98,26 +155,51 @@ bench( pkg+'::objects', function benchmark( b ) { b.end(); }); -bench( pkg+'::primitives:isPrimitive', function benchmark( b ) { +bench( pkg+'::primitives:isPrimitive,true', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + 8, + 64, + 1, + -27, + -8, + 125, + -1000, + 27 + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber.isPrimitive( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::primitives:isPrimitive,false', function benchmark( b ) { var values; var bool; var i; values = [ '5', - 5, - 4, - 3.14, - 0.5, - 1.0, - 0.0, - -5, - -4, NaN, true, false, null, - void 0 + void 0, + -6, + 7.25 ]; b.tic(); @@ -135,19 +217,23 @@ bench( pkg+'::primitives:isPrimitive', function benchmark( b ) { b.end(); }); -bench( pkg+'::objects:isPrimitive', function benchmark( b ) { +bench( pkg+'::objects:isPrimitive,false', function benchmark( b ) { var values; var bool; var i; values = [ + new Number( 8 ), + new Number( 64 ), + new Number( 1 ), + new Number( -27 ), + new Number( -8 ), + new Number( 125 ), + new Number( -1000 ), + new Number( 27 ), [], {}, - function noop() {}, - new Number( 8.0 ), - new Number( 0.5 ), - new Number( NaN ), - new Number( 3.14 ) + function noop() {} ]; b.tic(); @@ -165,26 +251,51 @@ bench( pkg+'::objects:isPrimitive', function benchmark( b ) { b.end(); }); -bench( pkg+'::primitives:isObject', function benchmark( b ) { +bench( pkg+'::primitives:isObject,false', function benchmark( b ) { var values; var bool; var i; values = [ '5', - 5, - 4, - 3.14, - 0.5, - 1.0, - 0.0, - -5, - -4, NaN, true, false, null, - void 0 + void 0, + -6, + 7.25 + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + bool = isCubeNumber.isObject( values[ i % values.length ] ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::objects:isObject,true', function benchmark( b ) { + var values; + var bool; + var i; + + values = [ + new Number( 8 ), + new Number( 64 ), + new Number( 1 ), + new Number( -27 ), + new Number( -8 ), + new Number( 125 ), + new Number( -1000 ), + new Number( 27 ) ]; b.tic(); @@ -202,19 +313,20 @@ bench( pkg+'::primitives:isObject', function benchmark( b ) { b.end(); }); -bench( pkg+'::objects:isObject', function benchmark( b ) { +bench( pkg+'::objects:isObject,false', function benchmark( b ) { var values; var bool; var i; values = [ + new Number( 5 ), + new Number( NaN ), + new Number( 3.14 ), + new Number( -6 ), + new Number( 7.25 ), [], {}, - function noop() {}, - new Number( 8.0 ), - new Number( 0.5 ), - new Number( NaN ), - new Number( 3.14 ) + function noop() {} ]; b.tic();