From 9ab5c7c18237d4c82b8e4178a5fa2998025a3c7e Mon Sep 17 00:00:00 2001 From: stdlib-bot Date: Wed, 1 Nov 2023 03:03:37 +0000 Subject: [PATCH] Auto-generated commit --- .github/.keepalive | 1 + .github/workflows/publish.yml | 12 +- CONTRIBUTORS | 1 + package.json | 6 +- test/dist/test.js | 406 +--------------------------------- 5 files changed, 19 insertions(+), 407 deletions(-) create mode 100644 .github/.keepalive diff --git a/.github/.keepalive b/.github/.keepalive new file mode 100644 index 0000000..6aa9b2f --- /dev/null +++ b/.github/.keepalive @@ -0,0 +1 @@ +2023-11-01T03:03:33.422Z diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index b17435b..0037bdb 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -182,7 +182,11 @@ jobs: fi # Trim leading and trailing whitespace: dep=$(echo "$dep" | xargs) - version="^$(npm view $dep version)" + version="$(npm view $dep version)" + if [[ -z "$version" ]]; then + continue + fi + version="^$version" jq -r --arg dep "$dep" --arg version "$version" '.dependencies[$dep] = $version' package.json > package.json.tmp mv package.json.tmp package.json done @@ -192,7 +196,11 @@ jobs: fi # Trim leading and trailing whitespace: dep=$(echo "$dep" | xargs) - version="^$(npm view $dep version)" + version="$(npm view $dep version)" + if [[ -z "$version" ]]; then + continue + fi + version="^$version" jq -r --arg dep "$dep" --arg version "$version" '.devDependencies[$dep] = $version' package.json > package.json.tmp mv package.json.tmp package.json done diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 93c4bde..0dae4fe 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -37,3 +37,4 @@ Stephannie Jiménez Gacha Yernar Yergaziyev orimiles5 <97595296+orimiles5@users.noreply.github.com> rei2hu +Robert Gislason diff --git a/package.json b/package.json index 28a297e..5049e50 100644 --- a/package.json +++ b/package.json @@ -37,11 +37,11 @@ "url": "https://github.com/stdlib-js/stdlib/issues" }, "dependencies": { - "@stdlib/array-float64": "^0.1.0", + "@stdlib/array-float64": "^0.1.1", "@stdlib/assert-is-array-like-object": "^0.1.0", "@stdlib/assert-is-positive-integer": "^0.1.0", "@stdlib/math-base-assert-is-nan": "^0.1.1", - "@stdlib/math-base-special-sqrt": "^0.1.0", + "@stdlib/math-base-special-sqrt": "^0.1.1", "@stdlib/string-format": "^0.1.1", "@stdlib/types": "^0.1.0" }, @@ -49,7 +49,7 @@ "@stdlib/array-buffer": "^0.1.0", "@stdlib/bench": "^0.1.0", "@stdlib/constants-float64-eps": "^0.1.1", - "@stdlib/math-base-special-abs": "^0.1.0", + "@stdlib/math-base-special-abs": "^0.1.1", "@stdlib/random-base-randu": "^0.1.0", "tape": "git+https://github.com/kgryte/tape.git#fix/globby", "istanbul": "^0.4.1", diff --git a/test/dist/test.js b/test/dist/test.js index 0a3f4d3..a8a9c60 100644 --- a/test/dist/test.js +++ b/test/dist/test.js @@ -1,7 +1,7 @@ /** * @license Apache-2.0 * -* Copyright (c) 2018 The Stdlib Authors. +* Copyright (c) 2023 The Stdlib Authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,411 +21,13 @@ // MODULES // var tape = require( 'tape' ); -var randu = require( '@stdlib/random-base-randu' ); -var abs = require( '@stdlib/math-base-special-abs' ); -var sqrt = require( '@stdlib/math-base-special-sqrt' ); -var isnan = require( '@stdlib/math-base-assert-is-nan' ); -var EPS = require( '@stdlib/constants-float64-eps' ); -var incrmmeanstdev = require( './../../dist' ); +var main = require( './../../dist' ); // TESTS // -tape( 'main export is a function', function test( t ) { +tape( 'main export is defined', function test( t ) { t.ok( true, __filename ); - t.strictEqual( typeof incrmmeanstdev, 'function', 'main export is a function' ); - t.end(); -}); - -tape( 'the function throws an error if not provided a positive integer for the window size', function test( t ) { - var values; - var i; - - values = [ - '5', - -5.0, - 0.0, - 3.14, - true, - null, - void 0, - NaN, - [], - {}, - function noop() {} - ]; - - for ( i = 0; i < values.length; i++ ) { - t.throws( badValue( values[i] ), TypeError, 'throws an error when provided '+values[i] ); - } - t.end(); - - function badValue( value ) { - return function badValue() { - incrmmeanstdev( value ); - }; - } -}); - -tape( 'the function throws an error if not provided a positive integer for the window size', function test( t ) { - var values; - var i; - - values = [ - '5', - -5.0, - 0.0, - 3.14, - true, - false, - null, - void 0, - NaN, - [], - {}, - function noop() {} - ]; - - for ( i = 0; i < values.length; i++ ) { - t.throws( badValue( values[i] ), TypeError, 'throws an error when provided '+values[i] ); - } - t.end(); - - function badValue( value ) { - return function badValue() { - incrmmeanstdev( value ); - }; - } -}); - -tape( 'the function throws an error if not provided a positive integer for the window size (output)', function test( t ) { - var values; - var i; - - values = [ - '5', - -5.0, - 0.0, - 3.14, - true, - false, - null, - void 0, - NaN, - [], - {}, - function noop() {} - ]; - - for ( i = 0; i < values.length; i++ ) { - t.throws( badValue( values[i] ), TypeError, 'throws an error when provided '+values[i] ); - } - t.end(); - - function badValue( value ) { - return function badValue() { - incrmmeanstdev( [ 0.0, 0.0 ], value ); - }; - } -}); - -tape( 'the function throws an error if not provided an array-like object for an output argument', function test( t ) { - var values; - var i; - - values = [ - '5', - -5.0, - true, - false, - null, - void 0, - NaN, - {}, - function noop() {} - ]; - - for ( i = 0; i < values.length; i++ ) { - t.throws( badValue( values[i] ), TypeError, 'throws an error when provided '+values[i] ); - } - t.end(); - - function badValue( value ) { - return function badValue() { - incrmmeanstdev( value, 3 ); - }; - } -}); - -tape( 'the function returns an accumulator function', function test( t ) { - t.equal( typeof incrmmeanstdev( 3 ), 'function', 'returns a function' ); - t.end(); -}); - -tape( 'the function returns an accumulator function (output)', function test( t ) { - t.equal( typeof incrmmeanstdev( [ 0.0, 0.0 ], 3 ), 'function', 'returns a function' ); - t.end(); -}); - -tape( 'the accumulator function computes a moving arithmetic mean and corrected sample standard deviation incrementally', function test( t ) { - var expected; - var actual; - var data; - var acc; - var N; - var i; - - data = [ 2.0, 3.0, 4.0, -1.0, 3.0, 1.0 ]; - N = data.length; - - acc = incrmmeanstdev( 3 ); - - expected = [ - [ 2.0, 0.0 ], - [ 2.5, sqrt( 0.5 ) ], - [ 3.0, sqrt( 1.0 ) ], - [ 2.0, sqrt( 7.0 ) ], - [ 2.0, sqrt( 7.0 ) ], - [ 1.0, sqrt( 4.0 ) ] - ]; - for ( i = 0; i < N; i++ ) { - actual = acc( data[ i ] ); - t.deepEqual( actual, expected[ i ], 'returns expected value' ); - } - t.end(); -}); - -tape( 'the accumulator function computes a moving arithmetic mean and corrected sample standard deviation incrementally (output)', function test( t ) { - var expected; - var actual; - var data; - var acc; - var out; - var N; - var i; - - data = [ 2.0, 3.0, 4.0, -1.0, 3.0, 1.0 ]; - N = data.length; - - out = [ 0.0, 0.0 ]; - acc = incrmmeanstdev( out, 3 ); - - expected = [ - [ 2.0, 0.0 ], - [ 2.5, sqrt( 0.5 ) ], - [ 3.0, sqrt( 1.0 ) ], - [ 2.0, sqrt( 7.0 ) ], - [ 2.0, sqrt( 7.0 ) ], - [ 1.0, sqrt( 4.0 ) ] - ]; - for ( i = 0; i < N; i++ ) { - actual = acc( data[ i ] ); - t.strictEqual( actual, out, 'returns expected value' ); - t.deepEqual( actual, expected[ i ], 'returns expected value' ); - } - t.end(); -}); - -tape( 'if not provided an input value, the accumulator function returns the current arithmetic mean and corrected sample standard deviation', function test( t ) { - var expected; - var actual; - var delta; - var data; - var tol; - var acc; - var i; - - data = [ 2.0, 3.0, 10.0 ]; - acc = incrmmeanstdev( 3 ); - for ( i = 0; i < data.length-1; i++ ) { - acc( data[ i ] ); - } - t.deepEqual( acc(), [ 2.5, sqrt( 0.5 ) ], 'returns expected value' ); - - acc( data[ data.length-1 ] ); - - expected = [ 5.0, sqrt( 19.0 ) ]; - actual = acc(); - - t.equal( actual[ 0 ], expected[ 0 ], 'returns expected value' ); - - delta = abs( actual[ 1 ] - expected[ 1 ] ); - tol = EPS * expected[ 1 ]; - t.equal( delta < tol, true, 'expected: '+expected[ 1 ]+'. actual: '+actual+'. tol: '+tol+'. delta: '+delta+'.' ); - - t.end(); -}); - -tape( 'if data has yet to be provided, the accumulator function returns `null`', function test( t ) { - var acc = incrmmeanstdev( 3 ); - t.equal( acc(), null, 'returns null' ); - t.end(); -}); - -tape( 'if only one datum has been provided, the accumulator function returns `0` for the sample standard deviation', function test( t ) { - var acc = incrmmeanstdev( 3 ); - var v = acc( 2.0 ); - t.equal( v[ 0 ], 2.0, 'returns expected value' ); - t.equal( v[ 1 ], 0.0, 'returns expected value' ); - t.end(); -}); - -tape( 'if the window size is `1`, the accumulator functions always returns `0` for the sample standard deviation', function test( t ) { - var acc; - var out; - var v; - var i; - - acc = incrmmeanstdev( 1 ); - for ( i = 0; i < 100; i++ ) { - v = randu() * 100.0; - out = acc( v ); - t.equal( out[ 0 ], v, 'returns expected value' ); - t.equal( out[ 1 ], 0.0, 'returns expected value' ); - } - t.end(); -}); - -tape( 'if provided `NaN`, the accumulated values are both `NaN` for at least `W` invocations', function test( t ) { - var expected; - var data; - var acc; - var v; - var i; - - acc = incrmmeanstdev( 3 ); - - data = [ - NaN, // NaN - 3.14, // NaN, 3.14 - 3.14, // NaN, 3.14, 3.14 - NaN, // 3.14, 3.14, NaN - 3.14, // 3.14, NaN, 3.14 - 3.14, // NaN, 3.14, 3.14 - 3.14, // 3.14, 3.14, 3.14 - NaN, // 3.14, 3.14, NaN - 3.14, // 3.14, NaN, 3.14 - 3.14, // NaN, 3.14, 3.14 - 3.14, // 3.14, 3.14, 3.14 - NaN, // 3.14, 3.14, NaN - 3.14, // 3.14, NaN, 3.14 - 3.14, // NaN, 3.14, 3.14 - NaN, // 3.14, 3.14, NaN - NaN, // 3.14, NaN, NaN - NaN, // NaN, NaN, NaN - NaN, // NaN, NaN, NaN - 3.14 // NaN, NaN, 3.14 - ]; - expected = [ - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ 3.14, 0.0 ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ 3.14, 0.0 ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ] - ]; - for ( i = 0; i < data.length; i++ ) { - v = acc( data[ i ] ); - if ( isnan( expected[ i ][ 0 ] ) ) { - t.equal( isnan( v[ 0 ] ), true, 'returns expected value for window '+i ); - t.equal( isnan( v[ 1 ] ), true, 'returns expected value for window '+i ); - - v = acc(); - t.equal( isnan( v[ 0 ] ), true, 'returns expected value for window '+i ); - t.equal( isnan( v[ 1 ] ), true, 'returns expected value for window '+i ); - } else { - t.equal( v[ 0 ], expected[ i ][ 0 ], 'returns expected value for window '+i ); - t.equal( v[ 1 ], expected[ i ][ 1 ], 'returns expected value for window '+i ); - - v = acc(); - t.equal( v[ 0 ], expected[ i ][ 0 ], 'returns expected value for window '+i ); - t.equal( v[ 1 ], expected[ i ][ 1 ], 'returns expected value for window '+i ); - } - } - t.end(); -}); - -tape( 'if provided `NaN`, the accumulated values are both `NaN` for at least `W` invocations (W=1)', function test( t ) { - var expected; - var data; - var acc; - var v; - var i; - - acc = incrmmeanstdev( 1 ); - - data = [ - NaN, - 3.14, - 3.14, - NaN, - 3.14, - 3.14, - 3.14, - NaN, - 3.14, - 3.14, - 3.14, - NaN, - 3.14, - 3.14, - NaN, - NaN, - NaN, - NaN, - 3.14 - ]; - expected = [ - [ NaN, NaN ], - [ 3.14, 0.0 ], - [ 3.14, 0.0 ], - [ NaN, NaN ], - [ 3.14, 0.0 ], - [ 3.14, 0.0 ], - [ 3.14, 0.0 ], - [ NaN, NaN ], - [ 3.14, 0.0 ], - [ 3.14, 0.0 ], - [ 3.14, 0.0 ], - [ NaN, NaN ], - [ 3.14, 0.0 ], - [ 3.14, 0.0 ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ NaN, NaN ], - [ 3.14, 0.0 ] - ]; - for ( i = 0; i < data.length; i++ ) { - v = acc( data[ i ] ); - if ( isnan( expected[ i ][ 0 ] ) ) { - t.equal( isnan( v[ 0 ] ), true, 'returns expected value for window '+i ); - t.equal( isnan( v[ 1 ] ), true, 'returns expected value for window '+i ); - - v = acc(); - t.equal( isnan( v[ 0 ] ), true, 'returns expected value for window '+i ); - t.equal( isnan( v[ 1 ] ), true, 'returns expected value for window '+i ); - } else { - t.equal( v[ 0 ], expected[ i ][ 0 ], 'returns expected value for window '+i ); - t.equal( v[ 1 ], expected[ i ][ 1 ], 'returns expected value for window '+i ); - - v = acc(); - t.equal( v[ 0 ], expected[ i ][ 0 ], 'returns expected value for window '+i ); - t.equal( v[ 1 ], expected[ i ][ 1 ], 'returns expected value for window '+i ); - } - } + t.strictEqual( main !== void 0, true, 'main export is defined' ); t.end(); });