Index: test/intl/break-iterator/zh-break.js |
diff --git a/src/extensions/i18n/locale.h b/test/intl/break-iterator/zh-break.js |
similarity index 60% |
copy from src/extensions/i18n/locale.h |
copy to test/intl/break-iterator/zh-break.js |
index c39568e5d9d69104b8b4d3dbb35ca197a813c9a3..21bde93c7e683f9772ca7f0c5f0c432e85866082 100644 |
--- a/src/extensions/i18n/locale.h |
+++ b/test/intl/break-iterator/zh-break.js |
@@ -26,31 +26,39 @@ |
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
// limitations under the License. |
-#ifndef V8_EXTENSIONS_I18N_SRC_LOCALE_H_ |
-#define V8_EXTENSIONS_I18N_SRC_LOCALE_H_ |
+// Segment plain Chinese sentence and check results. |
-#include "unicode/uversion.h" |
-#include "v8.h" |
+var iterator = new Intl.v8BreakIterator(['zh']); |
-namespace v8_i18n { |
+var textToSegment = '\u56FD\u52A1\u9662\u5173\u4E8E\u300A\u571F\u5730' + |
+ '\u623F\u5C4B\u7BA1\u7406\u6761\u4F8B\u300B'; |
+iterator.adoptText(textToSegment); |
-// Canonicalizes the BCP47 language tag using BCP47 rules. |
-// Returns 'invalid-tag' in case input was not well formed. |
-void JSCanonicalizeLanguageTag(const v8::FunctionCallbackInfo<v8::Value>& args); |
+var slices = []; |
+var types = []; |
+var pos = iterator.first(); |
+while (pos !== -1) { |
+ var nextPos = iterator.next(); |
+ if (nextPos === -1) break; |
-// Returns a list of available locales for collator, date or number formatter. |
-void JSAvailableLocalesOf(const v8::FunctionCallbackInfo<v8::Value>& args); |
+ slices.push(textToSegment.slice(pos, nextPos)); |
+ types.push(iterator.breakType()); |
-// Returns default ICU locale. |
-void JSGetDefaultICULocale(const v8::FunctionCallbackInfo<v8::Value>& args); |
+ pos = nextPos; |
+} |
-// Returns an array of objects, that have maximized and base names of inputs. |
-// Unicode extensions are dropped from both. |
-// Input: ['zh-TW-u-nu-thai', 'sr'] |
-// Output: [{maximized: 'zh-Hant-TW', base: 'zh-TW'}, |
-// {maximized: 'sr-Cyrl-RS', base: 'sr'}] |
-void JSGetLanguageTagVariants(const v8::FunctionCallbackInfo<v8::Value>& args); |
+assertEquals('\u56FD\u52A1\u9662', slices[0]); |
+assertEquals('\u5173\u4E8E', slices[1]); |
+assertEquals('\u300A', slices[2]); |
+assertEquals('\u571F\u5730', slices[3]); |
+assertEquals('\u623F\u5C4B', slices[4]); |
+assertEquals('\u7BA1\u7406', slices[5]); |
+assertEquals('\u6761\u4F8B', slices[6]); |
+assertEquals('\u300B', slices[7]); |
-} // namespace v8_i18n |
- |
-#endif // V8_EXTENSIONS_I18N_LOCALE_H_ |
+assertEquals('ideo', types[0]); |
+assertEquals('ideo', types[1]); |
+assertEquals('none', types[2]); |
+assertEquals('ideo', types[3]); |
+assertEquals('ideo', types[4]); |
+assertEquals('none', types[types.length - 1]); |