Pathologic was missing because of a .git folder inside.
[yaffs-website] / node_modules / readable-stream / float.patch
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
5 @@ -26,8 +26,8 @@
6  
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');
13  
14  util.inherits(Duplex, Readable);
15  
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
20 @@ -25,7 +25,7 @@
21  
22  module.exports = PassThrough;
23  
24 -var Transform = require('_stream_transform');
25 +var Transform = require('./_stream_transform');
26  var util = require('util');
27  util.inherits(PassThrough, Transform);
28  
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;
35  
36  var EE = require('events').EventEmitter;
37 +if (!EE.listenerCount) EE.listenerCount = function(emitter, type) {
38 +  return emitter.listeners(type).length;
39 +};
40 +
41 +if (!global.setImmediate) global.setImmediate = function setImmediate(fn) {
42 +  return setTimeout(fn, 0);
43 +};
44 +if (!global.clearImmediate) global.clearImmediate = function clearImmediate(i) {
45 +  return clearTimeout(i);
46 +};
47 +
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];
54 +  }
55 +}
56  var StringDecoder;
57 -var debug = util.debuglog('stream');
58 +var debug;
59 +if (util.debuglog)
60 +  debug = util.debuglog('stream');
61 +else try {
62 +  debug = require('debuglog')('stream');
63 +} catch (er) {
64 +  debug = function() {};
65 +}
66  
67  util.inherits(Readable, Stream);
68  
69 @@ -380,7 +404,7 @@ function chunkInvalid(state, chunk) {
70  
71  
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
82 @@ -64,8 +64,14 @@
83  
84  module.exports = Transform;
85  
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];
93 +  }
94 +}
95  util.inherits(Transform, Duplex);
96  
97  
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;
104  
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];
110 +  }
111 +}
112  var Stream = require('stream');
113  
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);
122  
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
128 @@ -21,7 +21,7 @@
129  
130  var common = require('../common');
131  var assert = require('assert');
132 -var stream = require('stream');
133 +var stream = require('../../');
134  var str = 'asdfasdfasdfasdfasdf';
135  
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;
142  
143  // Make sure we don't miss the end event for paused 0-length streams
144  
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
154 @@ -22,8 +22,8 @@
155  var common = require('../common');
156  var assert = require('assert');
157  
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');
163  
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
169 +++ /dev/null
170 @@ -1,122 +0,0 @@
171 -// Copyright Joyent, Inc. and other Node contributors.
172 -//
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:
180 -//
181 -// The above copyright notice and this permission notice shall be included
182 -// in all copies or substantial portions of the Software.
183 -//
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.
191 -
192 -// This test asserts that Stream.prototype.pipe does not leave listeners
193 -// hanging on the source or dest.
194 -
195 -var common = require('../common');
196 -var stream = require('stream');
197 -var assert = require('assert');
198 -var util = require('util');
199 -
200 -function Writable() {
201 -  this.writable = true;
202 -  this.endCalls = 0;
203 -  stream.Stream.call(this);
204 -}
205 -util.inherits(Writable, stream.Stream);
206 -Writable.prototype.end = function() {
207 -  this.endCalls++;
208 -};
209 -
210 -Writable.prototype.destroy = function() {
211 -  this.endCalls++;
212 -};
213 -
214 -function Readable() {
215 -  this.readable = true;
216 -  stream.Stream.call(this);
217 -}
218 -util.inherits(Readable, stream.Stream);
219 -
220 -function Duplex() {
221 -  this.readable = true;
222 -  Writable.call(this);
223 -}
224 -util.inherits(Duplex, Writable);
225 -
226 -var i = 0;
227 -var limit = 100;
228 -
229 -var w = new Writable();
230 -
231 -var r;
232 -
233 -for (i = 0; i < limit; i++) {
234 -  r = new Readable();
235 -  r.pipe(w);
236 -  r.emit('end');
237 -}
238 -assert.equal(0, r.listeners('end').length);
239 -assert.equal(limit, w.endCalls);
240 -
241 -w.endCalls = 0;
242 -
243 -for (i = 0; i < limit; i++) {
244 -  r = new Readable();
245 -  r.pipe(w);
246 -  r.emit('close');
247 -}
248 -assert.equal(0, r.listeners('close').length);
249 -assert.equal(limit, w.endCalls);
250 -
251 -w.endCalls = 0;
252 -
253 -r = new Readable();
254 -
255 -for (i = 0; i < limit; i++) {
256 -  w = new Writable();
257 -  r.pipe(w);
258 -  w.emit('close');
259 -}
260 -assert.equal(0, w.listeners('close').length);
261 -
262 -r = new Readable();
263 -w = new Writable();
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
273 -
274 -r.emit('end');
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
283 -
284 -d.emit('end');
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
297 @@ -21,7 +21,7 @@
298  
299  var common = require('../common');
300  var assert = require('assert');
301 -var Stream = require('stream').Stream;
302 +var Stream = require('../../').Stream;
303  
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
310 @@ -20,7 +20,7 @@
311  // USE OR OTHER DEALINGS IN THE SOFTWARE.
312  
313  var common = require('../common');
314 -var stream = require('stream');
315 +var stream = require('../../');
316  var assert = require('assert');
317  var util = require('util');
318  
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
323 @@ -20,7 +20,7 @@
324  // USE OR OTHER DEALINGS IN THE SOFTWARE.
325  
326  var common = require('../common.js');
327 -var Readable = require('stream').Readable;
328 +var Readable = require('../../').Readable;
329  var assert = require('assert');
330  
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
336 @@ -22,7 +22,7 @@
337  var common = require('../common');
338  var assert = require('assert');
339  
340 -var Readable = require('stream').Readable;
341 +var Readable = require('../../').Readable;
342  var util = require('util');
343  
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
349 @@ -22,7 +22,7 @@
350  var common = require('../common');
351  var assert = require('assert');
352  
353 -var Readable = require('stream').Readable;
354 +var Readable = require('../../').Readable;
355  
356  (function first() {
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.
365  
366 -var Readable = require('stream').Readable;
367 +var Readable = require('../../').Readable;
368  
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');
376  
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;
381  
382  var r = new Readable();
383  var nChunks = 10;
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.
391  
392 -var stream = require('stream');
393 +var stream = require('../../');
394  var hwm = 10;
395  var r = stream.Readable({ highWaterMark: hwm });
396  var chunks = 10;
397 @@ -51,7 +51,14 @@ r._read = function(n) {
398  
399    function push(fast) {
400      assert(!pushedNull, 'push() after null push');
401 -    var c = pos >= data.length ? null : data.slice(pos, pos + n);
402 +    var c;
403 +    if (pos >= data.length)
404 +      c = null;
405 +    else {
406 +      if (n + pos > data.length)
407 +        n = data.length - pos;
408 +      c = data.slice(pos, pos + n);
409 +    }
410      pushedNull = c === null;
411      if (fast) {
412        pos += n;
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
417 @@ -22,7 +22,7 @@
418  var common = require('../common');
419  var assert = require('assert');
420  
421 -var stream = require('stream');
422 +var stream = require('../../');
423  
424  var queue = [];
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
430 @@ -21,7 +21,7 @@
431  
432  
433  var common = require('../common.js');
434 -var R = require('_stream_readable');
435 +var R = require('../../lib/_stream_readable');
436  var assert = require('assert');
437  
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
443 @@ -21,7 +21,7 @@
444  
445  
446  var common = require('../common.js');
447 -var R = require('_stream_readable');
448 +var R = require('../../lib/_stream_readable');
449  var assert = require('assert');
450  
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
456 @@ -20,7 +20,7 @@
457  // USE OR OTHER DEALINGS IN THE SOFTWARE.
458  
459  var common = require('../common.js');
460 -var stream = require('stream');
461 +var stream = require('../../');
462  var Buffer = require('buffer').Buffer;
463  
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
469 +++ /dev/null
470 @@ -1,72 +0,0 @@
471 -// Copyright Joyent, Inc. and other Node contributors.
472 -//
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:
480 -//
481 -// The above copyright notice and this permission notice shall be included
482 -// in all copies or substantial portions of the Software.
483 -//
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.
491 -
492 -
493 -var common = require('../common.js');
494 -var R = require('_stream_readable');
495 -var assert = require('assert');
496 -
497 -var fs = require('fs');
498 -var FSReadable = fs.ReadStream;
499 -
500 -var path = require('path');
501 -var file = path.resolve(common.fixturesDir, 'x1024.txt');
502 -
503 -var size = fs.statSync(file).size;
504 -
505 -var expectLengths = [1024];
506 -
507 -var util = require('util');
508 -var Stream = require('stream');
509 -
510 -util.inherits(TestWriter, Stream);
511 -
512 -function TestWriter() {
513 -  Stream.apply(this);
514 -  this.buffer = [];
515 -  this.length = 0;
516 -}
517 -
518 -TestWriter.prototype.write = function(c) {
519 -  this.buffer.push(c.toString());
520 -  this.length += c.length;
521 -  return true;
522 -};
523 -
524 -TestWriter.prototype.end = function(c) {
525 -  if (c) this.buffer.push(c.toString());
526 -  this.emit('results', this.buffer);
527 -}
528 -
529 -var r = new FSReadable(file);
530 -var w = new TestWriter();
531 -
532 -w.on('results', function(res) {
533 -  console.error(res, w.length);
534 -  assert.equal(w.length, size);
535 -  var l = 0;
536 -  assert.deepEqual(res.map(function (c) {
537 -    return c.length;
538 -  }), expectLengths);
539 -  console.log('ok');
540 -});
541 -
542 -r.pipe(w);
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
547 +++ /dev/null
548 @@ -1,52 +0,0 @@
549 -// Copyright Joyent, Inc. and other Node contributors.
550 -//
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:
558 -//
559 -// The above copyright notice and this permission notice shall be included
560 -// in all copies or substantial portions of the Software.
561 -//
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.
569 -
570 -var common = require('../common.js');
571 -var assert = require('assert');
572 -var http = require('http');
573 -var msg = 'Hello';
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'});
578 -  res.end(msg);
579 -}).listen(common.PORT, function() {
580 -  http.get({port: common.PORT}, function(res) {
581 -    var data = '';
582 -    res.on('readable', function() {
583 -      console.log('readable event');
584 -      readable_event = true;
585 -      data += res.read();
586 -    });
587 -    res.on('end', function() {
588 -      console.log('end event');
589 -      end_event = true;
590 -      assert.strictEqual(msg, data);
591 -      server.close();
592 -    });
593 -  });
594 -});
595 -
596 -process.on('exit', function() {
597 -  assert(readable_event);
598 -  assert(end_event);
599 -});
600 -
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;
607  var HWM = 50;
608  
609 -var Readable = require('stream').Readable;
610 +var Readable = require('../../').Readable;
611  var r = new Readable({
612    highWaterMark: HWM
613  });
614 @@ -39,23 +39,23 @@ var rs = r._readableState;
615  r._read = push;
616  
617  r.on('readable', function() {
618 -  console.error('>> readable');
619 +  //console.error('>> readable');
620    do {
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);
627  
628 -  console.error('<< after read()',
629 -                ret && ret.length,
630 -                rs.needReadable,
631 -                rs.length);
632 +  //console.error('<< after read()',
633 +  //              ret && ret.length,
634 +  //              rs.needReadable,
635 +  //              rs.length);
636  });
637  
638  var endEmitted = false;
639  r.on('end', function() {
640    endEmitted = true;
641 -  console.error('end');
642 +  //console.error('end');
643  });
644  
645  var pushes = 0;
646 @@ -64,11 +64,11 @@ function push() {
647      return;
648  
649    if (pushes++ === PUSHCOUNT) {
650 -    console.error('   push(EOF)');
651 +    //console.error('   push(EOF)');
652      return r.push(null);
653    }
654  
655 -  console.error('   push #%d', pushes);
656 +  //console.error('   push #%d', pushes);
657    if (r.push(new Buffer(PUSHSIZE)))
658      setTimeout(push);
659  }
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
664 @@ -21,8 +21,8 @@
665  
666  
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');
673  
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
679 @@ -21,7 +21,7 @@
680  
681  var common = require('../common');
682  var assert = require('assert');
683 -var stream = require('stream');
684 +var stream = require('../../');
685  
686  (function testErrorListenerCatches() {
687    var count = 1000;
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');
694  
695  var util = require('util');
696 -var stream = require('stream');
697 +var stream = require('../../');
698  
699  
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
705 @@ -20,7 +20,7 @@
706  // USE OR OTHER DEALINGS IN THE SOFTWARE.
707  
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
718 @@ -21,7 +21,7 @@
719  
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();
725  var N = 256 * 1024;
726  
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
731 @@ -22,10 +22,9 @@
732  var common = require('../common');
733  var assert = require('assert');
734  
735 -var Readable = require('stream').Readable;
736 +var Readable = require('../../').Readable;
737  
738  test1();
739 -test2();
740  
741  function test1() {
742    var r = new Readable();
743 @@ -88,31 +87,3 @@ function test1() {
744      console.log('ok');
745    });
746  }
747 -
748 -function test2() {
749 -  var r = new Readable({ encoding: 'base64' });
750 -  var reads = 5;
751 -  r._read = function(n) {
752 -    if (!reads--)
753 -      return r.push(null); // EOF
754 -    else
755 -      return r.push(new Buffer('x'));
756 -  };
757 -
758 -  var results = [];
759 -  function flow() {
760 -    var chunk;
761 -    while (null !== (chunk = r.read()))
762 -      results.push(chunk + '');
763 -  }
764 -  r.on('readable', flow);
765 -  r.on('end', function() {
766 -    results.push('EOF');
767 -  });
768 -  flow();
769 -
770 -  process.on('exit', function() {
771 -    assert.deepEqual(results, [ 'eHh4', 'eHg=', 'EOF' ]);
772 -    console.log('ok');
773 -  });
774 -}
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
779 @@ -21,7 +21,7 @@
780  
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;
785  
786  // tiny node-tap lookalike.
787  var tests = [];
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
792 @@ -22,7 +22,7 @@
793  var common = require('../common');
794  var assert = require('assert');
795  
796 -var Stream = require('stream');
797 +var Stream = require('../../');
798  var Readable = Stream.Readable;
799  
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
805 @@ -21,7 +21,7 @@
806  
807  var assert = require('assert');
808  var common = require('../common.js');
809 -var Readable = require('_stream_readable');
810 +var Readable = require('../../lib/_stream_readable');
811  
812  var len = 0;
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
818 @@ -22,7 +22,7 @@
819  var common = require('../common');
820  var assert = require('assert');
821  
822 -var Readable = require('_stream_readable');
823 +var Readable = require('../../lib/_stream_readable');
824  var EE = require('events').EventEmitter;
825  
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
831 @@ -22,8 +22,8 @@
832  var common = require('../common');
833  var assert = require('assert');
834  
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;
840  
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
846 @@ -22,7 +22,7 @@
847  
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');
853  
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
859 @@ -21,8 +21,8 @@
860  
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;
867  
868  // tiny node-tap lookalike.
869  var tests = [];
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
874 @@ -22,7 +22,7 @@
875  
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');
881  
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
887 @@ -22,7 +22,7 @@
888  
889  var common = require('../common.js');
890  var assert = require('assert');
891 -var stream = require('stream');
892 +var stream = require('../../');
893  
894  var chunk = new Buffer('hallo');
895  
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
900 @@ -20,8 +20,8 @@
901  // USE OR OTHER DEALINGS IN THE SOFTWARE.
902  
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');
909  
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
915 @@ -22,7 +22,7 @@
916  var common = require('../common');
917  var assert = require('assert');
918  
919 -var stream = require('stream');
920 +var stream = require('../../');
921  var Readable = stream.Readable;
922  var Writable = stream.Writable;
923