summaryrefslogtreecommitdiffstats
path: root/node_modules/stdout-stream/test
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/stdout-stream/test')
-rw-r--r--node_modules/stdout-stream/test/fixtures/end.js8
-rw-r--r--node_modules/stdout-stream/test/fixtures/hello-world.js4
-rw-r--r--node_modules/stdout-stream/test/index.js33
3 files changed, 45 insertions, 0 deletions
diff --git a/node_modules/stdout-stream/test/fixtures/end.js b/node_modules/stdout-stream/test/fixtures/end.js
new file mode 100644
index 0000000..cdfeba3
--- /dev/null
+++ b/node_modules/stdout-stream/test/fixtures/end.js
@@ -0,0 +1,8 @@
+var stdout = require('../../');
+
+stdout.write('stdout');
+stdout.end(function() {
+ setTimeout(function() {
+ process.exit(0);
+ }, 10);
+}); \ No newline at end of file
diff --git a/node_modules/stdout-stream/test/fixtures/hello-world.js b/node_modules/stdout-stream/test/fixtures/hello-world.js
new file mode 100644
index 0000000..096ee27
--- /dev/null
+++ b/node_modules/stdout-stream/test/fixtures/hello-world.js
@@ -0,0 +1,4 @@
+var stdout = require('../../');
+
+stdout.write('hello\n');
+stdout.write('world\n'); \ No newline at end of file
diff --git a/node_modules/stdout-stream/test/index.js b/node_modules/stdout-stream/test/index.js
new file mode 100644
index 0000000..d26d079
--- /dev/null
+++ b/node_modules/stdout-stream/test/index.js
@@ -0,0 +1,33 @@
+var tape = require('tape');
+var proc = require('child_process');
+var path = require('path');
+
+tape('print to stdout', function(t) {
+ proc.exec('"'+process.execPath+'" '+path.join(__dirname,'fixtures','hello-world.js'), function(err, stdout) {
+ t.ok(!err);
+ t.same(stdout,'hello\nworld\n');
+ t.end();
+ });
+});
+
+tape('end stdout', function(t) {
+ var ch = proc.exec('"'+process.execPath+'" '+path.join(__dirname,'fixtures','end.js'));
+ var buf = [];
+ var processOnExit = false;
+ var stdoutOnEnd = false;
+
+ ch.stdout.on('data', function(data) {
+ buf.push(data);
+ });
+ ch.stdout.on('end', function() {
+ t.same(Buffer.concat(buf).toString(), 'stdout');
+ t.ok(!processOnExit);
+ stdoutOnEnd = true;
+ });
+ ch.on('exit', function(code) {
+ processOnExit = true;
+ t.ok(stdoutOnEnd);
+ t.same(code, 0);
+ t.end();
+ });
+}); \ No newline at end of file