From 06d24097219b7625e0adeb0a85394b9ce37052c7 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 8 Oct 2026 10:24:31 +0000 Subject: [PATCH] test: migrate `stats/incr/apcorr` to ULP-based assertions Replaces computed relative-tolerance comparisons in the `stats/incr/apcorr` test suite with `@stdlib/assert/is-almost-same-value` ULP-based assertions. The ULP bounds were tightened to the measured minimum which still passes over the full set of test values: 4 ULP for the unknown means test and 1 ULP for the known means test. Ref: https://github.com/stdlib-js/stdlib/issues/11352 Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_015maoYHf9sFNS4w6oCmCo5b --- .../@stdlib/stats/incr/apcorr/test/test.js | 23 +++---------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/lib/node_modules/@stdlib/stats/incr/apcorr/test/test.js b/lib/node_modules/@stdlib/stats/incr/apcorr/test/test.js index c021d767f8f4..f4001a164e4f 100644 --- a/lib/node_modules/@stdlib/stats/incr/apcorr/test/test.js +++ b/lib/node_modules/@stdlib/stats/incr/apcorr/test/test.js @@ -21,9 +21,8 @@ // MODULES // var tape = require( 'tape' ); -var abs = require( '@stdlib/math/base/special/abs' ); +var isAlmostSameValue = require( '@stdlib/assert/is-almost-same-value' ); var isnan = require( '@stdlib/math/base/assert/is-nan' ); -var EPS = require( '@stdlib/constants/float64/eps' ); var incrapcorr = require( './../lib' ); @@ -100,8 +99,6 @@ tape( 'the function returns an accumulator function (known means)', function tes tape( 'the accumulator function incrementally computes a sample absolute correlation coefficient', function test( t ) { var expected; var actual; - var delta; - var tol; var acc; var x; var y; @@ -124,13 +121,7 @@ tape( 'the accumulator function incrementally computes a sample absolute correla for ( i = 0; i < x.length; i++ ) { actual = acc( x[ i ], y[ i ] ); - if ( actual === expected[ i ] ) { - t.strictEqual( actual, expected[ i ], 'returns expected result. x: '+x[i]+'. y: '+y[i]+'.' ); - } else { - delta = abs( expected[ i ] - actual ); - tol = 3.7 * EPS * abs( expected[ i ] ); - t.strictEqual( delta <= tol, true, 'x: '+x[i]+'. y: '+y[i]+'. expected: '+expected[i]+'. actual: '+actual+'. tol: '+tol+'. delta: '+delta+'.' ); - } + t.strictEqual( isAlmostSameValue( actual, expected[ i ], 4 ), true, 'returns expected value' ); } t.end(); }); @@ -138,8 +129,6 @@ tape( 'the accumulator function incrementally computes a sample absolute correla tape( 'the accumulator function incrementally computes a sample absolute correlation coefficient (known means)', function test( t ) { var expected; var actual; - var delta; - var tol; var acc; var x; var y; @@ -162,13 +151,7 @@ tape( 'the accumulator function incrementally computes a sample absolute correla for ( i = 0; i < x.length; i++ ) { actual = acc( x[ i ], y[ i ] ); - if ( actual === expected[ i ] ) { - t.strictEqual( actual, expected[ i ], 'returns expected result. x: '+x[i]+'. y: '+y[i]+'.' ); - } else { - delta = abs( expected[ i ] - actual ); - tol = EPS * abs( expected[ i ] ); - t.strictEqual( delta <= tol, true, 'x: '+x[i]+'. y: '+y[i]+'. expected: '+expected[i]+'. actual: '+actual+'. tol: '+tol+'. delta: '+delta+'.' ); - } + t.strictEqual( isAlmostSameValue( actual, expected[ i ], 1 ), true, 'returns expected value' ); } t.end(); });