diff options
Diffstat (limited to 'deps/v8/test/intl/segmenter/segment-iterator-preceding.js')
-rw-r--r-- | deps/v8/test/intl/segmenter/segment-iterator-preceding.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/deps/v8/test/intl/segmenter/segment-iterator-preceding.js b/deps/v8/test/intl/segmenter/segment-iterator-preceding.js new file mode 100644 index 0000000000..07d73376f2 --- /dev/null +++ b/deps/v8/test/intl/segmenter/segment-iterator-preceding.js @@ -0,0 +1,21 @@ +// Copyright 2018 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-segmenter + +const segmenter = new Intl.Segmenter(); +const text = "Hello World, Test 123! Foo Bar. How are you?"; +const iter = segmenter.segment(text); + +assertEquals("function", typeof iter.preceding); + +// 1.5.3.3 %SegmentIteratorPrototype%.preceding( [ from ] ) +// 3.b If ... from = 0, throw a RangeError exception. +assertThrows(() => iter.preceding(0), RangeError); + +// 1.5.3.3 %SegmentIteratorPrototype%.preceding( [ from ] ) +// 3.b If from > iterator.[[SegmentIteratorString]] ... , throw a RangeError exception. +assertDoesNotThrow(() => iter.preceding(text.length - 1)); +assertDoesNotThrow(() => iter.preceding(text.length)); +assertThrows(() => iter.preceding(text.length + 1), RangeError); |