21
21
// MODULES //
22
22
23
23
var tape = require ( 'tape' ) ;
24
+ var isSameComplex128Array = require ( '@stdlib/assert/is-same-complex128array' ) ;
24
25
var AccessorArray = require ( '@stdlib/array/base/accessor' ) ;
25
26
var Float64Array = require ( '@stdlib/array/float64' ) ;
27
+ var Complex128Array = require ( '@stdlib/array/complex128' ) ;
26
28
var Int32Array = require ( '@stdlib/array/int32' ) ;
27
29
var zeros = require ( '@stdlib/array/zeros' ) ;
28
30
var Slice = require ( '@stdlib/slice/ctor' ) ;
@@ -269,7 +271,7 @@ tape( 'the function performs slice assignment with support for broadcasting (flo
269
271
t . strictEqual ( actual , y , 'returns expected value' ) ;
270
272
t . deepEqual ( actual , expected , 'returns expected value' ) ;
271
273
272
- x = new Float64Array ( [ 1 , 3 ] ) ;
274
+ x = new Float64Array ( [ 1.0 , 3.0 ] ) ;
273
275
y = zeros ( 3 , 'float64' ) ;
274
276
275
277
expected = new Float64Array ( [ 3.0 , 0.0 , 1.0 ] ) ;
@@ -278,7 +280,7 @@ tape( 'the function performs slice assignment with support for broadcasting (flo
278
280
t . strictEqual ( actual , y , 'returns expected value' ) ;
279
281
t . deepEqual ( actual , expected , 'returns expected value' ) ;
280
282
281
- x = new Float64Array ( [ 1 , 3 ] ) ;
283
+ x = new Float64Array ( [ 1.0 , 3.0 ] ) ;
282
284
y = zeros ( 3 , 'float64' ) ;
283
285
284
286
expected = new Float64Array ( [ 1.0 , 0.0 , 3.0 ] ) ;
@@ -287,7 +289,7 @@ tape( 'the function performs slice assignment with support for broadcasting (flo
287
289
t . strictEqual ( actual , y , 'returns expected value' ) ;
288
290
t . deepEqual ( actual , expected , 'returns expected value' ) ;
289
291
290
- x = new Float64Array ( [ 2 , 3 ] ) ;
292
+ x = new Float64Array ( [ 2.0 , 3.0 ] ) ;
291
293
y = zeros ( 3 , 'float64' ) ;
292
294
293
295
expected = new Float64Array ( [ 0.0 , 2.0 , 3.0 ] ) ;
@@ -296,7 +298,7 @@ tape( 'the function performs slice assignment with support for broadcasting (flo
296
298
t . strictEqual ( actual , y , 'returns expected value' ) ;
297
299
t . deepEqual ( actual , expected , 'returns expected value' ) ;
298
300
299
- x = new Float64Array ( [ 2 ] ) ;
301
+ x = new Float64Array ( [ 2.0 ] ) ;
300
302
y = zeros ( 3 , 'float64' ) ;
301
303
302
304
expected = new Float64Array ( [ 0.0 , 2.0 , 0.0 ] ) ;
@@ -305,7 +307,7 @@ tape( 'the function performs slice assignment with support for broadcasting (flo
305
307
t . strictEqual ( actual , y , 'returns expected value' ) ;
306
308
t . deepEqual ( actual , expected , 'returns expected value' ) ;
307
309
308
- x = new Float64Array ( [ 1 ] ) ;
310
+ x = new Float64Array ( [ 1.0 ] ) ;
309
311
y = zeros ( 3 , 'float64' ) ;
310
312
311
313
expected = new Float64Array ( [ 0.0 , 0.0 , 0.0 ] ) ;
@@ -315,7 +317,7 @@ tape( 'the function performs slice assignment with support for broadcasting (flo
315
317
t . deepEqual ( actual , expected , 'returns expected value' ) ;
316
318
317
319
// Broadcasting:
318
- x = new Float64Array ( [ 1 ] ) ;
320
+ x = new Float64Array ( [ 1.0 ] ) ;
319
321
y = zeros ( 3 , 'float64' ) ;
320
322
321
323
expected = new Float64Array ( [ 1.0 , 1.0 , 1.0 ] ) ;
@@ -324,7 +326,7 @@ tape( 'the function performs slice assignment with support for broadcasting (flo
324
326
t . strictEqual ( actual , y , 'returns expected value' ) ;
325
327
t . deepEqual ( actual , expected , 'returns expected value' ) ;
326
328
327
- x = new Float64Array ( [ 3 ] ) ;
329
+ x = new Float64Array ( [ 3.0 ] ) ;
328
330
y = zeros ( 3 , 'float64' ) ;
329
331
330
332
expected = new Float64Array ( [ 3.0 , 0.0 , 3.0 ] ) ;
@@ -336,6 +338,97 @@ tape( 'the function performs slice assignment with support for broadcasting (flo
336
338
t . end ( ) ;
337
339
} ) ;
338
340
341
+ tape ( 'the function performs slice assignment with support for broadcasting (complex128)' , function test ( t ) {
342
+ var expected ;
343
+ var actual ;
344
+ var x ;
345
+ var y ;
346
+
347
+ x = new Complex128Array ( [ 1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 ] ) ;
348
+ y = zeros ( 3 , 'complex128' ) ;
349
+
350
+ expected = new Complex128Array ( [ 1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 ] ) ;
351
+ actual = sliceAssign ( x , y , new Slice ( ) , false ) ;
352
+
353
+ t . strictEqual ( actual , y , 'returns expected value' ) ;
354
+ t . strictEqual ( isSameComplex128Array ( actual , expected ) , true , 'returns expected value' ) ;
355
+
356
+ x = new Complex128Array ( [ 1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 ] ) ;
357
+ y = zeros ( 3 , 'complex128' ) ;
358
+
359
+ expected = new Complex128Array ( [ 5.0 , 6.0 , 3.0 , 4.0 , 1.0 , 2.0 ] ) ;
360
+ actual = sliceAssign ( x , y , new Slice ( null , null , - 1 ) , false ) ;
361
+
362
+ t . strictEqual ( actual , y , 'returns expected value' ) ;
363
+ t . strictEqual ( isSameComplex128Array ( actual , expected ) , true , 'returns expected value' ) ;
364
+
365
+ x = new Complex128Array ( [ 1.0 , 2.0 , 3.0 , 4.0 ] ) ;
366
+ y = zeros ( 3 , 'complex128' ) ;
367
+
368
+ expected = new Complex128Array ( [ 3.0 , 4.0 , 0.0 , 0.0 , 1.0 , 2.0 ] ) ;
369
+ actual = sliceAssign ( x , y , new Slice ( null , null , - 2 ) , false ) ;
370
+
371
+ t . strictEqual ( actual , y , 'returns expected value' ) ;
372
+ t . strictEqual ( isSameComplex128Array ( actual , expected ) , true , 'returns expected value' ) ;
373
+
374
+ x = new Complex128Array ( [ 1.0 , 2.0 , 3.0 , 4.0 ] ) ;
375
+ y = zeros ( 3 , 'complex128' ) ;
376
+
377
+ expected = new Complex128Array ( [ 1.0 , 2.0 , 0.0 , 0.0 , 3.0 , 4.0 ] ) ;
378
+ actual = sliceAssign ( x , y , new Slice ( null , null , 2 ) , false ) ;
379
+
380
+ t . strictEqual ( actual , y , 'returns expected value' ) ;
381
+ t . strictEqual ( isSameComplex128Array ( actual , expected ) , true , 'returns expected value' ) ;
382
+
383
+ x = new Complex128Array ( [ 1.0 , 2.0 , 3.0 , 4.0 ] ) ;
384
+ y = zeros ( 3 , 'complex128' ) ;
385
+
386
+ expected = new Complex128Array ( [ 0.0 , 0.0 , 1.0 , 2.0 , 3.0 , 4.0 ] ) ;
387
+ actual = sliceAssign ( x , y , new Slice ( 1 , null ) , false ) ;
388
+
389
+ t . strictEqual ( actual , y , 'returns expected value' ) ;
390
+ t . strictEqual ( isSameComplex128Array ( actual , expected ) , true , 'returns expected value' ) ;
391
+
392
+ x = new Complex128Array ( [ 1.0 , 2.0 ] ) ;
393
+ y = zeros ( 3 , 'complex128' ) ;
394
+
395
+ expected = new Complex128Array ( [ 0.0 , 0.0 , 1.0 , 2.0 , 0.0 , 0.0 ] ) ;
396
+ actual = sliceAssign ( x , y , new Slice ( 1 , y . length - 1 ) , false ) ;
397
+
398
+ t . strictEqual ( actual , y , 'returns expected value' ) ;
399
+ t . strictEqual ( isSameComplex128Array ( actual , expected ) , true , 'returns expected value' ) ;
400
+
401
+ x = new Complex128Array ( [ 1.0 , 2.0 ] ) ;
402
+ y = zeros ( 3 , 'complex128' ) ;
403
+
404
+ expected = new Complex128Array ( [ 0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ] ) ;
405
+ actual = sliceAssign ( x , y , new Slice ( 1 , 1 ) , false ) ;
406
+
407
+ t . strictEqual ( actual , y , 'returns expected value' ) ;
408
+ t . strictEqual ( isSameComplex128Array ( actual , expected ) , true , 'returns expected value' ) ;
409
+
410
+ // Broadcasting:
411
+ x = new Complex128Array ( [ 1.0 , 2.0 ] ) ;
412
+ y = zeros ( 3 , 'complex128' ) ;
413
+
414
+ expected = new Complex128Array ( [ 1.0 , 2.0 , 1.0 , 2.0 , 1.0 , 2.0 ] ) ;
415
+ actual = sliceAssign ( x , y , new Slice ( ) , false ) ;
416
+
417
+ t . strictEqual ( actual , y , 'returns expected value' ) ;
418
+ t . strictEqual ( isSameComplex128Array ( actual , expected ) , true , 'returns expected value' ) ;
419
+
420
+ x = new Complex128Array ( [ 3.0 , 4.0 ] ) ;
421
+ y = zeros ( 3 , 'complex128' ) ;
422
+
423
+ expected = new Complex128Array ( [ 3.0 , 4.0 , 0.0 , 0.0 , 3.0 , 4.0 ] ) ;
424
+ actual = sliceAssign ( x , y , new Slice ( null , null , 2 ) , false ) ;
425
+
426
+ t . strictEqual ( actual , y , 'returns expected value' ) ;
427
+ t . strictEqual ( isSameComplex128Array ( actual , expected ) , true , 'returns expected value' ) ;
428
+
429
+ t . end ( ) ;
430
+ } ) ;
431
+
339
432
tape ( 'the function performs slice assignment with support for broadcasting (int32)' , function test ( t ) {
340
433
var expected ;
341
434
var actual ;
0 commit comments