| package org.eclipse.osgi.tests.eclipseadaptor; |
| |
| import static org.junit.Assert.assertEquals; |
| |
| import java.util.Locale; |
| import org.eclipse.osgi.internal.framework.EquinoxConfiguration; |
| import org.junit.Test; |
| |
| public class LocaleTransformationTest { |
| |
| @Test |
| public void testValidLanguageCountryVariant() { |
| String localeString = "de_DE_EURO"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("de", locale.getLanguage()); |
| assertEquals("DE", locale.getCountry()); |
| assertEquals("EURO", locale.getVariant()); |
| } |
| |
| @Test |
| public void testValidLanguageCountry() { |
| String localeString = "de_DE"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("de", locale.getLanguage()); |
| assertEquals("DE", locale.getCountry()); |
| assertEquals("", locale.getVariant()); |
| } |
| |
| @Test |
| public void testValidLanguage() { |
| String localeString = "de"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("de", locale.getLanguage()); |
| assertEquals("", locale.getCountry()); |
| assertEquals("", locale.getVariant()); |
| } |
| |
| @Test |
| public void testValidCountry() { |
| String localeString = "_DE"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("", locale.getLanguage()); |
| assertEquals("DE", locale.getCountry()); |
| assertEquals("", locale.getVariant()); |
| } |
| |
| @Test |
| public void testValidLanguageVariant() { |
| String localeString = "de__EURO"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("de", locale.getLanguage()); |
| assertEquals("", locale.getCountry()); |
| assertEquals("EURO", locale.getVariant()); |
| } |
| |
| @Test |
| public void testValidVariant() { |
| String localeString = "__EURO"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("", locale.getLanguage()); |
| assertEquals("", locale.getCountry()); |
| assertEquals("EURO", locale.getVariant()); |
| } |
| |
| @Test |
| public void testValidCountryVariant() { |
| String localeString = "_DE_EURO"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("", locale.getLanguage()); |
| assertEquals("DE", locale.getCountry()); |
| assertEquals("EURO", locale.getVariant()); |
| } |
| |
| @Test |
| public void testInvalidLanguage() { |
| String localeString = "1234"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("en", locale.getLanguage()); |
| assertEquals("", locale.getCountry()); |
| assertEquals("", locale.getVariant()); |
| } |
| |
| @Test |
| public void testInvalidOneLetterLanguage() { |
| String localeString = "a"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("en", locale.getLanguage()); |
| assertEquals("", locale.getCountry()); |
| assertEquals("", locale.getVariant()); |
| } |
| |
| @Test |
| public void testThreeLetterValidLanguage() { |
| String localeString = "kok"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("kok", locale.getLanguage()); |
| assertEquals("", locale.getCountry()); |
| assertEquals("", locale.getVariant()); |
| } |
| |
| @Test |
| public void testInvalidOneLetterCountry() { |
| String localeString = "_X"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("en", locale.getLanguage()); |
| assertEquals("", locale.getCountry()); |
| assertEquals("", locale.getVariant()); |
| } |
| |
| @Test |
| public void testInvalidThreeLetterCountry() { |
| String localeString = "_XXX"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("en", locale.getLanguage()); |
| assertEquals("", locale.getCountry()); |
| assertEquals("", locale.getVariant()); |
| } |
| |
| @Test |
| public void testValidNumericAreaCode() { |
| String localeString = "_029"; |
| Locale locale = EquinoxConfiguration.toLocale(localeString, Locale.ENGLISH); |
| assertEquals("", locale.getLanguage()); |
| assertEquals("029", locale.getCountry()); |
| assertEquals("", locale.getVariant()); |
| } |
| } |