Skip to content

Commit 1a34934

Browse files
authored
test: add test cases for blas/base/strsv
PR-URL: #7166 Reviewed-by: Athan Reines <[email protected]>
1 parent c67ccf3 commit 1a34934

File tree

3 files changed

+76
-0
lines changed

3 files changed

+76
-0
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"order": "column-major",
3+
"trans": "no-transpose",
4+
"diag": "unit",
5+
"uplo": "lower",
6+
"strideX": 1,
7+
"offsetA": 0,
8+
"offsetX": 2,
9+
"LDA": 3,
10+
"strideA1": 1,
11+
"strideA2": 3,
12+
"N": 3,
13+
"A": [ 1.0, 2.0, 2.0, 0.0, 1.0, 1.0, 0.0, 0.0, 1.0 ],
14+
"x": [ 0.0, 0.0, 1.0, 2.0, 3.0 ],
15+
"x_out": [ 0.0, 0.0, 1.0, 0.0, 1.0 ]
16+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"order": "row-major",
3+
"trans": "no-transpose",
4+
"diag": "unit",
5+
"uplo": "lower",
6+
"strideX": 1,
7+
"offsetA": 0,
8+
"offsetX": 2,
9+
"LDA": 3,
10+
"strideA1": 3,
11+
"strideA2": 1,
12+
"N": 3,
13+
"A": [ 1.0, 0.0, 0.0, 2.0, 1.0, 0.0, 2.0, 1.0, 1.0 ],
14+
"x": [ 0.0, 0.0, 1.0, 2.0, 3.0 ],
15+
"x_out": [ 0.0, 0.0, 1.0, 0.0, 1.0 ]
16+
}

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

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ var rutu = require( './fixtures/row_major_u_t_u.json' );
4040
var rxt = require( './fixtures/row_major_xt.json' );
4141
var rxn = require( './fixtures/row_major_xn.json' );
4242
var roa = require( './fixtures/row_major_oa.json' );
43+
var rox = require( './fixtures/row_major_ox.json' );
4344
var rsa1sa2 = require( './fixtures/row_major_sa1_sa2.json' );
4445
var rsa1nsa2 = require( './fixtures/row_major_sa1n_sa2.json' );
4546
var rsa1sa2n = require( './fixtures/row_major_sa1_sa2n.json' );
@@ -57,6 +58,7 @@ var cutu = require( './fixtures/column_major_u_t_u.json' );
5758
var cxt = require( './fixtures/column_major_xt.json' );
5859
var cxn = require( './fixtures/column_major_xn.json' );
5960
var coa = require( './fixtures/column_major_oa.json' );
61+
var cox = require( './fixtures/column_major_ox.json' );
6062
var csa1sa2 = require( './fixtures/column_major_sa1_sa2.json' );
6163
var csa1nsa2 = require( './fixtures/column_major_sa1n_sa2.json' );
6264
var csa1sa2n = require( './fixtures/column_major_sa1_sa2n.json' );
@@ -938,6 +940,48 @@ tape( 'the function supports a negative `x` stride (column-major)', function tes
938940
t.end();
939941
});
940942

943+
tape( 'the function supports an `x` offset (row-major)', function test( t ) {
944+
var expected;
945+
var data;
946+
var out;
947+
var a;
948+
var x;
949+
950+
data = rox;
951+
952+
a = new Float32Array( data.A );
953+
x = new Float32Array( data.x );
954+
955+
expected = new Float32Array( data.x_out );
956+
957+
out = strsv( data.uplo, data.trans, data.diag, data.N, a, data.strideA1, data.strideA2, data.offsetA, x, data.strideX, data.offsetX );
958+
t.strictEqual( out, x, 'returns expected value' );
959+
t.deepEqual( out, expected, 'returns expected value' );
960+
961+
t.end();
962+
});
963+
964+
tape( 'the function supports an `x` offset (column-major)', function test( t ) {
965+
var expected;
966+
var data;
967+
var out;
968+
var a;
969+
var x;
970+
971+
data = cox;
972+
973+
a = new Float32Array( data.A );
974+
x = new Float32Array( data.x );
975+
976+
expected = new Float32Array( data.x_out );
977+
978+
out = strsv( data.uplo, data.trans, data.diag, data.N, a, data.strideA1, data.strideA2, data.offsetA, x, data.strideX, data.offsetX );
979+
t.strictEqual( out, x, 'returns expected value' );
980+
t.deepEqual( out, expected, 'returns expected value' );
981+
982+
t.end();
983+
});
984+
941985
tape( 'the function supports complex access patterns (row-major)', function test( t ) {
942986
var expected;
943987
var data;

0 commit comments

Comments
 (0)