summaryrefslogtreecommitdiff
path: root/test/sequential/test-init.js
diff options
context:
space:
mode:
authorSakthipriyan Vairamani (thefourtheye) <thechargingvolcano@gmail.com>2016-12-21 15:58:00 +0530
committerMyles Borins <mylesborins@google.com>2017-01-31 17:07:47 -0500
commit12d86aba49ebe7bf2995ebd2a2c3b69045b1cddf (patch)
treebf5bfdf38effdb53526cc27e6ce2278bba852ee6 /test/sequential/test-init.js
parent54dec23aba9c87c574d90d5a67dfbe5f2c133846 (diff)
downloadnode-new-12d86aba49ebe7bf2995ebd2a2c3b69045b1cddf.tar.gz
test: refactor test-init.js
1. Lot of repeating code has been refactored to a function 2. Errors in async calls are properly asserted 3. Fail the test if the callbacks are not fired PR-URL: https://github.com/nodejs/node/pull/10384 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Julian Duque <julianduquej@gmail.com>
Diffstat (limited to 'test/sequential/test-init.js')
-rw-r--r--test/sequential/test-init.js58
1 files changed, 26 insertions, 32 deletions
diff --git a/test/sequential/test-init.js b/test/sequential/test-init.js
index c8127e32a1..75ac39c35a 100644
--- a/test/sequential/test-init.js
+++ b/test/sequential/test-init.js
@@ -2,46 +2,40 @@
const common = require('../common');
const assert = require('assert');
const child = require('child_process');
-const util = require('util');
+const path = require('path');
+
if (process.env['TEST_INIT']) {
- util.print('Loaded successfully!');
-} else {
- // change CWD as we do this test so its not dependant on current CWD
- // being in the test folder
- process.chdir(__dirname);
+ return process.stdout.write('Loaded successfully!');
+}
+
+process.env.TEST_INIT = 1;
- // slow but simple
- var envCopy = JSON.parse(JSON.stringify(process.env));
- envCopy.TEST_INIT = 1;
+function test(file, expected) {
+ const path = `"${process.execPath}" ${file}`;
+ child.exec(path, {env: process.env}, common.mustCall((err, out) => {
+ assert.ifError(err);
+ assert.strictEqual(out, expected, `'node ${file}' failed!`);
+ }));
+}
- child.exec('"' + process.execPath + '" test-init', {env: envCopy},
- function(err, stdout, stderr) {
- assert.equal(stdout, 'Loaded successfully!',
- '`node test-init` failed!');
- });
- child.exec('"' + process.execPath + '" test-init.js', {env: envCopy},
- function(err, stdout, stderr) {
- assert.equal(stdout, 'Loaded successfully!',
- '`node test-init.js` failed!');
- });
+{
+ // change CWD as we do this test so it's not dependent on current CWD
+ // being in the test folder
+ process.chdir(__dirname);
+ test('test-init', 'Loaded successfully!');
+ test('test-init.js', 'Loaded successfully!');
+}
+{
// test-init-index is in fixtures dir as requested by ry, so go there
process.chdir(common.fixturesDir);
+ test('test-init-index', 'Loaded successfully!');
+}
- child.exec('"' + process.execPath + '" test-init-index', {env: envCopy},
- function(err, stdout, stderr) {
- assert.equal(stdout, 'Loaded successfully!',
- '`node test-init-index failed!');
- });
-
+{
// ensures that `node fs` does not mistakenly load the native 'fs' module
// instead of the desired file and that the fs module loads as
// expected in node
- process.chdir(common.fixturesDir + '/test-init-native/');
-
- child.exec('"' + process.execPath + '" fs', {env: envCopy},
- function(err, stdout, stderr) {
- assert.equal(stdout, 'fs loaded successfully',
- '`node fs` failed!');
- });
+ process.chdir(path.join(common.fixturesDir, 'test-init-native'));
+ test('fs', 'fs loaded successfully');
}