Skip to content

Commit f82fa07

Browse files
committed
test: update isApprox with deepEqual
1 parent 71dd14f commit f82fa07

File tree

2 files changed

+32
-94
lines changed

2 files changed

+32
-94
lines changed

lib/node_modules/@stdlib/blas/base/sger/test/test.ndarray.js

Lines changed: 22 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,6 @@
2424

2525
var tape = require( 'tape' );
2626
var Float32Array = require( '@stdlib/array/float32' );
27-
var EPS = require( '@stdlib/constants/float32/eps' );
28-
var abs = require( '@stdlib/math/base/special/abs' );
2927
var sger = require( './../lib/ndarray.js' );
3028

3129

@@ -56,35 +54,6 @@ var rsa1nsa2n = require( './fixtures/row_major_sa1n_sa2n.json' );
5654
var rcap = require( './fixtures/row_major_complex_access_pattern.json' );
5755

5856

59-
// FUNCTIONS //
60-
61-
/**
62-
* Tests for element-wise approximate equality.
63-
*
64-
* @private
65-
* @param {Object} t - test object
66-
* @param {Collection} actual - actual values
67-
* @param {Collection} expected - expected values
68-
* @param {number} rtol - relative tolerance
69-
*/
70-
function isApprox( t, actual, expected, rtol ) {
71-
var delta;
72-
var tol;
73-
var i;
74-
75-
t.strictEqual( actual.length, expected.length, 'returns expected value' );
76-
for ( i = 0; i < expected.length; i++ ) {
77-
if ( actual[ i ] === expected[ i ] ) {
78-
t.strictEqual( actual[ i ], expected[ i ], 'returns expected value' );
79-
} else {
80-
delta = abs( actual[ i ] - expected[ i ] );
81-
tol = rtol * EPS * abs( expected[ i ] );
82-
t.ok( delta <= tol, 'within tolerance. actual: '+actual[ i ]+'. expected: '+expected[ i ]+'. delta: '+delta+'. tol: '+tol+'.' );
83-
}
84-
}
85-
}
86-
87-
8857
// TESTS //
8958

9059
tape( 'main export is a function', function test( t ) {
@@ -211,8 +180,8 @@ tape( 'the function the rank 1 operation `A = α*x*y^T + A` (row-major)', functi
211180
expected = new Float32Array( data.A_out );
212181

213182
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
214-
isApprox( t, a, expected, 2.0 );
215183
t.strictEqual( out, a, 'returns expected value' );
184+
t.deepEqual( out, expected, 'returns expected value' );
216185
t.end();
217186
});
218187

@@ -233,8 +202,8 @@ tape( 'the function the rank 1 operation `A = α*x*y^T + A` (column-major)', fun
233202
expected = new Float32Array( data.A_out );
234203

235204
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
236-
isApprox( t, a, expected, 2.0 );
237205
t.strictEqual( out, a, 'returns expected value' );
206+
t.deepEqual( out, expected, 'returns expected value' );
238207
t.end();
239208
});
240209

@@ -391,8 +360,8 @@ tape( 'the function supports specifying the strides of the first and second dime
391360
expected = new Float32Array( data.A_out );
392361

393362
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
394-
isApprox( t, a, expected, 2.0 );
395363
t.strictEqual( out, a, 'returns expected value' );
364+
t.deepEqual( out, expected, 'returns expected value' );
396365
t.end();
397366
});
398367

@@ -413,8 +382,8 @@ tape( 'the function supports specifying the strides of the first and second dime
413382
expected = new Float32Array( data.A_out );
414383

415384
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
416-
isApprox( t, a, expected, 2.0 );
417385
t.strictEqual( out, a, 'returns expected value' );
386+
t.deepEqual( out, expected, 'returns expected value' );
418387
t.end();
419388
});
420389

@@ -435,8 +404,8 @@ tape( 'the function supports a negative stride for the first dimension of `A` (r
435404
expected = new Float32Array( data.A_out );
436405

437406
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
438-
isApprox( t, a, expected, 2.0 );
439407
t.strictEqual( out, a, 'returns expected value' );
408+
t.deepEqual( out, expected, 'returns expected value' );
440409
t.end();
441410
});
442411

@@ -457,8 +426,8 @@ tape( 'the function supports a negative stride for the first dimension of `A` (c
457426
expected = new Float32Array( data.A_out );
458427

459428
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
460-
isApprox( t, a, expected, 2.0 );
461429
t.strictEqual( out, a, 'returns expected value' );
430+
t.deepEqual( out, expected, 'returns expected value' );
462431
t.end();
463432
});
464433

@@ -479,8 +448,8 @@ tape( 'the function supports a negative stride for the second dimension of `A` (
479448
expected = new Float32Array( data.A_out );
480449

481450
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
482-
isApprox( t, a, expected, 2.0 );
483451
t.strictEqual( out, a, 'returns expected value' );
452+
t.deepEqual( out, expected, 'returns expected value' );
484453
t.end();
485454
});
486455

@@ -501,8 +470,8 @@ tape( 'the function supports a negative stride for the second dimension of `A` (
501470
expected = new Float32Array( data.A_out );
502471

503472
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
504-
isApprox( t, a, expected, 2.0 );
505473
t.strictEqual( out, a, 'returns expected value' );
474+
t.deepEqual( out, expected, 'returns expected value' );
506475
t.end();
507476
});
508477

@@ -523,8 +492,8 @@ tape( 'the function supports negative strides for `A` (row-major)', function tes
523492
expected = new Float32Array( data.A_out );
524493

525494
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
526-
isApprox( t, a, expected, 2.0 );
527495
t.strictEqual( out, a, 'returns expected value' );
496+
t.deepEqual( out, expected, 'returns expected value' );
528497
t.end();
529498
});
530499

@@ -545,8 +514,8 @@ tape( 'the function supports negative strides for `A` (column-major)', function
545514
expected = new Float32Array( data.A_out );
546515

547516
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
548-
isApprox( t, a, expected, 2.0 );
549517
t.strictEqual( out, a, 'returns expected value' );
518+
t.deepEqual( out, expected, 'returns expected value' );
550519
t.end();
551520
});
552521

@@ -567,8 +536,8 @@ tape( 'the function supports specifying an offset parameter for `A` (row-major)'
567536
expected = new Float32Array( data.A_out );
568537

569538
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
570-
isApprox( t, a, expected, 2.0 );
571539
t.strictEqual( out, a, 'returns expected value' );
540+
t.deepEqual( out, expected, 'returns expected value' );
572541
t.end();
573542
});
574543

@@ -589,8 +558,8 @@ tape( 'the function supports specifying an offset parameter for `A` (column-majo
589558
expected = new Float32Array( data.A_out );
590559

591560
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
592-
isApprox( t, a, expected, 2.0 );
593561
t.strictEqual( out, a, 'returns expected value' );
562+
t.deepEqual( out, expected, 'returns expected value' );
594563
t.end();
595564
});
596565

@@ -611,8 +580,8 @@ tape( 'the function supports specifying `x` and `y` strides (row-major)', functi
611580
expected = new Float32Array( data.A_out );
612581

613582
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
614-
isApprox( t, a, expected, 2.0 );
615583
t.strictEqual( out, a, 'returns expected value' );
584+
t.deepEqual( out, expected, 'returns expected value' );
616585
t.end();
617586
});
618587

@@ -633,8 +602,8 @@ tape( 'the function supports specifying `x` and `y` strides (column-major)', fun
633602
expected = new Float32Array( data.A_out );
634603

635604
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
636-
isApprox( t, a, expected, 2.0 );
637605
t.strictEqual( out, a, 'returns expected value' );
606+
t.deepEqual( out, expected, 'returns expected value' );
638607
t.end();
639608
});
640609

@@ -655,8 +624,8 @@ tape( 'the function supports specifying a negative `x` stride (row-major)', func
655624
expected = new Float32Array( data.A_out );
656625

657626
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
658-
isApprox( t, a, expected, 2.0 );
659627
t.strictEqual( out, a, 'returns expected value' );
628+
t.deepEqual( out, expected, 'returns expected value' );
660629
t.end();
661630
});
662631

@@ -677,8 +646,8 @@ tape( 'the function supports specifying a negative `x` stride (column-major)', f
677646
expected = new Float32Array( data.A_out );
678647

679648
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
680-
isApprox( t, a, expected, 2.0 );
681649
t.strictEqual( out, a, 'returns expected value' );
650+
t.deepEqual( out, expected, 'returns expected value' );
682651
t.end();
683652
});
684653

@@ -699,8 +668,8 @@ tape( 'the function supports specifying a negative `y` stride (row-major)', func
699668
expected = new Float32Array( data.A_out );
700669

701670
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
702-
isApprox( t, a, expected, 2.0 );
703671
t.strictEqual( out, a, 'returns expected value' );
672+
t.deepEqual( out, expected, 'returns expected value' );
704673
t.end();
705674
});
706675

@@ -721,8 +690,8 @@ tape( 'the function supports specifying a negative `y` stride (column-major)', f
721690
expected = new Float32Array( data.A_out );
722691

723692
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
724-
isApprox( t, a, expected, 2.0 );
725693
t.strictEqual( out, a, 'returns expected value' );
694+
t.deepEqual( out, expected, 'returns expected value' );
726695
t.end();
727696
});
728697

@@ -743,8 +712,8 @@ tape( 'the function supports specifying negative strides for `x` and `y` (row-ma
743712
expected = new Float32Array( data.A_out );
744713

745714
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
746-
isApprox( t, a, expected, 2.0 );
747715
t.strictEqual( out, a, 'returns expected value' );
716+
t.deepEqual( out, expected, 'returns expected value' );
748717
t.end();
749718
});
750719

@@ -765,8 +734,8 @@ tape( 'the function supports specifying negative strides for `x` and `y` (column
765734
expected = new Float32Array( data.A_out );
766735

767736
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
768-
isApprox( t, a, expected, 2.0 );
769737
t.strictEqual( out, a, 'returns expected value' );
738+
t.deepEqual( out, expected, 'returns expected value' );
770739
t.end();
771740
});
772741

@@ -787,8 +756,8 @@ tape( 'the function supports complex access patterns (row-major)', function test
787756
expected = new Float32Array( data.A_out );
788757

789758
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
790-
isApprox( t, a, expected, 2.0 );
791759
t.strictEqual( out, a, 'returns expected value' );
760+
t.deepEqual( out, expected, 'returns expected value' );
792761
t.end();
793762
});
794763

@@ -809,7 +778,7 @@ tape( 'the function supports complex access patterns (column-major)', function t
809778
expected = new Float32Array( data.A_out );
810779

811780
out = sger( data.M, data.N, data.alpha, x, data.strideX, data.offsetX, y, data.strideY, data.offsetY, a, data.strideA1, data.strideA2, data.offsetA );
812-
isApprox( t, a, expected, 2.0 );
813781
t.strictEqual( out, a, 'returns expected value' );
782+
t.deepEqual( out, expected, 'returns expected value' );
814783
t.end();
815784
});

0 commit comments

Comments
 (0)