diff options
Diffstat (limited to 'js/src/tests/test262/intl402/Locale/constructor-options-throwing-getters.js')
-rw-r--r-- | js/src/tests/test262/intl402/Locale/constructor-options-throwing-getters.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/js/src/tests/test262/intl402/Locale/constructor-options-throwing-getters.js b/js/src/tests/test262/intl402/Locale/constructor-options-throwing-getters.js new file mode 100644 index 0000000000..92418505ad --- /dev/null +++ b/js/src/tests/test262/intl402/Locale/constructor-options-throwing-getters.js @@ -0,0 +1,35 @@ +// Copyright 2018 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-Intl.Locale +description: Checks the propagation of exceptions from the options for the Locale constructor. +features: [Intl.Locale] +---*/ + +function CustomError() {} + +const options = [ + "language", + "script", + "region", + "calendar", + "collation", + "hourCycle", + "caseFirst", + "numeric", + "numberingSystem", +]; + +for (const option of options) { + assert.throws(CustomError, () => { + new Intl.Locale("en", { + get [option]() { + throw new CustomError(); + } + }); + }, + `new Intl.Locale("en", {get ${option}() {throw new CustomError();}}) throws CustomError`); +} + +reportCompare(0, 0); |