'use strict'; var test = require('tape'); var through = require('../'); // must emit end before close. test('end before close', function (assert) { var ts = through(null, null, { autoDestroy: false }); var ended = false; var closed = false; ts.on('end', function () { assert.ok(!closed); ended = true; }); ts.on('close', function () { assert.ok(ended); closed = true; }); ts.write(1); ts.write(2); ts.write(3); ts.end(); assert.ok(ended); assert.notOk(closed); ts.destroy(); assert.ok(closed); assert.end(); });