diff options
Diffstat (limited to 'deps/v8/test/intl/regress-9788.js')
-rw-r--r-- | deps/v8/test/intl/regress-9788.js | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/deps/v8/test/intl/regress-9788.js b/deps/v8/test/intl/regress-9788.js new file mode 100644 index 0000000000..7a3679584f --- /dev/null +++ b/deps/v8/test/intl/regress-9788.js @@ -0,0 +1,29 @@ +// Copyright 2019 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --harmony-intl-add-calendar-numbering-system + +// Well-formed but invalid numberingSystem should not throw RangeError. +var numberingSystem = "abc"; +var len = 3; + +const intlClasses = [ + Intl.DateTimeFormat, + Intl.NumberFormat, + Intl.RelativeTimeFormat +]; + +intlClasses.forEach(function(cls) { + var expected = new cls("en").resolvedOptions().numberingSystem; + var obj; + for (var i = 3; i < 20; i++, len++, numberingSystem += "a") { + assertDoesNotThrow(() => obj = new cls("en", {numberingSystem}), + "Well-formed numberingSystem should not throw"); + assertEquals(expected, obj.resolvedOptions().numberingSystem); + if (len == 8) { + numberingSystem += "-ab"; + len = 2; + } + } +}); |