You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.0 KiB
52 lines
1.0 KiB
var es = require('event-stream') |
|
var combine = require('..') |
|
var test = require('tape') |
|
|
|
test('do not duplicate errors', function (test) { |
|
|
|
var errors = 0; |
|
var pipe = combine( |
|
es.through(function(data) { |
|
return this.emit('data', data); |
|
}), |
|
es.through(function(data) { |
|
return this.emit('error', new Error(data)); |
|
}) |
|
) |
|
|
|
pipe.on('error', function(err) { |
|
errors++ |
|
test.ok(errors, 'expected error count') |
|
process.nextTick(function () { |
|
return test.end(); |
|
}) |
|
}) |
|
|
|
return pipe.write('meh'); |
|
}) |
|
|
|
test('3 pipe do not duplicate errors', function (test) { |
|
|
|
var errors = 0; |
|
var pipe = combine( |
|
es.through(function(data) { |
|
return this.emit('data', data); |
|
}), |
|
es.through(function(data) { |
|
return this.emit('error', new Error(data)); |
|
}), |
|
es.through() |
|
) |
|
|
|
pipe.on('error', function(err) { |
|
errors++ |
|
test.ok(errors, 'expected error count') |
|
process.nextTick(function () { |
|
return test.end(); |
|
}) |
|
}) |
|
|
|
return pipe.write('meh'); |
|
|
|
}) |
|
|
|
|