@@ -29,37 +29,6 @@ var iterCounter = require( '@stdlib/iter/counter' );
29
29
var iterDedupe = require ( './../lib' ) ;
30
30
31
31
32
- // FUNCTIONS //
33
-
34
- function createIterator ( arr ) {
35
- var len ;
36
- var it ;
37
- var i ;
38
-
39
- len = arr . length ;
40
- i = - 1 ;
41
-
42
- it = { } ;
43
- it . next = next ;
44
-
45
- return it ;
46
-
47
- function next ( ) {
48
- var out ;
49
- i += 1 ;
50
- if ( i < len ) {
51
- out = { } ;
52
- out . value = arr [ i ] ;
53
- out . done = ( i === len - 1 ) ;
54
- return out ;
55
- }
56
- return {
57
- 'done' : true
58
- } ;
59
- }
60
- }
61
-
62
-
63
32
// TESTS //
64
33
65
34
tape ( 'main export is a function' , function test ( t ) {
@@ -379,226 +348,6 @@ tape( 'the function supports specifying the number of allowed consecutive duplic
379
348
t . end ( ) ;
380
349
} ) ;
381
350
382
- tape ( 'the function returns an iterator protocol-compliant object which removes duplicated values (value+done)' , function test ( t ) {
383
- var expected ;
384
- var values ;
385
- var actual ;
386
- var it ;
387
- var i ;
388
-
389
- values = [ 1 , 1 , 2 , 3 , 3 , 4 , 4 , 4 ] ;
390
- expected = [
391
- {
392
- 'value' : 1 ,
393
- 'done' : false
394
- } ,
395
- {
396
- 'value' : 2 ,
397
- 'done' : false
398
- } ,
399
- {
400
- 'value' : 3 ,
401
- 'done' : false
402
- } ,
403
- {
404
- 'value' : 4 ,
405
- 'done' : false
406
- } ,
407
- {
408
- 'done' : true
409
- }
410
- ] ;
411
-
412
- it = iterDedupe ( createIterator ( values ) ) ;
413
- t . equal ( it . next . length , 0 , 'has zero arity' ) ;
414
-
415
- actual = [ ] ;
416
- for ( i = 0 ; i < expected . length ; i ++ ) {
417
- actual . push ( it . next ( ) ) ;
418
- }
419
- t . deepEqual ( actual , expected , 'returns expected values' ) ;
420
- t . end ( ) ;
421
- } ) ;
422
-
423
- tape ( 'the function returns an iterator protocol-compliant object which removes duplicated values (value+done; last unique)' , function test ( t ) {
424
- var expected ;
425
- var values ;
426
- var actual ;
427
- var it ;
428
- var i ;
429
-
430
- values = [ 1 , 1 , 2 , 3 , 3 , 4 ] ;
431
- expected = [
432
- {
433
- 'value' : 1 ,
434
- 'done' : false
435
- } ,
436
- {
437
- 'value' : 2 ,
438
- 'done' : false
439
- } ,
440
- {
441
- 'value' : 3 ,
442
- 'done' : false
443
- } ,
444
- {
445
- 'value' : 4 ,
446
- 'done' : true
447
- }
448
- ] ;
449
-
450
- it = iterDedupe ( createIterator ( values ) ) ;
451
- t . equal ( it . next . length , 0 , 'has zero arity' ) ;
452
-
453
- actual = [ ] ;
454
- for ( i = 0 ; i < expected . length ; i ++ ) {
455
- actual . push ( it . next ( ) ) ;
456
- }
457
- t . deepEqual ( actual , expected , 'returns expected values' ) ;
458
- t . end ( ) ;
459
- } ) ;
460
-
461
- tape ( 'the function returns an iterator protocol-compliant object which removes duplicated values (value+done; last two unique)' , function test ( t ) {
462
- var expected ;
463
- var values ;
464
- var actual ;
465
- var it ;
466
- var i ;
467
-
468
- values = [ 1 , 1 , 2 , 3 , 3 , 4 , 5 ] ;
469
- expected = [
470
- {
471
- 'value' : 1 ,
472
- 'done' : false
473
- } ,
474
- {
475
- 'value' : 2 ,
476
- 'done' : false
477
- } ,
478
- {
479
- 'value' : 3 ,
480
- 'done' : false
481
- } ,
482
- {
483
- 'value' : 4 ,
484
- 'done' : false
485
- } ,
486
- {
487
- 'value' : 5 ,
488
- 'done' : true
489
- }
490
- ] ;
491
-
492
- it = iterDedupe ( createIterator ( values ) ) ;
493
- t . equal ( it . next . length , 0 , 'has zero arity' ) ;
494
-
495
- actual = [ ] ;
496
- for ( i = 0 ; i < expected . length ; i ++ ) {
497
- actual . push ( it . next ( ) ) ;
498
- }
499
- t . deepEqual ( actual , expected , 'returns expected values' ) ;
500
- t . end ( ) ;
501
- } ) ;
502
-
503
- tape ( 'the function supports specifying the number of allowed consecutive duplicated values (value+done)' , function test ( t ) {
504
- var expected ;
505
- var values ;
506
- var actual ;
507
- var it ;
508
- var i ;
509
-
510
- values = [ 1 , 1 , 2 , 3 , 3 , 3 , 3 , 4 , 4 , 4 ] ;
511
- expected = [
512
- {
513
- 'value' : 1 ,
514
- 'done' : false
515
- } ,
516
- {
517
- 'value' : 1 ,
518
- 'done' : false
519
- } ,
520
- {
521
- 'value' : 2 ,
522
- 'done' : false
523
- } ,
524
- {
525
- 'value' : 3 ,
526
- 'done' : false
527
- } ,
528
- {
529
- 'value' : 3 ,
530
- 'done' : false
531
- } ,
532
- {
533
- 'value' : 4 ,
534
- 'done' : false
535
- } ,
536
- {
537
- 'value' : 4 ,
538
- 'done' : false
539
- } ,
540
- {
541
- 'done' : true
542
- }
543
- ] ;
544
-
545
- it = iterDedupe ( createIterator ( values ) , 2 ) ;
546
- t . equal ( it . next . length , 0 , 'has zero arity' ) ;
547
-
548
- actual = [ ] ;
549
- for ( i = 0 ; i < expected . length ; i ++ ) {
550
- actual . push ( it . next ( ) ) ;
551
- }
552
- t . deepEqual ( actual , expected , 'returns expected values' ) ;
553
- t . end ( ) ;
554
- } ) ;
555
-
556
- tape ( 'the function supports specifying the number of allowed consecutive duplicated values (value+done; last unique)' , function test ( t ) {
557
- var expected ;
558
- var values ;
559
- var actual ;
560
- var it ;
561
- var i ;
562
-
563
- values = [ 1 , 1 , 2 , 3 , 3 , 3 , 3 , 4 ] ;
564
- expected = [
565
- {
566
- 'value' : 1 ,
567
- 'done' : false
568
- } ,
569
- {
570
- 'value' : 1 ,
571
- 'done' : false
572
- } ,
573
- {
574
- 'value' : 2 ,
575
- 'done' : false
576
- } ,
577
- {
578
- 'value' : 3 ,
579
- 'done' : false
580
- } ,
581
- {
582
- 'value' : 3 ,
583
- 'done' : false
584
- } ,
585
- {
586
- 'value' : 4 ,
587
- 'done' : true
588
- }
589
- ] ;
590
-
591
- it = iterDedupe ( createIterator ( values ) , 2 ) ;
592
- t . equal ( it . next . length , 0 , 'has zero arity' ) ;
593
-
594
- actual = [ ] ;
595
- for ( i = 0 ; i < expected . length ; i ++ ) {
596
- actual . push ( it . next ( ) ) ;
597
- }
598
- t . deepEqual ( actual , expected , 'returns expected values' ) ;
599
- t . end ( ) ;
600
- } ) ;
601
-
602
351
tape ( 'the returned iterator has a `return` method for closing an iterator (no argument)' , function test ( t ) {
603
352
var it ;
604
353
var r ;
0 commit comments