From f2526054e17f82f66951f5fa7f00474e79a890dc Mon Sep 17 00:00:00 2001 From: Athan Reines Date: Wed, 19 Aug 2026 14:26:53 +0000 Subject: [PATCH] test: migrate `math/base/special/cflipsignf` to ULP-based assertions Ref: https://github.com/stdlib-js/stdlib/issues/11352 --- .../math/base/special/cflipsignf/test/test.js | 19 +++---------------- .../special/cflipsignf/test/test.native.js | 19 +++---------------- 2 files changed, 6 insertions(+), 32 deletions(-) diff --git a/lib/node_modules/@stdlib/math/base/special/cflipsignf/test/test.js b/lib/node_modules/@stdlib/math/base/special/cflipsignf/test/test.js index ced5ccdcbb07..f89eeb5b839b 100644 --- a/lib/node_modules/@stdlib/math/base/special/cflipsignf/test/test.js +++ b/lib/node_modules/@stdlib/math/base/special/cflipsignf/test/test.js @@ -24,8 +24,7 @@ var tape = require( 'tape' ); var PINF = require( '@stdlib/constants/float32/pinf' ); var NINF = require( '@stdlib/constants/float32/ninf' ); var isnanf = require( '@stdlib/math/base/assert/is-nanf' ); -var EPS = require( '@stdlib/constants/float32/eps' ); -var absf = require( '@stdlib/math/base/special/absf' ); +var isAlmostSameValue = require( '@stdlib/number/float32/base/assert/is-almost-same-value' ); var isNegativeZerof = require( '@stdlib/math/base/assert/is-negative-zerof' ); var isPositiveZerof = require( '@stdlib/math/base/assert/is-positive-zerof' ); var Complex64 = require( '@stdlib/complex/float32/ctor' ); @@ -48,13 +47,11 @@ tape( 'main export is a function', function test( t ) { }); tape( 'the function evaluates the flipsign function', function test( t ) { - var delta; var ans; var ere; var eim; var are; var aim; - var tol; var re; var im; var y; @@ -72,18 +69,8 @@ tape( 'the function evaluates the flipsign function', function test( t ) { ans = cflipsignf( z, y[ i ] ); are = real( ans ); aim = imag( ans ); - if ( are === ere[ i ] && aim === eim[ i ] ) { - t.strictEqual( are, ere[ i ], 're: '+re[ i ]+'. Expected: '+ere[ i ] ); - t.strictEqual( aim, eim[ i ], 'im: '+im[ i ]+'. Expected: '+eim[ i ] ); - } else { - delta = absf( are - ere[ i ] ); - tol = EPS * absf( ere[ i ] ); - t.ok( delta <= tol, 'within tolerance. re: '+re[ i ]+'. im: '+im[ i ]+'. Actual re: '+are+'. Expected re: '+ere[ i ]+'. delta: '+delta+'. tol: '+tol+'.' ); - - delta = absf( aim - eim[ i ] ); - tol = EPS * absf( eim[ i ] ); - t.ok( delta <= tol, 'within tolerance. re: '+re[ i ]+'. im: '+im[ i ]+'. Actual im: '+aim+'. Expected im: '+eim[ i ]+'. delta: '+delta+'. tol: '+tol+'.' ); - } + t.strictEqual( isAlmostSameValue( are, ere[ i ], 1 ), true, 'returns expected value' ); + t.strictEqual( isAlmostSameValue( aim, eim[ i ], 1 ), true, 'returns expected value' ); } t.end(); }); diff --git a/lib/node_modules/@stdlib/math/base/special/cflipsignf/test/test.native.js b/lib/node_modules/@stdlib/math/base/special/cflipsignf/test/test.native.js index bc2f3c4c065e..5ad0af38414e 100644 --- a/lib/node_modules/@stdlib/math/base/special/cflipsignf/test/test.native.js +++ b/lib/node_modules/@stdlib/math/base/special/cflipsignf/test/test.native.js @@ -25,8 +25,7 @@ var tape = require( 'tape' ); var PINF = require( '@stdlib/constants/float32/pinf' ); var NINF = require( '@stdlib/constants/float32/ninf' ); var isnanf = require( '@stdlib/math/base/assert/is-nanf' ); -var EPS = require( '@stdlib/constants/float32/eps' ); -var absf = require( '@stdlib/math/base/special/absf' ); +var isAlmostSameValue = require( '@stdlib/number/float32/base/assert/is-almost-same-value' ); var isNegativeZerof = require( '@stdlib/math/base/assert/is-negative-zerof' ); var isPositiveZerof = require( '@stdlib/math/base/assert/is-positive-zerof' ); var Complex64 = require( '@stdlib/complex/float32/ctor' ); @@ -57,13 +56,11 @@ tape( 'main export is a function', opts, function test( t ) { }); tape( 'the function evaluates the flipsign function', opts, function test( t ) { - var delta; var ans; var ere; var eim; var are; var aim; - var tol; var re; var im; var y; @@ -81,18 +78,8 @@ tape( 'the function evaluates the flipsign function', opts, function test( t ) { ans = cflipsignf( z, y[ i ] ); are = real( ans ); aim = imag( ans ); - if ( are === ere[ i ] && aim === eim[ i ] ) { - t.strictEqual( are, ere[ i ], 're: '+re[ i ]+'. Expected: '+ere[ i ] ); - t.strictEqual( aim, eim[ i ], 'im: '+im[ i ]+'. Expected: '+eim[ i ] ); - } else { - delta = absf( are - ere[ i ] ); - tol = EPS * absf( ere[ i ] ); - t.ok( delta <= tol, 'within tolerance. re: '+re[ i ]+'. im: '+im[ i ]+'. Actual re: '+are+'. Expected re: '+ere[ i ]+'. delta: '+delta+'. tol: '+tol+'.' ); - - delta = absf( aim - eim[ i ] ); - tol = EPS * absf( eim[ i ] ); - t.ok( delta <= tol, 'within tolerance. re: '+re[ i ]+'. im: '+im[ i ]+'. Actual im: '+aim+'. Expected im: '+eim[ i ]+'. delta: '+delta+'. tol: '+tol+'.' ); - } + t.strictEqual( isAlmostSameValue( are, ere[ i ], 1 ), true, 'returns expected value' ); + t.strictEqual( isAlmostSameValue( aim, eim[ i ], 1 ), true, 'returns expected value' ); } t.end(); });