2 *******************************************************************************
\r
3 * Copyright (C) 2009, International Business Machines Corporation and *
\r
4 * others. All Rights Reserved. *
\r
5 *******************************************************************************
\r
8 package com.ibm.icu.dev.test.util;
\r
10 import java.util.HashMap;
\r
12 import com.ibm.icu.text.Collator;
\r
13 import com.ibm.icu.util.ULocale;
\r
15 public class LocaleAliasCollationTest extends com.ibm.icu.dev.test.TestFmwk {
\r
16 private static final ULocale[][] _LOCALES = {
\r
17 {new ULocale("en", "RH"), new ULocale("en", "ZW")},
\r
18 {new ULocale("in"), new ULocale("id")},
\r
19 {new ULocale("in", "ID"), new ULocale("id", "ID")},
\r
20 {new ULocale("iw"), new ULocale("he")},
\r
21 {new ULocale("iw", "IL"), new ULocale("he", "IL")},
\r
22 {new ULocale("ji"), new ULocale("yi")},
\r
24 {new ULocale("en", "BU"), new ULocale("en", "MM")},
\r
25 {new ULocale("en", "DY"), new ULocale("en", "BJ")},
\r
26 {new ULocale("en", "HV"), new ULocale("en", "BF")},
\r
27 {new ULocale("en", "NH"), new ULocale("en", "VU")},
\r
28 {new ULocale("en", "TP"), new ULocale("en", "TL")},
\r
29 {new ULocale("en", "ZR"), new ULocale("en", "CD")}
\r
32 private static final int _LOCALE_NUMBER = _LOCALES.length;
\r
33 private static ULocale[] available = null;
\r
34 private HashMap availableMap = new HashMap();
\r
35 private static final ULocale _DEFAULT_LOCALE = ULocale.US;
\r
37 public static void main(String[] args) {
\r
38 new LocaleAliasCollationTest().run(args);
\r
41 public LocaleAliasCollationTest() {
\r
44 protected void init(){
\r
45 available = ULocale.getAvailableLocales();
\r
46 for(int i=0; i<available.length;i++){
\r
47 availableMap.put(available[i].toString(),"");
\r
51 public void TestCollation() {
\r
52 ULocale defLoc = ULocale.getDefault();
\r
53 ULocale.setDefault(_DEFAULT_LOCALE);
\r
54 for (int i=0; i<_LOCALE_NUMBER; i++) {
\r
55 ULocale oldLoc = _LOCALES[i][0];
\r
56 ULocale newLoc = _LOCALES[i][1];
\r
57 if(availableMap.get(_LOCALES[i][1])==null){
\r
58 logln(_LOCALES[i][1]+" is not available. Skipping!");
\r
61 Collator c1 = Collator.getInstance(oldLoc);
\r
62 Collator c2 = Collator.getInstance(newLoc);
\r
64 if (!c1.equals(c2)) {
\r
65 errln("CollationTest: c1!=c2: newLoc= "+newLoc +" oldLoc= "+oldLoc);
\r
68 logln("Collation old:"+oldLoc+" new:"+newLoc);
\r
70 ULocale.setDefault(defLoc);
\r