1 diff --git a/lib/_stream_duplex.js b/lib/_stream_duplex.js
2 index c5a741c..a2e0d8e 100644
3 --- a/lib/_stream_duplex.js
4 +++ b/lib/_stream_duplex.js
7 module.exports = Duplex;
8 var util = require('util');
9 -var Readable = require('_stream_readable');
10 -var Writable = require('_stream_writable');
11 +var Readable = require('./_stream_readable');
12 +var Writable = require('./_stream_writable');
14 util.inherits(Duplex, Readable);
16 diff --git a/lib/_stream_passthrough.js b/lib/_stream_passthrough.js
17 index a5e9864..330c247 100644
18 --- a/lib/_stream_passthrough.js
19 +++ b/lib/_stream_passthrough.js
22 module.exports = PassThrough;
24 -var Transform = require('_stream_transform');
25 +var Transform = require('./_stream_transform');
26 var util = require('util');
27 util.inherits(PassThrough, Transform);
29 diff --git a/lib/_stream_readable.js b/lib/_stream_readable.js
30 index 0c3fe3e..90a8298 100644
31 --- a/lib/_stream_readable.js
32 +++ b/lib/_stream_readable.js
33 @@ -23,10 +23,34 @@ module.exports = Readable;
34 Readable.ReadableState = ReadableState;
36 var EE = require('events').EventEmitter;
37 +if (!EE.listenerCount) EE.listenerCount = function(emitter, type) {
38 + return emitter.listeners(type).length;
41 +if (!global.setImmediate) global.setImmediate = function setImmediate(fn) {
42 + return setTimeout(fn, 0);
44 +if (!global.clearImmediate) global.clearImmediate = function clearImmediate(i) {
45 + return clearTimeout(i);
48 var Stream = require('stream');
49 var util = require('util');
50 +if (!util.isUndefined) {
51 + var utilIs = require('core-util-is');
52 + for (var f in utilIs) {
53 + util[f] = utilIs[f];
57 -var debug = util.debuglog('stream');
60 + debug = util.debuglog('stream');
62 + debug = require('debuglog')('stream');
64 + debug = function() {};
67 util.inherits(Readable, Stream);
69 @@ -380,7 +404,7 @@ function chunkInvalid(state, chunk) {
72 function onEofChunk(stream, state) {
73 - if (state.decoder && !state.ended) {
74 + if (state.decoder && !state.ended && state.decoder.end) {
75 var chunk = state.decoder.end();
76 if (chunk && chunk.length) {
77 state.buffer.push(chunk);
78 diff --git a/lib/_stream_transform.js b/lib/_stream_transform.js
79 index b1f9fcc..b0caf57 100644
80 --- a/lib/_stream_transform.js
81 +++ b/lib/_stream_transform.js
84 module.exports = Transform;
86 -var Duplex = require('_stream_duplex');
87 +var Duplex = require('./_stream_duplex');
88 var util = require('util');
89 +if (!util.isUndefined) {
90 + var utilIs = require('core-util-is');
91 + for (var f in utilIs) {
92 + util[f] = utilIs[f];
95 util.inherits(Transform, Duplex);
98 diff --git a/lib/_stream_writable.js b/lib/_stream_writable.js
99 index ba2e920..f49288b 100644
100 --- a/lib/_stream_writable.js
101 +++ b/lib/_stream_writable.js
102 @@ -27,6 +27,12 @@ module.exports = Writable;
103 Writable.WritableState = WritableState;
105 var util = require('util');
106 +if (!util.isUndefined) {
107 + var utilIs = require('core-util-is');
108 + for (var f in utilIs) {
109 + util[f] = utilIs[f];
112 var Stream = require('stream');
114 util.inherits(Writable, Stream);
115 @@ -119,7 +125,7 @@ function WritableState(options, stream) {
116 function Writable(options) {
117 // Writable ctor is applied to Duplexes, though they're not
118 // instanceof Writable, they're instanceof Readable.
119 - if (!(this instanceof Writable) && !(this instanceof Stream.Duplex))
120 + if (!(this instanceof Writable) && !(this instanceof require('./_stream_duplex')))
121 return new Writable(options);
123 this._writableState = new WritableState(options, this);
124 diff --git a/test/simple/test-stream-big-push.js b/test/simple/test-stream-big-push.js
125 index e3787e4..8cd2127 100644
126 --- a/test/simple/test-stream-big-push.js
127 +++ b/test/simple/test-stream-big-push.js
130 var common = require('../common');
131 var assert = require('assert');
132 -var stream = require('stream');
133 +var stream = require('../../');
134 var str = 'asdfasdfasdfasdfasdf';
136 var r = new stream.Readable({
137 diff --git a/test/simple/test-stream-end-paused.js b/test/simple/test-stream-end-paused.js
138 index bb73777..d40efc7 100644
139 --- a/test/simple/test-stream-end-paused.js
140 +++ b/test/simple/test-stream-end-paused.js
141 @@ -25,7 +25,7 @@ var gotEnd = false;
143 // Make sure we don't miss the end event for paused 0-length streams
145 -var Readable = require('stream').Readable;
146 +var Readable = require('../../').Readable;
147 var stream = new Readable();
148 var calledRead = false;
149 stream._read = function() {
150 diff --git a/test/simple/test-stream-pipe-after-end.js b/test/simple/test-stream-pipe-after-end.js
151 index b46ee90..0be8366 100644
152 --- a/test/simple/test-stream-pipe-after-end.js
153 +++ b/test/simple/test-stream-pipe-after-end.js
155 var common = require('../common');
156 var assert = require('assert');
158 -var Readable = require('_stream_readable');
159 -var Writable = require('_stream_writable');
160 +var Readable = require('../../lib/_stream_readable');
161 +var Writable = require('../../lib/_stream_writable');
162 var util = require('util');
164 util.inherits(TestReadable, Readable);
165 diff --git a/test/simple/test-stream-pipe-cleanup.js b/test/simple/test-stream-pipe-cleanup.js
166 deleted file mode 100644
167 index f689358..0000000
168 --- a/test/simple/test-stream-pipe-cleanup.js
171 -// Copyright Joyent, Inc. and other Node contributors.
173 -// Permission is hereby granted, free of charge, to any person obtaining a
174 -// copy of this software and associated documentation files (the
175 -// "Software"), to deal in the Software without restriction, including
176 -// without limitation the rights to use, copy, modify, merge, publish,
177 -// distribute, sublicense, and/or sell copies of the Software, and to permit
178 -// persons to whom the Software is furnished to do so, subject to the
179 -// following conditions:
181 -// The above copyright notice and this permission notice shall be included
182 -// in all copies or substantial portions of the Software.
184 -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
185 -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
186 -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
187 -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
188 -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
189 -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
190 -// USE OR OTHER DEALINGS IN THE SOFTWARE.
192 -// This test asserts that Stream.prototype.pipe does not leave listeners
193 -// hanging on the source or dest.
195 -var common = require('../common');
196 -var stream = require('stream');
197 -var assert = require('assert');
198 -var util = require('util');
200 -function Writable() {
201 - this.writable = true;
203 - stream.Stream.call(this);
205 -util.inherits(Writable, stream.Stream);
206 -Writable.prototype.end = function() {
210 -Writable.prototype.destroy = function() {
214 -function Readable() {
215 - this.readable = true;
216 - stream.Stream.call(this);
218 -util.inherits(Readable, stream.Stream);
221 - this.readable = true;
222 - Writable.call(this);
224 -util.inherits(Duplex, Writable);
229 -var w = new Writable();
233 -for (i = 0; i < limit; i++) {
234 - r = new Readable();
238 -assert.equal(0, r.listeners('end').length);
239 -assert.equal(limit, w.endCalls);
243 -for (i = 0; i < limit; i++) {
244 - r = new Readable();
248 -assert.equal(0, r.listeners('close').length);
249 -assert.equal(limit, w.endCalls);
255 -for (i = 0; i < limit; i++) {
256 - w = new Writable();
260 -assert.equal(0, w.listeners('close').length);
264 -var d = new Duplex();
265 -r.pipe(d); // pipeline A
266 -d.pipe(w); // pipeline B
267 -assert.equal(r.listeners('end').length, 2); // A.onend, A.cleanup
268 -assert.equal(r.listeners('close').length, 2); // A.onclose, A.cleanup
269 -assert.equal(d.listeners('end').length, 2); // B.onend, B.cleanup
270 -assert.equal(d.listeners('close').length, 3); // A.cleanup, B.onclose, B.cleanup
271 -assert.equal(w.listeners('end').length, 0);
272 -assert.equal(w.listeners('close').length, 1); // B.cleanup
275 -assert.equal(d.endCalls, 1);
276 -assert.equal(w.endCalls, 0);
277 -assert.equal(r.listeners('end').length, 0);
278 -assert.equal(r.listeners('close').length, 0);
279 -assert.equal(d.listeners('end').length, 2); // B.onend, B.cleanup
280 -assert.equal(d.listeners('close').length, 2); // B.onclose, B.cleanup
281 -assert.equal(w.listeners('end').length, 0);
282 -assert.equal(w.listeners('close').length, 1); // B.cleanup
285 -assert.equal(d.endCalls, 1);
286 -assert.equal(w.endCalls, 1);
287 -assert.equal(r.listeners('end').length, 0);
288 -assert.equal(r.listeners('close').length, 0);
289 -assert.equal(d.listeners('end').length, 0);
290 -assert.equal(d.listeners('close').length, 0);
291 -assert.equal(w.listeners('end').length, 0);
292 -assert.equal(w.listeners('close').length, 0);
293 diff --git a/test/simple/test-stream-pipe-error-handling.js b/test/simple/test-stream-pipe-error-handling.js
294 index c5d724b..c7d6b7d 100644
295 --- a/test/simple/test-stream-pipe-error-handling.js
296 +++ b/test/simple/test-stream-pipe-error-handling.js
299 var common = require('../common');
300 var assert = require('assert');
301 -var Stream = require('stream').Stream;
302 +var Stream = require('../../').Stream;
304 (function testErrorListenerCatches() {
305 var source = new Stream();
306 diff --git a/test/simple/test-stream-pipe-event.js b/test/simple/test-stream-pipe-event.js
307 index cb9d5fe..56f8d61 100644
308 --- a/test/simple/test-stream-pipe-event.js
309 +++ b/test/simple/test-stream-pipe-event.js
311 // USE OR OTHER DEALINGS IN THE SOFTWARE.
313 var common = require('../common');
314 -var stream = require('stream');
315 +var stream = require('../../');
316 var assert = require('assert');
317 var util = require('util');
319 diff --git a/test/simple/test-stream-push-order.js b/test/simple/test-stream-push-order.js
320 index f2e6ec2..a5c9bf9 100644
321 --- a/test/simple/test-stream-push-order.js
322 +++ b/test/simple/test-stream-push-order.js
324 // USE OR OTHER DEALINGS IN THE SOFTWARE.
326 var common = require('../common.js');
327 -var Readable = require('stream').Readable;
328 +var Readable = require('../../').Readable;
329 var assert = require('assert');
331 var s = new Readable({
332 diff --git a/test/simple/test-stream-push-strings.js b/test/simple/test-stream-push-strings.js
333 index 06f43dc..1701a9a 100644
334 --- a/test/simple/test-stream-push-strings.js
335 +++ b/test/simple/test-stream-push-strings.js
337 var common = require('../common');
338 var assert = require('assert');
340 -var Readable = require('stream').Readable;
341 +var Readable = require('../../').Readable;
342 var util = require('util');
344 util.inherits(MyStream, Readable);
345 diff --git a/test/simple/test-stream-readable-event.js b/test/simple/test-stream-readable-event.js
346 index ba6a577..a8e6f7b 100644
347 --- a/test/simple/test-stream-readable-event.js
348 +++ b/test/simple/test-stream-readable-event.js
350 var common = require('../common');
351 var assert = require('assert');
353 -var Readable = require('stream').Readable;
354 +var Readable = require('../../').Readable;
357 // First test, not reading when the readable is added.
358 diff --git a/test/simple/test-stream-readable-flow-recursion.js b/test/simple/test-stream-readable-flow-recursion.js
359 index 2891ad6..11689ba 100644
360 --- a/test/simple/test-stream-readable-flow-recursion.js
361 +++ b/test/simple/test-stream-readable-flow-recursion.js
362 @@ -27,7 +27,7 @@ var assert = require('assert');
363 // more data continuously, but without triggering a nextTick
364 // warning or RangeError.
366 -var Readable = require('stream').Readable;
367 +var Readable = require('../../').Readable;
369 // throw an error if we trigger a nextTick warning.
370 process.throwDeprecation = true;
371 diff --git a/test/simple/test-stream-unshift-empty-chunk.js b/test/simple/test-stream-unshift-empty-chunk.js
372 index 0c96476..7827538 100644
373 --- a/test/simple/test-stream-unshift-empty-chunk.js
374 +++ b/test/simple/test-stream-unshift-empty-chunk.js
375 @@ -24,7 +24,7 @@ var assert = require('assert');
377 // This test verifies that stream.unshift(Buffer(0)) or
378 // stream.unshift('') does not set state.reading=false.
379 -var Readable = require('stream').Readable;
380 +var Readable = require('../../').Readable;
382 var r = new Readable();
384 diff --git a/test/simple/test-stream-unshift-read-race.js b/test/simple/test-stream-unshift-read-race.js
385 index 83fd9fa..17c18aa 100644
386 --- a/test/simple/test-stream-unshift-read-race.js
387 +++ b/test/simple/test-stream-unshift-read-race.js
388 @@ -29,7 +29,7 @@ var assert = require('assert');
389 // 3. push() after the EOF signaling null is an error.
390 // 4. _read() is not called after pushing the EOF null chunk.
392 -var stream = require('stream');
393 +var stream = require('../../');
395 var r = stream.Readable({ highWaterMark: hwm });
397 @@ -51,7 +51,14 @@ r._read = function(n) {
399 function push(fast) {
400 assert(!pushedNull, 'push() after null push');
401 - var c = pos >= data.length ? null : data.slice(pos, pos + n);
403 + if (pos >= data.length)
406 + if (n + pos > data.length)
407 + n = data.length - pos;
408 + c = data.slice(pos, pos + n);
410 pushedNull = c === null;
413 diff --git a/test/simple/test-stream-writev.js b/test/simple/test-stream-writev.js
414 index 5b49e6e..b5321f3 100644
415 --- a/test/simple/test-stream-writev.js
416 +++ b/test/simple/test-stream-writev.js
418 var common = require('../common');
419 var assert = require('assert');
421 -var stream = require('stream');
422 +var stream = require('../../');
425 for (var decode = 0; decode < 2; decode++) {
426 diff --git a/test/simple/test-stream2-basic.js b/test/simple/test-stream2-basic.js
427 index 3814bf0..248c1be 100644
428 --- a/test/simple/test-stream2-basic.js
429 +++ b/test/simple/test-stream2-basic.js
433 var common = require('../common.js');
434 -var R = require('_stream_readable');
435 +var R = require('../../lib/_stream_readable');
436 var assert = require('assert');
438 var util = require('util');
439 diff --git a/test/simple/test-stream2-compatibility.js b/test/simple/test-stream2-compatibility.js
440 index 6cdd4e9..f0fa84b 100644
441 --- a/test/simple/test-stream2-compatibility.js
442 +++ b/test/simple/test-stream2-compatibility.js
446 var common = require('../common.js');
447 -var R = require('_stream_readable');
448 +var R = require('../../lib/_stream_readable');
449 var assert = require('assert');
451 var util = require('util');
452 diff --git a/test/simple/test-stream2-finish-pipe.js b/test/simple/test-stream2-finish-pipe.js
453 index 39b274f..006a19b 100644
454 --- a/test/simple/test-stream2-finish-pipe.js
455 +++ b/test/simple/test-stream2-finish-pipe.js
457 // USE OR OTHER DEALINGS IN THE SOFTWARE.
459 var common = require('../common.js');
460 -var stream = require('stream');
461 +var stream = require('../../');
462 var Buffer = require('buffer').Buffer;
464 var r = new stream.Readable();
465 diff --git a/test/simple/test-stream2-fs.js b/test/simple/test-stream2-fs.js
466 deleted file mode 100644
467 index e162406..0000000
468 --- a/test/simple/test-stream2-fs.js
471 -// Copyright Joyent, Inc. and other Node contributors.
473 -// Permission is hereby granted, free of charge, to any person obtaining a
474 -// copy of this software and associated documentation files (the
475 -// "Software"), to deal in the Software without restriction, including
476 -// without limitation the rights to use, copy, modify, merge, publish,
477 -// distribute, sublicense, and/or sell copies of the Software, and to permit
478 -// persons to whom the Software is furnished to do so, subject to the
479 -// following conditions:
481 -// The above copyright notice and this permission notice shall be included
482 -// in all copies or substantial portions of the Software.
484 -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
485 -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
486 -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
487 -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
488 -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
489 -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
490 -// USE OR OTHER DEALINGS IN THE SOFTWARE.
493 -var common = require('../common.js');
494 -var R = require('_stream_readable');
495 -var assert = require('assert');
497 -var fs = require('fs');
498 -var FSReadable = fs.ReadStream;
500 -var path = require('path');
501 -var file = path.resolve(common.fixturesDir, 'x1024.txt');
503 -var size = fs.statSync(file).size;
505 -var expectLengths = [1024];
507 -var util = require('util');
508 -var Stream = require('stream');
510 -util.inherits(TestWriter, Stream);
512 -function TestWriter() {
513 - Stream.apply(this);
518 -TestWriter.prototype.write = function(c) {
519 - this.buffer.push(c.toString());
520 - this.length += c.length;
524 -TestWriter.prototype.end = function(c) {
525 - if (c) this.buffer.push(c.toString());
526 - this.emit('results', this.buffer);
529 -var r = new FSReadable(file);
530 -var w = new TestWriter();
532 -w.on('results', function(res) {
533 - console.error(res, w.length);
534 - assert.equal(w.length, size);
536 - assert.deepEqual(res.map(function (c) {
538 - }), expectLengths);
543 diff --git a/test/simple/test-stream2-httpclient-response-end.js b/test/simple/test-stream2-httpclient-response-end.js
544 deleted file mode 100644
545 index 15cffc2..0000000
546 --- a/test/simple/test-stream2-httpclient-response-end.js
549 -// Copyright Joyent, Inc. and other Node contributors.
551 -// Permission is hereby granted, free of charge, to any person obtaining a
552 -// copy of this software and associated documentation files (the
553 -// "Software"), to deal in the Software without restriction, including
554 -// without limitation the rights to use, copy, modify, merge, publish,
555 -// distribute, sublicense, and/or sell copies of the Software, and to permit
556 -// persons to whom the Software is furnished to do so, subject to the
557 -// following conditions:
559 -// The above copyright notice and this permission notice shall be included
560 -// in all copies or substantial portions of the Software.
562 -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
563 -// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
564 -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
565 -// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
566 -// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
567 -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
568 -// USE OR OTHER DEALINGS IN THE SOFTWARE.
570 -var common = require('../common.js');
571 -var assert = require('assert');
572 -var http = require('http');
574 -var readable_event = false;
575 -var end_event = false;
576 -var server = http.createServer(function(req, res) {
577 - res.writeHead(200, {'Content-Type': 'text/plain'});
579 -}).listen(common.PORT, function() {
580 - http.get({port: common.PORT}, function(res) {
582 - res.on('readable', function() {
583 - console.log('readable event');
584 - readable_event = true;
585 - data += res.read();
587 - res.on('end', function() {
588 - console.log('end event');
590 - assert.strictEqual(msg, data);
596 -process.on('exit', function() {
597 - assert(readable_event);
601 diff --git a/test/simple/test-stream2-large-read-stall.js b/test/simple/test-stream2-large-read-stall.js
602 index 2fbfbca..667985b 100644
603 --- a/test/simple/test-stream2-large-read-stall.js
604 +++ b/test/simple/test-stream2-large-read-stall.js
605 @@ -30,7 +30,7 @@ var PUSHSIZE = 20;
606 var PUSHCOUNT = 1000;
609 -var Readable = require('stream').Readable;
610 +var Readable = require('../../').Readable;
611 var r = new Readable({
614 @@ -39,23 +39,23 @@ var rs = r._readableState;
617 r.on('readable', function() {
618 - console.error('>> readable');
619 + //console.error('>> readable');
621 - console.error(' > read(%d)', READSIZE);
622 + //console.error(' > read(%d)', READSIZE);
623 var ret = r.read(READSIZE);
624 - console.error(' < %j (%d remain)', ret && ret.length, rs.length);
625 + //console.error(' < %j (%d remain)', ret && ret.length, rs.length);
626 } while (ret && ret.length === READSIZE);
628 - console.error('<< after read()',
632 + //console.error('<< after read()',
633 + // ret && ret.length,
634 + // rs.needReadable,
638 var endEmitted = false;
639 r.on('end', function() {
641 - console.error('end');
642 + //console.error('end');
646 @@ -64,11 +64,11 @@ function push() {
649 if (pushes++ === PUSHCOUNT) {
650 - console.error(' push(EOF)');
651 + //console.error(' push(EOF)');
655 - console.error(' push #%d', pushes);
656 + //console.error(' push #%d', pushes);
657 if (r.push(new Buffer(PUSHSIZE)))
660 diff --git a/test/simple/test-stream2-objects.js b/test/simple/test-stream2-objects.js
661 index 3e6931d..ff47d89 100644
662 --- a/test/simple/test-stream2-objects.js
663 +++ b/test/simple/test-stream2-objects.js
667 var common = require('../common.js');
668 -var Readable = require('_stream_readable');
669 -var Writable = require('_stream_writable');
670 +var Readable = require('../../lib/_stream_readable');
671 +var Writable = require('../../lib/_stream_writable');
672 var assert = require('assert');
674 // tiny node-tap lookalike.
675 diff --git a/test/simple/test-stream2-pipe-error-handling.js b/test/simple/test-stream2-pipe-error-handling.js
676 index cf7531c..e3f3e4e 100644
677 --- a/test/simple/test-stream2-pipe-error-handling.js
678 +++ b/test/simple/test-stream2-pipe-error-handling.js
681 var common = require('../common');
682 var assert = require('assert');
683 -var stream = require('stream');
684 +var stream = require('../../');
686 (function testErrorListenerCatches() {
688 diff --git a/test/simple/test-stream2-pipe-error-once-listener.js b/test/simple/test-stream2-pipe-error-once-listener.js
689 index 5e8e3cb..53b2616 100755
690 --- a/test/simple/test-stream2-pipe-error-once-listener.js
691 +++ b/test/simple/test-stream2-pipe-error-once-listener.js
692 @@ -24,7 +24,7 @@ var common = require('../common.js');
693 var assert = require('assert');
695 var util = require('util');
696 -var stream = require('stream');
697 +var stream = require('../../');
700 var Read = function() {
701 diff --git a/test/simple/test-stream2-push.js b/test/simple/test-stream2-push.js
702 index b63edc3..eb2b0e9 100644
703 --- a/test/simple/test-stream2-push.js
704 +++ b/test/simple/test-stream2-push.js
706 // USE OR OTHER DEALINGS IN THE SOFTWARE.
708 var common = require('../common.js');
709 -var stream = require('stream');
710 +var stream = require('../../');
711 var Readable = stream.Readable;
712 var Writable = stream.Writable;
713 var assert = require('assert');
714 diff --git a/test/simple/test-stream2-read-sync-stack.js b/test/simple/test-stream2-read-sync-stack.js
715 index e8a7305..9740a47 100644
716 --- a/test/simple/test-stream2-read-sync-stack.js
717 +++ b/test/simple/test-stream2-read-sync-stack.js
720 var common = require('../common');
721 var assert = require('assert');
722 -var Readable = require('stream').Readable;
723 +var Readable = require('../../').Readable;
724 var r = new Readable();
727 diff --git a/test/simple/test-stream2-readable-empty-buffer-no-eof.js b/test/simple/test-stream2-readable-empty-buffer-no-eof.js
728 index cd30178..4b1659d 100644
729 --- a/test/simple/test-stream2-readable-empty-buffer-no-eof.js
730 +++ b/test/simple/test-stream2-readable-empty-buffer-no-eof.js
732 var common = require('../common');
733 var assert = require('assert');
735 -var Readable = require('stream').Readable;
736 +var Readable = require('../../').Readable;
742 var r = new Readable();
743 @@ -88,31 +87,3 @@ function test1() {
749 - var r = new Readable({ encoding: 'base64' });
751 - r._read = function(n) {
753 - return r.push(null); // EOF
755 - return r.push(new Buffer('x'));
761 - while (null !== (chunk = r.read()))
762 - results.push(chunk + '');
764 - r.on('readable', flow);
765 - r.on('end', function() {
766 - results.push('EOF');
770 - process.on('exit', function() {
771 - assert.deepEqual(results, [ 'eHh4', 'eHg=', 'EOF' ]);
775 diff --git a/test/simple/test-stream2-readable-from-list.js b/test/simple/test-stream2-readable-from-list.js
776 index 7c96ffe..04a96f5 100644
777 --- a/test/simple/test-stream2-readable-from-list.js
778 +++ b/test/simple/test-stream2-readable-from-list.js
781 var assert = require('assert');
782 var common = require('../common.js');
783 -var fromList = require('_stream_readable')._fromList;
784 +var fromList = require('../../lib/_stream_readable')._fromList;
786 // tiny node-tap lookalike.
788 diff --git a/test/simple/test-stream2-readable-legacy-drain.js b/test/simple/test-stream2-readable-legacy-drain.js
789 index 675da8e..51fd3d5 100644
790 --- a/test/simple/test-stream2-readable-legacy-drain.js
791 +++ b/test/simple/test-stream2-readable-legacy-drain.js
793 var common = require('../common');
794 var assert = require('assert');
796 -var Stream = require('stream');
797 +var Stream = require('../../');
798 var Readable = Stream.Readable;
800 var r = new Readable();
801 diff --git a/test/simple/test-stream2-readable-non-empty-end.js b/test/simple/test-stream2-readable-non-empty-end.js
802 index 7314ae7..c971898 100644
803 --- a/test/simple/test-stream2-readable-non-empty-end.js
804 +++ b/test/simple/test-stream2-readable-non-empty-end.js
807 var assert = require('assert');
808 var common = require('../common.js');
809 -var Readable = require('_stream_readable');
810 +var Readable = require('../../lib/_stream_readable');
813 var chunks = new Array(10);
814 diff --git a/test/simple/test-stream2-readable-wrap-empty.js b/test/simple/test-stream2-readable-wrap-empty.js
815 index 2e5cf25..fd8a3dc 100644
816 --- a/test/simple/test-stream2-readable-wrap-empty.js
817 +++ b/test/simple/test-stream2-readable-wrap-empty.js
819 var common = require('../common');
820 var assert = require('assert');
822 -var Readable = require('_stream_readable');
823 +var Readable = require('../../lib/_stream_readable');
824 var EE = require('events').EventEmitter;
826 var oldStream = new EE();
827 diff --git a/test/simple/test-stream2-readable-wrap.js b/test/simple/test-stream2-readable-wrap.js
828 index 90eea01..6b177f7 100644
829 --- a/test/simple/test-stream2-readable-wrap.js
830 +++ b/test/simple/test-stream2-readable-wrap.js
832 var common = require('../common');
833 var assert = require('assert');
835 -var Readable = require('_stream_readable');
836 -var Writable = require('_stream_writable');
837 +var Readable = require('../../lib/_stream_readable');
838 +var Writable = require('../../lib/_stream_writable');
839 var EE = require('events').EventEmitter;
841 var testRuns = 0, completedRuns = 0;
842 diff --git a/test/simple/test-stream2-set-encoding.js b/test/simple/test-stream2-set-encoding.js
843 index 5d2c32a..685531b 100644
844 --- a/test/simple/test-stream2-set-encoding.js
845 +++ b/test/simple/test-stream2-set-encoding.js
848 var common = require('../common.js');
849 var assert = require('assert');
850 -var R = require('_stream_readable');
851 +var R = require('../../lib/_stream_readable');
852 var util = require('util');
854 // tiny node-tap lookalike.
855 diff --git a/test/simple/test-stream2-transform.js b/test/simple/test-stream2-transform.js
856 index 9c9ddd8..a0cacc6 100644
857 --- a/test/simple/test-stream2-transform.js
858 +++ b/test/simple/test-stream2-transform.js
861 var assert = require('assert');
862 var common = require('../common.js');
863 -var PassThrough = require('_stream_passthrough');
864 -var Transform = require('_stream_transform');
865 +var PassThrough = require('../../').PassThrough;
866 +var Transform = require('../../').Transform;
868 // tiny node-tap lookalike.
870 diff --git a/test/simple/test-stream2-unpipe-drain.js b/test/simple/test-stream2-unpipe-drain.js
871 index d66dc3c..365b327 100644
872 --- a/test/simple/test-stream2-unpipe-drain.js
873 +++ b/test/simple/test-stream2-unpipe-drain.js
876 var common = require('../common.js');
877 var assert = require('assert');
878 -var stream = require('stream');
879 +var stream = require('../../');
880 var crypto = require('crypto');
882 var util = require('util');
883 diff --git a/test/simple/test-stream2-unpipe-leak.js b/test/simple/test-stream2-unpipe-leak.js
884 index 99f8746..17c92ae 100644
885 --- a/test/simple/test-stream2-unpipe-leak.js
886 +++ b/test/simple/test-stream2-unpipe-leak.js
889 var common = require('../common.js');
890 var assert = require('assert');
891 -var stream = require('stream');
892 +var stream = require('../../');
894 var chunk = new Buffer('hallo');
896 diff --git a/test/simple/test-stream2-writable.js b/test/simple/test-stream2-writable.js
897 index 704100c..209c3a6 100644
898 --- a/test/simple/test-stream2-writable.js
899 +++ b/test/simple/test-stream2-writable.js
901 // USE OR OTHER DEALINGS IN THE SOFTWARE.
903 var common = require('../common.js');
904 -var W = require('_stream_writable');
905 -var D = require('_stream_duplex');
906 +var W = require('../../').Writable;
907 +var D = require('../../').Duplex;
908 var assert = require('assert');
910 var util = require('util');
911 diff --git a/test/simple/test-stream3-pause-then-read.js b/test/simple/test-stream3-pause-then-read.js
912 index b91bde3..2f72c15 100644
913 --- a/test/simple/test-stream3-pause-then-read.js
914 +++ b/test/simple/test-stream3-pause-then-read.js
916 var common = require('../common');
917 var assert = require('assert');
919 -var stream = require('stream');
920 +var stream = require('../../');
921 var Readable = stream.Readable;
922 var Writable = stream.Writable;