프로젝트

일반

사용자정보

통계
| 개정판:

root / HServer / 00.Server / 00.Program / node_modules / readable-stream / float.patch

이력 | 보기 | 이력해설 | 다운로드 (30 KB)

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