summaryrefslogtreecommitdiff
path: root/node_modules/foreachasync/test.js
blob: 7c1cfe952818553dff7797043804de0aac4ac4ee (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
(function () {
  "use strict";

  var forEachAsync = require('./forEachAsync').forEachAsync
    ;

  forEachAsync([0, 500, 70, 200, 400, 100], function (next, element, i, arr) {
    // test that array order is as expected
    console.log(element, 'is element', i, 'of', arr.length);

    // test that thisness is applied
    this[element] = i;

    if (i > 2) {
      // test that synchronous callbacks don't mess things up
      next();
    } else {
      // test asynchronous callbacks
      setTimeout(next, element);
    }
  }, {}).then(function () {
    // test that thisness carries
    console.log(this);
  }).then(function () {
    // test then chaining
    console.log("now wasn't that nice?");
  });

}());