Skip to content

Commit 33f08ed

Browse files
committed
fix: test cases
--- 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: na - 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 0130b73 commit 33f08ed

File tree

2 files changed

+310
-79
lines changed

2 files changed

+310
-79
lines changed

lib/node_modules/@stdlib/stats/base/range/test/test.ndarray.js

Lines changed: 171 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -21,94 +21,144 @@
2121
// MODULES //
2222

2323
var tape = require( 'tape' );
24-
var toAccessorArray = require( '@stdlib/array/base/to-accessor-array' );
24+
var isnan = require( '@stdlib/math/base/assert/is-nan' );
2525
var isPositiveZero = require( '@stdlib/math/base/assert/is-positive-zero' );
26+
var toAccessorArray = require( '@stdlib/array/base/to-accessor-array' );
2627
var range = require( './../lib/ndarray.js' );
2728

2829

2930
// TESTS //
3031

31-
tape('main export is a function', function test(t) {
32-
t.ok(true, __filename);
33-
t.strictEqual(typeof range, 'function', 'main export is a function');
32+
tape( 'main export is a function', function test( t ) {
33+
t.ok( true, __filename );
34+
t.strictEqual( typeof range, 'function', 'main export is a function' );
3435
t.end();
3536
});
3637

37-
tape('the function has an arity of 4', function test(t) {
38-
t.strictEqual(range.length, 4, 'has expected arity');
38+
tape( 'the function has an arity of 4', function test( t ) {
39+
t.strictEqual( range.length, 4, 'has expected arity' );
3940
t.end();
4041
});
4142

42-
tape('the function calculates the range of a strided array', function test(t) {
43+
tape( 'the function calculates the range of a strided array', function test( t ) {
4344
var x;
4445
var v;
4546

46-
x = [1.0, -2.0, -4.0, 5.0, 0.0, 3.0];
47-
v = range(x.length, x, 1, 0);
48-
t.strictEqual(v, 9.0, 'returns expected value');
47+
x = [ 1.0, -2.0, -4.0, 5.0, 0.0, 3.0 ];
48+
v = range( x.length, x, 1, 0 );
49+
t.strictEqual( v, 9.0, 'returns expected value' );
50+
51+
x = [ -4.0, -5.0 ];
52+
v = range( x.length, x, 1, 0 );
53+
t.strictEqual( v, 1.0, 'returns expected value' );
4954

50-
x = [-4.0, -5.0];
51-
v = range(x.length, x, 1, 0);
52-
t.strictEqual(v, 1.0, 'returns expected value');
55+
x = [ -0.0, 0.0, -0.0 ];
56+
v = range( x.length, x, 1, 0 );
57+
t.strictEqual( isPositiveZero( v ), true, 'returns expected value' );
5358

54-
x = [-0.0, 0.0, -0.0];
55-
v = range(x.length, x, 1, 0);
56-
t.strictEqual(isPositiveZero(v), true, 'returns expected value');
59+
x = [ NaN ];
60+
v = range( x.length, x, 1, 0 );
61+
t.strictEqual( isnan( v ), true, 'returns expected value' );
62+
63+
x = [ NaN, NaN ];
64+
v = range( x.length, x, 1, 0 );
65+
t.strictEqual( isnan( v ), true, 'returns expected value' );
5766

5867
t.end();
5968
});
6069

61-
tape('the function calculates the range of a sorted strided array (accessor)', function test(t) {
70+
tape( 'the function calculates the range of a strided array (accessors)', function test( t ) {
6271
var x;
6372
var v;
6473

65-
x = [-3.0, -2.0, -1.0, 1.0, 2.0, 3.0];
66-
v = range(x.length, toAccessorArray(x), 1, 0);
67-
t.strictEqual(v, 6.0, 'returns expected value');
74+
x = [ 1.0, -2.0, -4.0, 5.0, 0.0, 3.0 ];
75+
v = range( x.length, toAccessorArray( x ), 1, 0 );
76+
t.strictEqual( v, 9.0, 'returns expected value' );
77+
78+
x = [ -4.0, -5.0 ];
79+
v = range( x.length, toAccessorArray( x ), 1, 0 );
80+
t.strictEqual( v, 1.0, 'returns expected value' );
6881

69-
x = [3.0, 2.0, 1.0, 0.0, -1.0, -2.0, -3.0];
70-
v = range(x.length, toAccessorArray(x), 1, 0);
71-
t.strictEqual(v, 6.0, 'returns expected value');
82+
x = [ -0.0, 0.0, -0.0 ];
83+
v = range( x.length, toAccessorArray( x ), 1, 0 );
84+
t.strictEqual( isPositiveZero( v ), true, 'returns expected value' );
7285

73-
x = [-4.0, -5.0];
74-
v = range(x.length, toAccessorArray(x), 1, 0);
75-
t.strictEqual(v, 1.0, 'returns expected value');
86+
x = [ NaN ];
87+
v = range( x.length, toAccessorArray( x ), 1, 0 );
88+
t.strictEqual( isnan( v ), true, 'returns expected value' );
7689

77-
x = [-4.0, -4.0];
78-
v = range(x.length, toAccessorArray(x), 1, 0);
79-
t.strictEqual(v, 0.0, 'returns expected value');
90+
x = [ NaN, NaN ];
91+
v = range( x.length, toAccessorArray( x ), 1, 0 );
92+
t.strictEqual( isnan( v ), true, 'returns expected value' );
8093

81-
x = [-0.0, -0.0, 0.0];
82-
v = range(x.length, toAccessorArray(x), 1, 0);
83-
t.strictEqual(isPositiveZero(v), true, 'returns expected value');
94+
t.end();
95+
});
96+
97+
tape( 'if provided an `N` parameter less than or equal to `0`, the function returns `NaN`', function test( t ) {
98+
var x;
99+
var v;
84100

85-
x = [-0.0, -0.0, -0.0, 0.0];
86-
v = range(x.length, toAccessorArray(x), 1, 0);
87-
t.strictEqual(isPositiveZero(v), true, 'returns expected value');
101+
x = [ 1.0, -2.0, -4.0, 5.0, 3.0 ];
88102

89-
x = [0.0, -0.0, -0.0];
90-
v = range(x.length, toAccessorArray(x), 1, 0);
91-
t.strictEqual(isPositiveZero(v), true, 'returns expected value');
103+
v = range( 0, x, 1, 0 );
104+
t.strictEqual( isnan( v ), true, 'returns expected value' );
92105

93-
x = [5.0, 5.0, 5.0];
94-
v = range(x.length, toAccessorArray(x), 1, 0);
95-
t.strictEqual(v, 0.0, 'returns expected value');
106+
v = range( -1, x, 1, 0 );
107+
t.strictEqual( isnan( v ), true, 'returns expected value' );
96108

97109
t.end();
98110
});
99111

100-
tape('if provided an `N` parameter equal to `1`, the function returns `0` or `NaN`', function test(t) {
112+
tape( 'if provided an `N` parameter less than or equal to `0`, the function returns `NaN` (accessors)', function test( t ) {
101113
var x;
102114
var v;
103115

104-
x = [1.0, -2.0, -4.0, 5.0, 3.0];
116+
x = [ 1.0, -2.0, -4.0, 5.0, 3.0 ];
117+
118+
v = range( 0, toAccessorArray( x ), 1, 0 );
119+
t.strictEqual( isnan( v ), true, 'returns expected value' );
120+
121+
v = range( -1, toAccessorArray( x ), 1, 0 );
122+
t.strictEqual( isnan( v ), true, 'returns expected value' );
105123

106-
v = range(1, x, 1, 0);
107-
t.strictEqual(v, 0.0, 'returns expected value');
108124
t.end();
109125
});
110126

111-
tape('the function supports a `stride` parameter', function test(t) {
127+
tape( 'if provided an `N` parameter equal to `1`, the function returns `0` or `NaN`', function test( t ) {
128+
var x;
129+
var v;
130+
131+
x = [ 1.0, -2.0, -4.0, 5.0, 3.0 ];
132+
133+
v = range( 1, x, 1, 0 );
134+
t.strictEqual( v, 0.0, 'returns expected value' );
135+
136+
x = [ NaN, -2.0, -4.0, 5.0, 3.0 ];
137+
138+
v = range( 1, x, 1, 0 );
139+
t.strictEqual( isnan( v ), true, 'returns expected value' );
140+
141+
t.end();
142+
});
143+
144+
tape( 'if provided an `N` parameter equal to `1`, the function returns `0` or `NaN` (accessors)', function test( t ) {
145+
var x;
146+
var v;
147+
148+
x = [ 1.0, -2.0, -4.0, 5.0, 3.0 ];
149+
150+
v = range( 1, toAccessorArray( x ), 1, 0 );
151+
t.strictEqual( v, 0.0, 'returns expected value' );
152+
153+
x = [ NaN, -2.0, -4.0, 5.0, 3.0 ];
154+
155+
v = range( 1, toAccessorArray( x ), 1, 0 );
156+
t.strictEqual( isnan( v ), true, 'returns expected value' );
157+
158+
t.end();
159+
});
160+
161+
tape( 'the function supports a `stride` parameter', function test( t ) {
112162
var x;
113163
var v;
114164

@@ -123,13 +173,55 @@ tape('the function supports a `stride` parameter', function test(t) {
123173
2.0
124174
];
125175

126-
v = range(4, x, 2, 0);
176+
v = range( 4, x, 2, 0 );
127177

128-
t.strictEqual(v, 6.0, 'returns expected value');
178+
t.strictEqual( v, 6.0, 'returns expected value' );
129179
t.end();
130180
});
131181

132-
tape('the function supports a negative `stride` parameter', function test(t) {
182+
tape( 'the function supports a `stride` parameter (accessors)', function test( t ) {
183+
var x;
184+
var v;
185+
186+
x = [
187+
1.0, // 0
188+
2.0,
189+
2.0, // 1
190+
-7.0,
191+
-2.0, // 2
192+
3.0,
193+
4.0, // 3
194+
2.0
195+
];
196+
197+
v = range( 4, toAccessorArray( x ), 2, 0 );
198+
199+
t.strictEqual( v, 6.0, 'returns expected value' );
200+
t.end();
201+
});
202+
203+
tape( 'the function supports a negative `stride` parameter', function test( t ) {
204+
var x;
205+
var v;
206+
207+
x = [
208+
1.0, // 3
209+
2.0,
210+
2.0, // 2
211+
-7.0,
212+
-2.0, // 1
213+
3.0,
214+
4.0, // 0
215+
2.0
216+
];
217+
218+
v = range( 4, x, -2, 6 );
219+
220+
t.strictEqual( v, 6.0, 'returns expected value' );
221+
t.end();
222+
});
223+
224+
tape( 'the function supports a negative `stride` parameter (accessors)', function test( t ) {
133225
var x;
134226
var v;
135227

@@ -138,42 +230,53 @@ tape('the function supports a negative `stride` parameter', function test(t) {
138230
2.0,
139231
2.0, // 2
140232
-7.0,
141-
3.0, // 1
233+
-2.0, // 1
142234
3.0,
143235
4.0, // 0
144236
2.0
145237
];
146238

147-
v = range(4, x, -2, 6);
239+
v = range( 4, toAccessorArray( x ), -2, 6 );
148240

149-
t.strictEqual(v, 3, 'returns expected value');
241+
t.strictEqual( v, 6.0, 'returns expected value' );
150242
t.end();
151243
});
152244

153-
tape('if provided a `stride` parameter equal to `0`, the function returns `0` or `NaN`', function test(t) {
245+
tape( 'if provided a `stride` parameter equal to `0`, the function returns `0` or `NaN`', function test( t ) {
154246
var x;
155247
var v;
156248

157-
x = [1.0, -2.0, -4.0, 5.0, 3.0];
249+
x = [ 1.0, -2.0, -4.0, 5.0, 3.0 ];
250+
251+
v = range( x.length, x, 0, 0 );
252+
t.strictEqual( v, 0.0, 'returns expected value' );
253+
254+
x = [ NaN, -2.0, -4.0, 5.0, 3.0 ];
255+
256+
v = range( x.length, x, 0, 0 );
257+
t.strictEqual( isnan( v ), true, 'returns expected value' );
158258

159-
v = range(x.length, x, 0, 0);
160-
t.strictEqual(v, 0.0, 'returns expected value');
161259
t.end();
162260
});
163261

164-
tape('if provided a `stride` parameter equal to `0`, the function returns the first indexed element (accessor)', function test(t) {
262+
tape( 'if provided a `stride` parameter equal to `0`, the function returns `0` or `NaN` (accessors)', function test( t ) {
165263
var x;
166264
var v;
167265

168-
x = [1.0, -2.0, -4.0, -5.0, -6.0];
266+
x = [ 1.0, -2.0, -4.0, 5.0, 3.0 ];
267+
268+
v = range( x.length, toAccessorArray( x ), 0, 0 );
269+
t.strictEqual( v, 0.0, 'returns expected value' );
169270

170-
v = range(x.length, toAccessorArray(x), 0, 0);
171-
t.strictEqual(v, 0, 'returns expected value');
271+
x = [ NaN, -2.0, -4.0, 5.0, 3.0 ];
272+
273+
v = range( x.length, toAccessorArray( x ), 0, 0 );
274+
t.strictEqual( isnan( v ), true, 'returns expected value' );
172275

173276
t.end();
174277
});
175278

176-
tape('the function supports an `offset` parameter', function test(t) {
279+
tape( 'the function supports an `offset` parameter', function test( t ) {
177280
var x;
178281
var v;
179282

@@ -188,29 +291,29 @@ tape('the function supports an `offset` parameter', function test(t) {
188291
4.0 // 3
189292
];
190293

191-
v = range(4, x, 2, 1);
192-
t.strictEqual(v, 6.0, 'returns expected value');
294+
v = range( 4, x, 2, 1 );
295+
t.strictEqual( v, 6.0, 'returns expected value' );
193296

194297
t.end();
195298
});
196299

197-
tape('the function supports an `offset` parameter (accessor)', function test(t) {
300+
tape( 'the function supports an `offset` parameter (accessors)', function test( t ) {
198301
var x;
199302
var v;
200303

201304
x = [
202305
2.0,
203306
1.0, // 0
204307
2.0,
205-
2.0, // 1
308+
-2.0, // 1
206309
-2.0,
207-
3.0, // 2
310+
2.0, // 2
208311
3.0,
209312
4.0 // 3
210313
];
211314

212-
v = range(4, toAccessorArray(x), 2, 1);
213-
t.ok(v, 3.0, 'returns expected value');
315+
v = range( 4, toAccessorArray( x ), 2, 1 );
316+
t.strictEqual( v, 6.0, 'returns expected value' );
214317

215318
t.end();
216319
});

0 commit comments

Comments
 (0)