Skip to content

Commit 4ab0380

Browse files
committed
test: add more tests
--- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown status: na - task: lint_package_json status: na - task: lint_repl_help status: na - task: lint_javascript_src status: passed - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: passed - task: lint_javascript_benchmarks status: na - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: na - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: na - task: lint_typescript_tests status: na - task: lint_license_headers status: passed ---
1 parent 5f956b0 commit 4ab0380

File tree

2 files changed

+67
-1
lines changed

2 files changed

+67
-1
lines changed

lib/node_modules/@stdlib/lapack/base/dgebal/lib/base.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ function dgebal( job, N, A, strideA1, strideA2, offsetA, out, strideOut, offsetO
187187
}
188188

189189
// Initialize `scale` for non-permuted submatrix
190-
is = offsetScale;
190+
is = offsetScale + (k*strideScale);
191191
for ( i = k; i <= l; i++ ) {
192192
scale[ is ] = 1.0;
193193
is += strideScale;

lib/node_modules/@stdlib/lapack/base/dgebal/test/test.dgebal.js

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -477,3 +477,69 @@ tape( 'the function returns expected values for job = B with complex input (colu
477477
t.deepEqual( scale, expectedScale, 'returns expected value' );
478478
t.end();
479479
});
480+
481+
tape( 'the function returns expected values for job = B with complex input (row-major)', function test( t ) {
482+
var expectedScale;
483+
var expectedOut;
484+
var expectedA;
485+
var scale;
486+
var info;
487+
var out;
488+
var A;
489+
490+
A = new Float64Array([
491+
1.0, 0.0, 2.0,
492+
3.0, 4.0, 5.0,
493+
6.0, 0.0, 7.0
494+
]);
495+
out = new Float64Array( 2 );
496+
scale = new Float64Array( 3 );
497+
498+
expectedOut = new Float64Array( [ 1.0, 2.0 ] );
499+
expectedScale = new Float64Array( [ 1.0, 0.5, 1.0 ] );
500+
expectedA = new Float64Array([
501+
4.0, 1.5, 5.0,
502+
0.0, 1.0, 4.0,
503+
0.0, 3.0, 7.0
504+
]);
505+
506+
info = dgebal( 'row-major', 'B', 3, A, 3, out, scale );
507+
t.strictEqual( info, 0, 'returns expected value' );
508+
t.deepEqual( out, expectedOut, 'returns expected value' );
509+
t.deepEqual( A, expectedA, 'returns expected value' );
510+
t.deepEqual( scale, expectedScale, 'returns expected value' );
511+
t.end();
512+
});
513+
514+
tape( 'the function returns expected values for job = B with complex input (column-major)', function test( t ) {
515+
var expectedScale;
516+
var expectedOut;
517+
var expectedA;
518+
var scale;
519+
var info;
520+
var out;
521+
var A;
522+
523+
A = new Float64Array([
524+
1.0, 3.0, 6.0,
525+
0.0, 4.0, 0.0,
526+
2.0, 5.0, 7.0
527+
]);
528+
out = new Float64Array( 2 );
529+
scale = new Float64Array( 3 );
530+
531+
expectedOut = new Float64Array( [ 1.0, 2.0 ] );
532+
expectedScale = new Float64Array( [ 1.0, 0.5, 1.0 ] );
533+
expectedA = new Float64Array([
534+
4.0, 0.0, 0.0,
535+
1.5, 1.0, 3.0,
536+
5.0, 4.0, 7.0
537+
]);
538+
539+
info = dgebal( 'column-major', 'B', 3, A, 3, out, scale );
540+
t.strictEqual( info, 0, 'returns expected value' );
541+
t.deepEqual( out, expectedOut, 'returns expected value' );
542+
t.deepEqual( A, expectedA, 'returns expected value' );
543+
t.deepEqual( scale, expectedScale, 'returns expected value' );
544+
t.end();
545+
});

0 commit comments

Comments
 (0)