summaryrefslogtreecommitdiff
path: root/test/parallel/test-util.js
diff options
context:
space:
mode:
authorcjihrig <cjihrig@gmail.com>2017-04-20 13:49:56 -0400
committercjihrig <cjihrig@gmail.com>2017-04-25 12:25:55 -0400
commite522bcd774c6a43d8facc1905b59e53a86f7ae0a (patch)
tree8fbcfaa89598a3fe1cc19e4e6a95398b0e284211 /test/parallel/test-util.js
parent9d3c06ca1e5b8991741eb04d4c728aed7a7c6ab9 (diff)
downloadandroid-node-v8-e522bcd774c6a43d8facc1905b59e53a86f7ae0a.tar.gz
android-node-v8-e522bcd774c6a43d8facc1905b59e53a86f7ae0a.tar.bz2
android-node-v8-e522bcd774c6a43d8facc1905b59e53a86f7ae0a.zip
src: expose V8's IsNativeError() in util bindings
Refs: https://github.com/nodejs/node/pull/12400 PR-URL: https://github.com/nodejs/node/pull/12546 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'test/parallel/test-util.js')
-rw-r--r--test/parallel/test-util.js18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/parallel/test-util.js b/test/parallel/test-util.js
index fabf9dc22b..c1dc4eadcb 100644
--- a/test/parallel/test-util.js
+++ b/test/parallel/test-util.js
@@ -23,6 +23,7 @@
const common = require('../common');
const assert = require('assert');
const util = require('util');
+const binding = process.binding('util');
const context = require('vm').runInNewContext;
// isArray
@@ -153,3 +154,20 @@ util.print('test');
util.puts('test');
util.debug('test');
util.error('test');
+
+{
+ // binding.isNativeError()
+ assert.strictEqual(binding.isNativeError(new Error()), true);
+ assert.strictEqual(binding.isNativeError(new TypeError()), true);
+ assert.strictEqual(binding.isNativeError(new SyntaxError()), true);
+ assert.strictEqual(binding.isNativeError(new (context('Error'))()), true);
+ assert.strictEqual(binding.isNativeError(new (context('TypeError'))()), true);
+ assert.strictEqual(binding.isNativeError(new (context('SyntaxError'))()),
+ true);
+ assert.strictEqual(binding.isNativeError({}), false);
+ assert.strictEqual(binding.isNativeError({ name: 'Error', message: '' }),
+ false);
+ assert.strictEqual(binding.isNativeError([]), false);
+ assert.strictEqual(binding.isNativeError(Object.create(Error.prototype)),
+ false);
+}