12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- var async = require('../lib/vasync');
- /*
- * tryEach tests, transliterated from mocha to tap.
- *
- * They are nearly identical except for some details related to vasync. For
- * example, we don't support calling the callback more than once from any of
- * the given functions.
- */
- exports['tryEach no callback'] = function (test) {
- async.tryEach([]);
- test.done();
- };
- exports['tryEach empty'] = function (test) {
- async.tryEach([], function (err, results) {
- test.equals(err, null);
- test.same(results, undefined);
- test.done();
- });
- };
- exports['tryEach one task, multiple results'] = function (test) {
- var RESULTS = ['something', 'something2'];
- async.tryEach([
- function (callback) {
- callback(null, RESULTS[0], RESULTS[1]);
- }
- ], function (err, results) {
- test.equals(err, null);
- test.same(results, RESULTS);
- test.done();
- });
- };
- exports['tryEach one task'] = function (test) {
- var RESULT = 'something';
- async.tryEach([
- function (callback) {
- callback(null, RESULT);
- }
- ], function (err, results) {
- test.equals(err, null);
- test.same(results, RESULT);
- test.done();
- });
- };
- exports['tryEach two tasks, one failing'] = function (test) {
- var RESULT = 'something';
- async.tryEach([
- function (callback) {
- callback(new Error('Failure'), {});
- },
- function (callback) {
- callback(null, RESULT);
- }
- ], function (err, results) {
- test.equals(err, null);
- test.same(results, RESULT);
- test.done();
- });
- };
- exports['tryEach two tasks, both failing'] = function (test) {
- var ERROR_RESULT = new Error('Failure2');
- async.tryEach([
- function (callback) {
- callback(new Error('Should not stop here'));
- },
- function (callback) {
- callback(ERROR_RESULT);
- }
- ], function (err, results) {
- test.equals(err, ERROR_RESULT);
- test.same(results, undefined);
- test.done();
- });
- };
- exports['tryEach two tasks, non failing'] = function (test) {
- var RESULT = 'something';
- async.tryEach([
- function (callback) {
- callback(null, RESULT);
- },
- function () {
- test.fail('Should not been called');
- }
- ], function (err, results) {
- test.equals(err, null);
- test.same(results, RESULT);
- test.done();
- });
- };
|