diff --git a/test/intl402/String/prototype/toLocaleLowerCase/validates-all-locale-identifiers.js b/test/intl402/String/prototype/toLocaleLowerCase/validates-all-locale-identifiers.js new file mode 100644 index 0000000000..72bf260779 --- /dev/null +++ b/test/intl402/String/prototype/toLocaleLowerCase/validates-all-locale-identifiers.js @@ -0,0 +1,25 @@ +// Copyright (C) 2025 André Bargull. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sup-string.prototype.tolocalelowercase +description: > + All locale identifiers are validated, not just the first one. +info: | + String.prototype.toLocaleLowerCase ( [ locales ] ) + ... + 3. Return ? TransformCase(S, locales, lower). + + TransformCase ( S, locales, targetCase ) + 1. Let requestedLocales be ? CanonicalizeLocaleList(locales). + ... +---*/ + +var locales = [ + "en-US", + "this is not a valid locale", +]; + +assert.throws(RangeError, function() { + "".toLocaleLowerCase(locales); +}); diff --git a/test/intl402/String/prototype/toLocaleUpperCase/validates-all-locale-identifiers.js b/test/intl402/String/prototype/toLocaleUpperCase/validates-all-locale-identifiers.js new file mode 100644 index 0000000000..2167a3ca04 --- /dev/null +++ b/test/intl402/String/prototype/toLocaleUpperCase/validates-all-locale-identifiers.js @@ -0,0 +1,25 @@ +// Copyright (C) 2025 André Bargull. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sup-string.prototype.tolocaleuppercase +description: > + All locale identifiers are validated, not just the first one. +info: | + String.prototype.toLocaleUpperCase ( [ locales ] ) + ... + 3. Return ? TransformCase(S, locales, upper). + + TransformCase ( S, locales, targetCase ) + 1. Let requestedLocales be ? CanonicalizeLocaleList(locales). + ... +---*/ + +var locales = [ + "en-US", + "this is not a valid locale", +]; + +assert.throws(RangeError, function() { + "".toLocaleUpperCase(locales); +});