@@ -35,6 +35,14 @@ describe('settleParallel', function () {
3535 } ) ;
3636 } ) ;
3737
38+ it ( 'allows an array of functions' , function ( done ) {
39+ bach . settleParallel ( [ fn1 , fn2 , fn3 ] ) ( function ( errors , results ) {
40+ expect ( errors ) . toEqual ( null ) ;
41+ expect ( results ) . toEqual ( [ 1 , 2 , 3 ] ) ;
42+ done ( ) ;
43+ } ) ;
44+ } ) ;
45+
3846 it ( 'should execute functions in parallel, passing settled errors and results' , function ( done ) {
3947 function slowFn ( done ) {
4048 setTimeout ( function ( ) {
@@ -75,4 +83,26 @@ describe('settleParallel', function () {
7583 } ) ;
7684 done ( ) ;
7785 } ) ;
86+
87+ it ( 'allows array of functions & extensions object' , function ( done ) {
88+ var arr = [ ] ;
89+ var fns = [ fn1 , fn2 , fn3 ] ;
90+ bach . settleParallel ( [ fn1 , fn2 , fn3 ] , {
91+ create : function ( fn , idx ) {
92+ expect ( fns ) . toContain ( fn ) ;
93+ arr [ idx ] = fn ;
94+ return arr ;
95+ } ,
96+ before : function ( storage ) {
97+ expect ( storage ) . toEqual ( arr ) ;
98+ } ,
99+ after : function ( result , storage ) {
100+ expect ( storage ) . toEqual ( arr ) ;
101+ } ,
102+ } ) ( function ( error ) {
103+ expect ( error ) . toEqual ( null ) ;
104+ expect ( arr ) . toEqual ( fns ) ;
105+ } ) ;
106+ done ( ) ;
107+ } ) ;
78108} ) ;
0 commit comments