This repository was archived by the owner on Jan 22, 2025. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +27
-1
lines changed Expand file tree Collapse file tree 2 files changed +27
-1
lines changed Original file line number Diff line number Diff line change @@ -1522,7 +1522,7 @@ Deferred.prototype.makeNodeResolver = function (unpack) {
1522
1522
resolve ( Q_reject ( error ) ) ;
1523
1523
} else {
1524
1524
var value = { } ;
1525
- for ( var index in unpack ) {
1525
+ for ( var index = 0 ; index < unpack . length ; index ++ ) {
1526
1526
value [ unpack [ index ] ] = arguments [ index + 1 ] ;
1527
1527
}
1528
1528
resolve ( value ) ;
Original file line number Diff line number Diff line change @@ -234,6 +234,32 @@ describe("node support", function () {
234
234
. done ( done , done ) ;
235
235
} ) ;
236
236
237
+ it ( "provides arguments as array given true" , function ( done ) {
238
+ var deferred = Q . defer ( ) ;
239
+ var callback = deferred . makeNodeResolver ( true ) ;
240
+ callback ( null , 3 , 4 , 5 ) ;
241
+ deferred . promise . then ( function ( value ) {
242
+ expect ( value . length ) . toBe ( 3 ) ;
243
+ expect ( value [ 0 ] ) . toBe ( 3 ) ;
244
+ expect ( value [ 1 ] ) . toBe ( 4 ) ;
245
+ expect ( value [ 2 ] ) . toBe ( 5 ) ;
246
+ } )
247
+ . done ( done , done ) ;
248
+ } ) ;
249
+
250
+ it ( "provides arguments as object given array of names" , function ( done ) {
251
+ var deferred = Q . defer ( ) ;
252
+ var callback = deferred . makeNodeResolver ( [ "x" , "y" , "z" ] ) ;
253
+ callback ( null , 3 , 4 , 5 ) ;
254
+ deferred . promise . then ( function ( value ) {
255
+ expect ( Object . keys ( value ) . length ) . toBe ( 3 ) ;
256
+ expect ( value . x ) . toBe ( 3 ) ;
257
+ expect ( value . y ) . toBe ( 4 ) ;
258
+ expect ( value . z ) . toBe ( 5 ) ;
259
+ } )
260
+ . done ( done , done ) ;
261
+ } ) ;
262
+
237
263
} ) ;
238
264
239
265
describe ( "nodeify" , function ( ) {
You can’t perform that action at this time.
0 commit comments