/** Test methods i18nManager.getLocaleOrFallback() */ @Test public void testGetLocaleOrFallback() { // Normal case Locale locale = i18nMgr.getLocaleOrDefault("de"); assertNotNull(locale); assertEquals(i18nMgr.getLocaleOrNull("de"), locale); // Unexisting locale case locale = i18nMgr.getLocaleOrDefault("xy"); assertEquals(I18nModule.getDefaultLocale(), locale); // Test trying to get overlay via getLocale method which should not return the overlay Locale overlay = i18nMgr.getLocaleOrDefault("de__" + I18nModule.getOverlayName()); assertEquals(I18nModule.getDefaultLocale(), overlay); overlay = i18nMgr.getLocaleOrDefault("zh_CN__" + I18nModule.getOverlayName()); assertEquals(I18nModule.getDefaultLocale(), overlay); }
/** Test method i18nManager.buildI18nFilename() */ @Test public void testBuildI18nFilename() { String overlay = I18nModule.getOverlayName(); String testFileName = i18nMgr.buildI18nFilename(new Locale("de")); assertEquals("LocalStrings_de.properties", testFileName); testFileName = i18nMgr.buildI18nFilename(new Locale("de", "", "__" + overlay)); assertEquals("LocalStrings_de__" + overlay + ".properties", testFileName); testFileName = i18nMgr.buildI18nFilename(new Locale("de", "CH")); assertEquals("LocalStrings_de_CH.properties", testFileName); testFileName = i18nMgr.buildI18nFilename(new Locale("de", "CH", "VENDOR")); assertEquals("LocalStrings_de_CH_VENDOR.properties", testFileName); testFileName = i18nMgr.buildI18nFilename(new Locale("de", "CH", "VENDOR__" + overlay)); assertEquals("LocalStrings_de_CH_VENDOR__" + overlay + ".properties", testFileName); }
/** Test methods i18nManager.createLocal() */ @Test public void testCreateLocale() { // standard locale Locale loc = i18nMgr.createLocale("de"); assertNotNull(loc); assertEquals("de", loc.getLanguage()); assertEquals("", loc.getCountry()); assertEquals("", loc.getVariant()); // with country loc = i18nMgr.createLocale("de_CH"); assertNotNull(loc); assertEquals("de", loc.getLanguage()); assertEquals("CH", loc.getCountry()); assertEquals("", loc.getVariant()); // with variant loc = i18nMgr.createLocale("de_CH_ZH"); assertNotNull(loc); assertEquals("de", loc.getLanguage()); assertEquals("CH", loc.getCountry()); assertEquals("ZH", loc.getVariant()); // with variant but no country loc = i18nMgr.createLocale("de__VENDOR"); assertNotNull(loc); assertEquals("de", loc.getLanguage()); assertEquals("", loc.getCountry()); assertEquals("VENDOR", loc.getVariant()); // // With overlay // with language String overlay = I18nModule.getOverlayName(); loc = i18nMgr.createLocale("de"); Locale over = i18nMgr.createOverlay(loc); assertEquals("de____" + overlay, over.toString()); assertEquals(i18nMgr.createOverlayKeyForLanguage(loc.toString()), i18nMgr.getLocaleKey(over)); // with country loc = i18nMgr.createLocale("de_CH"); over = i18nMgr.createOverlay(loc); assertEquals("de_CH___" + overlay, over.toString()); assertEquals(i18nMgr.createOverlayKeyForLanguage(loc.toString()), i18nMgr.getLocaleKey(over)); // with variant loc = i18nMgr.createLocale("de_CH_ZH"); over = i18nMgr.createOverlay(loc); assertEquals("de_CH_ZH__" + overlay, over.toString()); assertEquals(i18nMgr.createOverlayKeyForLanguage(loc.toString()), i18nMgr.getLocaleKey(over)); }