test: move ArrayStream to common
authorcjihrig <cjihrig@gmail.com>
Wed, 25 Nov 2015 21:38:01 +0000 (16:38 -0500)
committerMyles Borins <mborins@us.ibm.com>
Tue, 19 Jan 2016 19:52:29 +0000 (11:52 -0800)
A number of REPL tests define the same ArrayStream object. This
commit moves the repeated code into common.js.

PR-URL: https://github.com/nodejs/node/pull/4027
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Conflicts:
test/common.js

test/common.js
test/parallel/test-repl-.save.load.js
test/parallel/test-repl-autolibs.js
test/parallel/test-repl-console.js
test/parallel/test-repl-domain.js
test/parallel/test-repl-end-emits-exit.js
test/parallel/test-repl-options.js
test/parallel/test-repl-reset-event.js
test/parallel/test-repl-syntax-error-stack.js
test/parallel/test-repl-tab-complete-crash.js
test/parallel/test-repl-tab-complete.js

index 0e824ef..c1012e7 100644 (file)
@@ -5,6 +5,8 @@ var fs = require('fs');
 var assert = require('assert');
 var os = require('os');
 var child_process = require('child_process');
+const stream = require('stream');
+const util = require('util');
 
 
 exports.testDir = path.dirname(__filename);
@@ -503,3 +505,20 @@ exports.nodeProcessAborted = function nodeProcessAborted(exitCode, signal) {
     return expectedExitCodes.indexOf(exitCode) > -1;
   }
 };
+
+// A stream to push an array into a REPL
+function ArrayStream() {
+  this.run = function(data) {
+    data.forEach(line => {
+      this.emit('data', line + '\n');
+    });
+  };
+}
+
+util.inherits(ArrayStream, stream.Stream);
+exports.ArrayStream = ArrayStream;
+ArrayStream.prototype.readable = true;
+ArrayStream.prototype.writable = true;
+ArrayStream.prototype.pause = function() {};
+ArrayStream.prototype.resume = function() {};
+ArrayStream.prototype.write = function() {};
index 5656671..c71b383 100644 (file)
@@ -9,24 +9,9 @@ common.refreshTmpDir();
 
 var repl = require('repl');
 
-// A stream to push an array into a REPL
-function ArrayStream() {
-  this.run = function(data) {
-    var self = this;
-    data.forEach(function(line) {
-      self.emit('data', line + '\n');
-    });
-  };
-}
-util.inherits(ArrayStream, require('stream').Stream);
-ArrayStream.prototype.readable = true;
-ArrayStream.prototype.writable = true;
-ArrayStream.prototype.resume = function() {};
-ArrayStream.prototype.write = function() {};
-
 var works = [['inner.one'], 'inner.o'];
 
-var putIn = new ArrayStream();
+const putIn = new common.ArrayStream();
 var testMe = repl.start('', putIn);
 
 
index e37f2d0..05cc299 100644 (file)
@@ -1,25 +1,13 @@
-/* eslint-disable required-modules */
 'use strict';
+const common = require('../common');
 var assert = require('assert');
 var util = require('util');
 var repl = require('repl');
 
-// A stream to push an array into a REPL
-function ArrayStream() {
-  this.run = function(data) {
-    var self = this;
-    data.forEach(function(line) {
-      self.emit('data', line + '\n');
-    });
-  };
-}
-util.inherits(ArrayStream, require('stream').Stream);
-ArrayStream.prototype.readable = true;
-ArrayStream.prototype.writable = true;
-ArrayStream.prototype.resume = function() {};
-ArrayStream.prototype.write = function() {};
+// This test adds global variables
+common.globalCheck = false;
 
-var putIn = new ArrayStream();
+const putIn = new common.ArrayStream();
 var testMe = repl.start('', putIn, null, true);
 
 test1();
index e66fcb1..fe737d8 100644 (file)
@@ -1,13 +1,10 @@
 'use strict';
 var common = require('../common'),
     assert = require('assert'),
-    Stream = require('stream'),
     repl = require('repl');
 
-// create a dummy stream that does nothing
-var stream = new Stream();
-stream.write = stream.pause = stream.resume = function() {};
-stream.readable = stream.writable = true;
+// Create a dummy stream that does nothing
+const stream = new common.ArrayStream();
 
 var r = repl.start({
   input: stream,
index 7528f50..baf0485 100644 (file)
@@ -5,22 +5,7 @@ var common = require('../common');
 var util   = require('util');
 var repl   = require('repl');
 
-// A stream to push an array into a REPL
-function ArrayStream() {
-  this.run = function(data) {
-    var self = this;
-    data.forEach(function(line) {
-      self.emit('data', line + '\n');
-    });
-  };
-}
-util.inherits(ArrayStream, require('stream').Stream);
-ArrayStream.prototype.readable = true;
-ArrayStream.prototype.writable = true;
-ArrayStream.prototype.resume = function() {};
-ArrayStream.prototype.write = function() {};
-
-var putIn = new ArrayStream();
+const putIn = new common.ArrayStream();
 var testMe = repl.start('', putIn);
 
 putIn.write = function(data) {
index e4bc4da..2c18b41 100644 (file)
@@ -1,15 +1,12 @@
 'use strict';
 var common = require('../common'),
     assert = require('assert'),
-    Stream = require('stream'),
     repl = require('repl'),
     terminalExit = 0,
     regularExit = 0;
 
-// create a dummy stream that does nothing
-var stream = new Stream();
-stream.write = stream.pause = stream.resume = function() {};
-stream.readable = stream.writable = true;
+// Create a dummy stream that does nothing
+const stream = new common.ArrayStream();
 
 function testTerminalMode() {
   var r1 = repl.start({
index 5bc37d2..ec3b144 100644 (file)
@@ -1,15 +1,12 @@
 'use strict';
 var common = require('../common'),
     assert = require('assert'),
-    Stream = require('stream'),
     repl = require('repl');
 
 common.globalCheck = false;
 
-// create a dummy stream that does nothing
-var stream = new Stream();
-stream.write = stream.pause = stream.resume = function() {};
-stream.readable = stream.writable = true;
+// Create a dummy stream that does nothing
+const stream = new common.ArrayStream();
 
 // 1, mostly defaults
 var r1 = repl.start({
index e6d4eed..0bd43dc 100644 (file)
@@ -4,12 +4,9 @@ common.globalCheck = false;
 
 var assert = require('assert');
 var repl = require('repl');
-var Stream = require('stream');
 
-// create a dummy stream that does nothing
-var dummy = new Stream();
-dummy.write = dummy.pause = dummy.resume = function() {};
-dummy.readable = dummy.writable = true;
+// Create a dummy stream that does nothing
+const dummy = new common.ArrayStream();
 
 function testReset(cb) {
   var r = repl.start({
index 573059e..647d3e3 100644 (file)
@@ -11,24 +11,12 @@ process.on('exit', () => {
   assert.strictEqual(found, true);
 });
 
-// A stream to push an array into a REPL
-function ArrayStream() {
-  this.run = function(data) {
-    data.forEach(line => {
-      this.emit('data', line + '\n');
-    });
-  };
-}
-util.inherits(ArrayStream, require('stream').Stream);
-ArrayStream.prototype.readable = true;
-ArrayStream.prototype.writable = true;
-ArrayStream.prototype.resume = function() {};
-ArrayStream.prototype.write = function(output) {
+common.ArrayStream.prototype.write = function(output) {
   if (/var foo bar;/.test(output))
     found = true;
 };
 
-const putIn = new ArrayStream();
+const putIn = new common.ArrayStream();
 const testMe = repl.start('', putIn);
 let file = path.resolve(__dirname, '../fixtures/syntax/bad_syntax');
 
index 85ab057..484580f 100644 (file)
@@ -1,32 +1,19 @@
 'use strict';
 
-require('../common');
+const common = require('../common');
 const assert = require('assert');
 const util = require('util');
 const repl = require('repl');
 
 var referenceErrorCount = 0;
 
-// A stream to push an array into a REPL
-function ArrayStream() {
-  this.run = function(data) {
-    const self = this;
-    data.forEach(function(line) {
-      self.emit('data', line + '\n');
-    });
-  };
-}
-util.inherits(ArrayStream, require('stream').Stream);
-ArrayStream.prototype.readable = true;
-ArrayStream.prototype.writable = true;
-ArrayStream.prototype.resume = function() {};
-ArrayStream.prototype.write = function(msg) {
+common.ArrayStream.prototype.write = function(msg) {
   if (msg.startsWith('ReferenceError: ')) {
     referenceErrorCount++;
   }
 };
 
-const putIn = new ArrayStream();
+const putIn = new common.ArrayStream();
 const testMe = repl.start('', putIn);
 
 // https://github.com/nodejs/node/issues/3346
index 1cb6e77..6bf7d50 100644 (file)
@@ -20,23 +20,8 @@ process.on('exit', function() {
   assert.strictEqual(referenceErrors, expectedReferenceErrors);
 });
 
-// A stream to push an array into a REPL
-function ArrayStream() {
-  this.run = function(data) {
-    var self = this;
-    data.forEach(function(line) {
-      self.emit('data', line + '\n');
-    });
-  };
-}
-util.inherits(ArrayStream, require('stream').Stream);
-ArrayStream.prototype.readable = true;
-ArrayStream.prototype.writable = true;
-ArrayStream.prototype.resume = function() {};
-ArrayStream.prototype.write = function() {};
-
 var works = [['inner.one'], 'inner.o'];
-var putIn = new ArrayStream();
+const putIn = new common.ArrayStream();
 var testMe = repl.start('', putIn);
 
 // Some errors are passed to the domain, but do not callback