aboutsummaryrefslogtreecommitdiff
path: root/test/parallel/test-env-var-no-warnings.js
diff options
context:
space:
mode:
authorcjihrig <cjihrig@gmail.com>2017-01-16 16:57:36 -0500
committercjihrig <cjihrig@gmail.com>2017-01-19 09:59:37 -0500
commit49902124a9d697e441dbf724aa6b26bd98f75dd0 (patch)
tree7baee8aa3f449c2b053e3a2cfefec79285616b87 /test/parallel/test-env-var-no-warnings.js
parent71650aa8fc2bdd94bed7982ffb979004b5ef4fae (diff)
downloadandroid-node-v8-49902124a9d697e441dbf724aa6b26bd98f75dd0.tar.gz
android-node-v8-49902124a9d697e441dbf724aa6b26bd98f75dd0.tar.bz2
android-node-v8-49902124a9d697e441dbf724aa6b26bd98f75dd0.zip
process: add NODE_NO_WARNINGS environment variable
This commit adds support for a NODE_NO_WARNINGS environment variable, which duplicates the functionality of the --no-warnings command line flag. Fixes: https://github.com/nodejs/node/issues/10802 PR-URL: https://github.com/nodejs/node/pull/10842 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Evan Lucas <evanlucas@me.com> Reviewed-By: Sam Roberts <vieuxtech@gmail.com> Reviewed-By: Italo A. Casas <me@italoacasas.com>
Diffstat (limited to 'test/parallel/test-env-var-no-warnings.js')
-rw-r--r--test/parallel/test-env-var-no-warnings.js41
1 files changed, 41 insertions, 0 deletions
diff --git a/test/parallel/test-env-var-no-warnings.js b/test/parallel/test-env-var-no-warnings.js
new file mode 100644
index 0000000000..53b7d30268
--- /dev/null
+++ b/test/parallel/test-env-var-no-warnings.js
@@ -0,0 +1,41 @@
+'use strict';
+const common = require('../common');
+const assert = require('assert');
+const cp = require('child_process');
+
+if (process.argv[2] === 'child') {
+ process.emitWarning('foo');
+} else {
+ function test(env) {
+ const cmd = `${process.execPath} ${__filename} child`;
+
+ cp.exec(cmd, { env }, common.mustCall((err, stdout, stderr) => {
+ assert.strictEqual(err, null);
+ assert.strictEqual(stdout, '');
+
+ if (env.NODE_NO_WARNINGS === '1')
+ assert.strictEqual(stderr, '');
+ else
+ assert(/Warning: foo$/.test(stderr.trim()));
+ }));
+ }
+
+ test({});
+ test(process.env);
+ test({ NODE_NO_WARNINGS: undefined });
+ test({ NODE_NO_WARNINGS: null });
+ test({ NODE_NO_WARNINGS: 'foo' });
+ test({ NODE_NO_WARNINGS: true });
+ test({ NODE_NO_WARNINGS: false });
+ test({ NODE_NO_WARNINGS: {} });
+ test({ NODE_NO_WARNINGS: [] });
+ test({ NODE_NO_WARNINGS: function() {} });
+ test({ NODE_NO_WARNINGS: 0 });
+ test({ NODE_NO_WARNINGS: -1 });
+ test({ NODE_NO_WARNINGS: '0' });
+ test({ NODE_NO_WARNINGS: '01' });
+ test({ NODE_NO_WARNINGS: '2' });
+ // Don't test the number 1 because it will come through as a string in the
+ // the child process environment.
+ test({ NODE_NO_WARNINGS: '1' });
+}