node/test/parallel/test-uv-binding-constant.js
Rich Trott 51f07ffc84 test: make test-uv-binding-constant JS engine neutral
The error message validation in test-uv-binding-constant depends on the
JS engine. The text will be different in node-chakracore than in
V8-based versions of Node.js. Remove the message validation. Test that
it is a TypeError only. We should only validate error messages when we
control the contents of that error message (and not even necessarily
then, but that is a minimum requirement). V8 and other underlying
engines can change the error message at any time and that should not
require us to change our tests (as changing tests suggests a
semver-major change).

PR-URL: https://github.com/nodejs/node/pull/24666
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Minwoo Jung <minwoo@nodesource.com>
Reviewed-By: Anto Aravinth <anto.aravinth.cse@gmail.com>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-11-28 05:01:56 -08:00

20 lines
482 B
JavaScript

// Flags: --expose-internals
'use strict';
require('../common');
const assert = require('assert');
const { internalBinding } = require('internal/test/binding');
const uv = internalBinding('uv');
// Ensures that the `UV_...` values in internalBinding('uv')
// are constants.
const keys = Object.keys(uv);
keys.forEach((key) => {
if (key.startsWith('UV_')) {
const val = uv[key];
assert.throws(() => uv[key] = 1, TypeError);
assert.strictEqual(uv[key], val);
}
});