| 26 | import org.junit.Test; |
| 27 | |
| 28 | public class TestStringManager { |
| 29 | |
| 30 | private static final String PACKAGE_NAME = "org.apache.tomcat.util"; |
| 31 | private static final StringManager sm = StringManager.getManager(PACKAGE_NAME); |
| 32 | |
| 33 | private static final Locale[] ALL_LOCALES = new Locale[] { |
| 34 | Locale.ENGLISH, Locale.forLanguageTag("cs"), Locale.GERMAN, Locale.forLanguageTag("es"), Locale.FRENCH, |
| 35 | Locale.JAPANESE, Locale.KOREAN, Locale.forLanguageTag("pt_BR"), Locale.forLanguageTag("ru"), |
| 36 | Locale.SIMPLIFIED_CHINESE }; |
| 37 | private static final Set<Locale> CJK_LOCALES; |
| 38 | |
| 39 | static { |
| 40 | CJK_LOCALES = new HashSet<>(); |
| 41 | CJK_LOCALES.add(Locale.SIMPLIFIED_CHINESE); |
| 42 | CJK_LOCALES.add(Locale.JAPANESE); |
| 43 | CJK_LOCALES.add(Locale.KOREAN); |
| 44 | } |
| 45 | |
| 46 | @Test |
| 47 | public void testNullKey() { |
| 48 | boolean iaeThrown = false; |
| 49 | |
| 50 | try { |
| 51 | sm.getString(null); |
| 52 | } catch (IllegalArgumentException iae) { |
| 53 | iaeThrown = true; |
| 54 | } |
| 55 | Assert.assertTrue("IAE not thrown on null key", iaeThrown); |
| 56 | } |
| 57 | |
| 58 | @Test |
| 59 | public void testBug46933() { |
| 60 | // Check null args are OK |
| 61 | sm.getString("namingContext.nameNotBound"); |
| 62 | sm.getString("namingContext.nameNotBound", (Object[]) null); |
| 63 | sm.getString("namingContext.nameNotBound", new Object[1]); |
| 64 | } |
| 65 | |
| 66 | @Test |
| 67 | public void testFrench() { |
| 68 | StringManager sm = StringManager.getManager(PACKAGE_NAME, Locale.FRENCH); |
| 69 | Assert.assertEquals(Locale.FRENCH, sm.getLocale()); |
| 70 | } |
| 71 | |
| 72 | @Test |
| 73 | public void testMissingWithTccl() { |
| 74 | Thread.currentThread().setContextClassLoader(TestStringManager.class.getClassLoader()); |
| 75 | StringManager sm = StringManager.getManager("org.does.not.exist"); |
| 76 | Assert.assertNull(sm.getLocale()); |
| 77 | } |
| 78 | |
| 79 | |
| 80 | @Test |
| 81 | public void testMissingNullTccl() { |
| 82 | Thread.currentThread().setContextClassLoader(null); |
| 83 | StringManager sm = StringManager.getManager("org.does.not.exist"); |
| 84 | Assert.assertNull(sm.getLocale()); |
| 85 | } |
nothing calls this directly
no test coverage detected