44b189f55a
Reviewed-by: rriggs, naoto
140 lines
4.9 KiB
Java
140 lines
4.9 KiB
Java
/*
|
|
* Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
*
|
|
* This code is free software; you can redistribute it and/or modify it
|
|
* under the terms of the GNU General Public License version 2 only, as
|
|
* published by the Free Software Foundation.
|
|
*
|
|
* This code is distributed in the hope that it will be useful, but WITHOUT
|
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
* version 2 for more details (a copy is included in the LICENSE file that
|
|
* accompanied this code).
|
|
*
|
|
* You should have received a copy of the GNU General Public License version
|
|
* 2 along with this work; if not, write to the Free Software Foundation,
|
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
*
|
|
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
|
* or visit www.oracle.com if you need additional information or have any
|
|
* questions.
|
|
*/
|
|
/*
|
|
* @test
|
|
* @summary checking localised language/country names in finnish
|
|
* @modules jdk.localedata
|
|
* @bug 4429024 4964035 6558856 8008577
|
|
* @run main/othervm -Djava.locale.providers=JRE,SPI Bug4429024
|
|
*/
|
|
|
|
import java.util.Locale;
|
|
|
|
public class Bug4429024 {
|
|
|
|
public static void main(String[] args) throws Exception {
|
|
|
|
int errors=0;
|
|
|
|
String [][] fiLocales = {
|
|
{ "ar", "arabia" },
|
|
{ "ba", "baski" },
|
|
{ "bg", "bulgaria" },
|
|
{ "ca", "katalaani" },
|
|
{ "cs", "tsekki" },
|
|
{ "da", "tanska" },
|
|
{ "de", "saksa" },
|
|
{ "el", "kreikka" },
|
|
{ "en", "englanti" },
|
|
{ "es", "espanja" },
|
|
{ "fi", "suomi" },
|
|
{ "fr", "ranska" },
|
|
{ "he", "heprea" },
|
|
{ "hi", "hindi" },
|
|
{ "it", "italia" },
|
|
{ "ja", "japani" },
|
|
{ "lt", "liettua" },
|
|
{ "lv", "latvia" },
|
|
{ "nl", "hollanti" },
|
|
{ "no", "norja" },
|
|
{ "pl", "puola" },
|
|
{ "pt", "portugali" },
|
|
{ "ru", "ven\u00e4j\u00e4" },
|
|
{ "sv", "ruotsi" },
|
|
{ "th", "thai" },
|
|
{ "tr", "turkki" },
|
|
{ "zh", "kiina" }
|
|
};
|
|
|
|
String[][] fiCountries = {
|
|
{ "BE", "Belgia" },
|
|
{ "BR", "Brasilia" },
|
|
{ "CA", "Kanada" },
|
|
{ "CH", "Sveitsi" },
|
|
{ "CN", "Kiina" },
|
|
{ "CZ", "Tsekin tasavalta" },
|
|
{ "DE", "Saksa" },
|
|
{ "DK", "Tanska" },
|
|
{ "ES", "Espanja" },
|
|
{ "FI", "Suomi" },
|
|
{ "FR", "Ranska" },
|
|
{ "GB", "Iso-Britannia" },
|
|
{ "GR", "Kreikka" },
|
|
{ "IE", "Irlanti" },
|
|
{ "IT", "Italia" },
|
|
{ "JP", "Japani" },
|
|
{ "KR", "Korea" },
|
|
{ "NL", "Alankomaat" },
|
|
{ "NO", "Norja" },
|
|
{ "PL", "Puola" },
|
|
{ "PT", "Portugali" },
|
|
{ "RU", "Ven\u00e4j\u00e4" },
|
|
{ "SE", "Ruotsi" },
|
|
{ "TR", "Turkki" },
|
|
{ "US", "Yhdysvallat" }
|
|
};
|
|
|
|
for (int i=0; i < fiLocales.length; i++) {
|
|
errors += getLanguage(fiLocales[i][0], fiLocales[i][1]);
|
|
}
|
|
|
|
for (int i=0; i < fiCountries.length; i++) {
|
|
errors += getCountry(fiCountries[i][0], fiCountries[i][1]);
|
|
}
|
|
|
|
if(errors > 0){
|
|
throw new RuntimeException();
|
|
}
|
|
};
|
|
|
|
|
|
static int getLanguage(String inLang, String localizedName){
|
|
|
|
Locale fiLocale = new Locale("fi", "FI");
|
|
Locale inLocale = new Locale (inLang, "");
|
|
|
|
if (!inLocale.getDisplayLanguage(fiLocale).equals(localizedName)){
|
|
System.out.println("Language " + inLang +" should be \"" + localizedName + "\", not \"" + inLocale.getDisplayLanguage(fiLocale) + "\"");
|
|
return 1;
|
|
}
|
|
else{
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
static int getCountry(String inCountry, String localizedName){
|
|
|
|
Locale fiLocale = new Locale("fi", "FI");
|
|
Locale inLocale = new Locale ("", inCountry);
|
|
|
|
if (!inLocale.getDisplayCountry(fiLocale).equals(localizedName)){
|
|
System.out.println("Country " + inCountry + " should be \"" + localizedName + "\", not \"" + inLocale.getDisplayCountry(fiLocale) + "\"");
|
|
return 1;
|
|
}
|
|
else{
|
|
return 0;
|
|
}
|
|
|
|
}
|
|
}
|