diff --git a/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.dnannsumkbn.js b/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.dnannsumkbn.js index 827fa8ef5c77..9e33b66bf5a6 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.dnannsumkbn.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.dnannsumkbn.js @@ -232,6 +232,23 @@ tape( 'if provided a `stride` parameter equal to `0`, the function returns the s t.end(); }); +tape( 'if provided a `stride` parameter equal to `0` and the first element is `NaN`, the function returns `0.0`', function test( t ) { + var expected; + var out; + var x; + var v; + + x = new Float64Array( [ NaN, -2.0, -4.0, 5.0, 3.0 ] ); + + out = new Float64Array( 2 ); + v = dnannsumkbn( x.length, x, 0, out, 1 ); + + expected = new Float64Array( [ 0.0, 0.0 ] ); + t.deepEqual( v, expected, 'returns expected value' ); + + t.end(); +}); + tape( 'the function supports view offsets', function test( t ) { var expected0; var expected1; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.dnannsumkbn.native.js b/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.dnannsumkbn.native.js index db71a389d272..247fe526f0c9 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.dnannsumkbn.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.dnannsumkbn.native.js @@ -241,6 +241,23 @@ tape( 'if provided a `stride` parameter equal to `0`, the function returns the s t.end(); }); +tape( 'if provided a `stride` parameter equal to `0` and the first element is `NaN`, the function returns `0.0`', opts, function test( t ) { + var expected; + var out; + var x; + var v; + + x = new Float64Array( [ NaN, -2.0, -4.0, 5.0, 3.0 ] ); + + out = new Float64Array( 2 ); + v = dnannsumkbn( x.length, x, 0, out, 1 ); + + expected = new Float64Array( [ 0.0, 0.0 ] ); + t.deepEqual( v, expected, 'returns expected value' ); + + t.end(); +}); + tape( 'the function supports view offsets', opts, function test( t ) { var expected0; var expected1; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.ndarray.js b/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.ndarray.js index ba07429ebe6a..230bbf3d8623 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.ndarray.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.ndarray.js @@ -232,6 +232,23 @@ tape( 'if provided a `stride` parameter equal to `0`, the function returns the s t.end(); }); +tape( 'if provided a `stride` parameter equal to `0` and the first element is `NaN`, the function returns `0.0`', function test( t ) { + var expected; + var out; + var x; + var v; + + x = new Float64Array( [ NaN, -2.0, -4.0, 5.0, 3.0 ] ); + + out = new Float64Array( 2 ); + v = dnannsumkbn( x.length, x, 0, 0, out, 1, 0 ); + + expected = new Float64Array( [ 0.0, 0.0 ] ); + t.deepEqual( v, expected, 'returns expected value' ); + + t.end(); +}); + tape( 'the function supports `offset` parameters', function test( t ) { var expected; var out; diff --git a/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.ndarray.native.js b/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.ndarray.native.js index a9c95fe273ce..7dafbc63931d 100644 --- a/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.ndarray.native.js +++ b/lib/node_modules/@stdlib/blas/ext/base/dnannsumkbn/test/test.ndarray.native.js @@ -241,6 +241,23 @@ tape( 'if provided a `stride` parameter equal to `0`, the function returns the s t.end(); }); +tape( 'if provided a `stride` parameter equal to `0` and the first element is `NaN`, the function returns `0.0`', opts, function test( t ) { + var expected; + var out; + var x; + var v; + + x = new Float64Array( [ NaN, -2.0, -4.0, 5.0, 3.0 ] ); + + out = new Float64Array( 2 ); + v = dnannsumkbn( x.length, x, 0, 0, out, 1, 0 ); + + expected = new Float64Array( [ 0.0, 0.0 ] ); + t.deepEqual( v, expected, 'returns expected value' ); + + t.end(); +}); + tape( 'the function supports `offset` parameters', opts, function test( t ) { var expected; var out;