@@ -30,37 +30,6 @@ var iterEmpty = require( '@stdlib/iter/empty' );
3030var iterSubtract = require ( './../lib' ) ;
3131
3232
33- // FUNCTIONS //
34-
35- function createIterator ( arr ) {
36- var len ;
37- var it ;
38- var i ;
39-
40- len = arr . length ;
41- i = - 1 ;
42-
43- it = { } ;
44- it . next = next ;
45-
46- return it ;
47-
48- function next ( ) {
49- var out ;
50- i += 1 ;
51- if ( i < len ) {
52- out = { } ;
53- out . value = arr [ i ] ;
54- out . done = ( i === len - 1 ) ;
55- return out ;
56- }
57- return {
58- 'done' : true
59- } ;
60- }
61- }
62-
63-
6433// TESTS //
6534
6635tape ( 'main export is a function' , function test ( t ) {
@@ -701,41 +670,6 @@ tape( 'the function returns an iterator protocol-compliant object which performs
701670 t . end ( ) ;
702671} ) ;
703672
704- tape ( 'the function returns an iterator protocol-compliant object which performs element-wise subtraction (value+done)' , function test ( t ) {
705- var expected ;
706- var values1 ;
707- var values2 ;
708- var actual ;
709- var it ;
710- var i ;
711-
712- values1 = [ 1.0 , 5.0 ] ;
713- values2 = [ 3.0 , 4.0 ] ;
714- expected = [
715- {
716- 'value' : - 2.0 ,
717- 'done' : false
718- } ,
719- {
720- 'value' : 1.0 ,
721- 'done' : false
722- } ,
723- {
724- 'done' : true
725- }
726- ] ;
727-
728- it = iterSubtract ( createIterator ( values1 ) , createIterator ( values2 ) ) ;
729- t . equal ( it . next . length , 0 , 'has zero arity' ) ;
730-
731- actual = [ ] ;
732- for ( i = 0 ; i < expected . length ; i ++ ) {
733- actual . push ( it . next ( ) ) ;
734- }
735- t . deepEqual ( actual , expected , 'returns expected values' ) ;
736- t . end ( ) ;
737- } ) ;
738-
739673tape ( 'the function returns an iterator protocol-compliant object which returns `NaN` if an iterated value is non-numeric' , function test ( t ) {
740674 var expected ;
741675 var values1 ;
@@ -884,154 +818,6 @@ tape( 'the function returns an iterator protocol-compliant object which returns
884818 t . end ( ) ;
885819} ) ;
886820
887- tape ( 'the function returns an iterator protocol-compliant object which returns `NaN` if an iterated value is non-numeric (value+done)' , function test ( t ) {
888- var expected ;
889- var values1 ;
890- var values2 ;
891- var actual ;
892- var it ;
893- var i ;
894-
895- values1 = [ 1.0 , 2.0 ] ;
896- values2 = [ NaN , '4.0' ] ;
897- expected = [
898- {
899- 'value' : NaN ,
900- 'done' : false
901- } ,
902- {
903- 'value' : NaN ,
904- 'done' : false
905- } ,
906- {
907- 'done' : true
908- }
909- ] ;
910-
911- it = iterSubtract ( createIterator ( values1 ) , createIterator ( values2 ) ) ;
912- t . equal ( it . next . length , 0 , 'has zero arity' ) ;
913-
914- for ( i = 0 ; i < expected . length ; i ++ ) {
915- actual = it . next ( ) ;
916- if ( isnan ( expected [ i ] . value ) ) {
917- t . equal ( isnan ( actual . value ) , true , 'returns expected value' ) ;
918- } else {
919- t . equal ( actual . value , expected [ i ] . value , 'returns expected value' ) ;
920- }
921- t . equal ( actual . done , expected [ i ] . done , 'returns expected value' ) ;
922- }
923- t . end ( ) ;
924- } ) ;
925-
926- tape ( 'the function returns an iterator protocol-compliant object which returns `NaN` if an iterated value is non-numeric (value+done)' , function test ( t ) {
927- var expected ;
928- var values1 ;
929- var values2 ;
930- var actual ;
931- var it ;
932- var i ;
933-
934- values1 = [ NaN , '2.0' ] ;
935- values2 = [ 3.0 , 4.0 ] ;
936- expected = [
937- {
938- 'value' : NaN ,
939- 'done' : false
940- } ,
941- {
942- 'value' : NaN ,
943- 'done' : false
944- } ,
945- {
946- 'done' : true
947- }
948- ] ;
949-
950- it = iterSubtract ( createIterator ( values1 ) , createIterator ( values2 ) ) ;
951- t . equal ( it . next . length , 0 , 'has zero arity' ) ;
952-
953- for ( i = 0 ; i < expected . length ; i ++ ) {
954- actual = it . next ( ) ;
955- if ( isnan ( expected [ i ] . value ) ) {
956- t . equal ( isnan ( actual . value ) , true , 'returns expected value' ) ;
957- } else {
958- t . equal ( actual . value , expected [ i ] . value , 'returns expected value' ) ;
959- }
960- t . equal ( actual . done , expected [ i ] . done , 'returns expected value' ) ;
961- }
962- t . end ( ) ;
963- } ) ;
964-
965- tape ( 'the function returns an iterator protocol-compliant object which returns `NaN` if an iterated value is non-numeric (value+done)' , function test ( t ) {
966- var expected ;
967- var values1 ;
968- var values2 ;
969- var actual ;
970- var it ;
971- var i ;
972-
973- values1 = [ '1.0' ] ;
974- values2 = [ 3.0 ] ;
975- expected = [
976- {
977- 'value' : NaN ,
978- 'done' : false
979- } ,
980- {
981- 'done' : true
982- }
983- ] ;
984-
985- it = iterSubtract ( createIterator ( values1 ) , createIterator ( values2 ) ) ;
986- t . equal ( it . next . length , 0 , 'has zero arity' ) ;
987-
988- for ( i = 0 ; i < expected . length ; i ++ ) {
989- actual = it . next ( ) ;
990- if ( isnan ( expected [ i ] . value ) ) {
991- t . equal ( isnan ( actual . value ) , true , 'returns expected value' ) ;
992- } else {
993- t . equal ( actual . value , expected [ i ] . value , 'returns expected value' ) ;
994- }
995- t . equal ( actual . done , expected [ i ] . done , 'returns expected value' ) ;
996- }
997- t . end ( ) ;
998- } ) ;
999-
1000- tape ( 'the function returns an iterator protocol-compliant object which returns `NaN` if an iterated value is non-numeric (value+done)' , function test ( t ) {
1001- var expected ;
1002- var values1 ;
1003- var values2 ;
1004- var actual ;
1005- var it ;
1006- var i ;
1007-
1008- values1 = [ NaN ] ;
1009- values2 = [ 3.0 ] ;
1010- expected = [
1011- {
1012- 'value' : NaN ,
1013- 'done' : false
1014- } ,
1015- {
1016- 'done' : true
1017- }
1018- ] ;
1019-
1020- it = iterSubtract ( createIterator ( values1 ) , createIterator ( values2 ) ) ;
1021- t . equal ( it . next . length , 0 , 'has zero arity' ) ;
1022-
1023- for ( i = 0 ; i < expected . length ; i ++ ) {
1024- actual = it . next ( ) ;
1025- if ( isnan ( expected [ i ] . value ) ) {
1026- t . equal ( isnan ( actual . value ) , true , 'returns expected value' ) ;
1027- } else {
1028- t . equal ( actual . value , expected [ i ] . value , 'returns expected value' ) ;
1029- }
1030- t . equal ( actual . done , expected [ i ] . done , 'returns expected value' ) ;
1031- }
1032- t . end ( ) ;
1033- } ) ;
1034-
1035821tape ( 'the returned iterator has a `return` method for closing an iterator (no argument)' , function test ( t ) {
1036822 var it ;
1037823 var r ;
0 commit comments