From e6edd66c10632715326a3ef830c6808d7da069f6 Mon Sep 17 00:00:00 2001 From: Yaniv Friedensohn Date: Fri, 14 Jun 2019 13:17:40 +0300 Subject: [PATCH] src: add error codes to errors thrown in node_i18n.cc PR-URL: https://github.com/nodejs/node/pull/28221 Reviewed-By: James M Snell Reviewed-By: Rich Trott --- src/node_i18n.cc | 4 ++-- test/parallel/test-icu-punycode.js | 12 ++++++++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/node_i18n.cc b/src/node_i18n.cc index ad5c8283924afa..162f5fda5d4adb 100644 --- a/src/node_i18n.cc +++ b/src/node_i18n.cc @@ -655,7 +655,7 @@ static void ToUnicode(const FunctionCallbackInfo& args) { int32_t len = ToUnicode(&buf, *val, val.length()); if (len < 0) { - return env->ThrowError("Cannot convert name to Unicode"); + return THROW_ERR_INVALID_ARG_VALUE(env, "Cannot convert name to Unicode"); } args.GetReturnValue().Set( @@ -678,7 +678,7 @@ static void ToASCII(const FunctionCallbackInfo& args) { int32_t len = ToASCII(&buf, *val, val.length(), mode); if (len < 0) { - return env->ThrowError("Cannot convert name to ASCII"); + return THROW_ERR_INVALID_ARG_VALUE(env, "Cannot convert name to ASCII"); } args.GetReturnValue().Set( diff --git a/test/parallel/test-icu-punycode.js b/test/parallel/test-icu-punycode.js index 7e8dcf37595123..7706c1d8372dbc 100644 --- a/test/parallel/test-icu-punycode.js +++ b/test/parallel/test-icu-punycode.js @@ -33,8 +33,6 @@ const wptToASCIITests = require( } { - const errMessage = /^Error: Cannot convert name to ASCII$/; - for (const [i, test] of wptToASCIITests.entries()) { if (typeof test === 'string') continue; // skip comments @@ -43,8 +41,14 @@ const wptToASCIITests = require( if (comment) caseComment += ` (${comment})`; if (output === null) { - assert.throws(() => icu.toASCII(input), - errMessage, `ToASCII ${caseComment}`); + common.expectsError( + () => icu.toASCII(input), + { + code: 'ERR_INVALID_ARG_VALUE', + type: TypeError, + message: 'Cannot convert name to ASCII' + } + ); icu.toASCII(input, true); // Should not throw. } else { assert.strictEqual(icu.toASCII(input), output, `ToASCII ${caseComment}`);