1 package org.alfresco.i18n; 2 3 import java.util.Locale ; 4 5 import junit.framework.TestCase; 6 7 12 public class I18NUtilTest extends TestCase 13 { 14 private static final String BASE_RESOURCE_NAME = "org.alfresco.i18n.testMessages"; 15 private static final String PARAM_VALUE = "television"; 16 private static final String MSG_YES = "msg_yes"; 17 private static final String MSG_NO = "msg_no"; 18 private static final String MSG_PARAMS = "msg_params"; 19 private static final String VALUE_YES = "Yes"; 20 private static final String VALUE_NO = "No"; 21 private static final String VALUE_PARAMS = "What no " + PARAM_VALUE + "?"; 22 private static final String VALUE_FR_YES = "Oui"; 23 private static final String VALUE_FR_NO = "Non"; 24 private static final String VALUE_FR_PARAMS = "Que non " + PARAM_VALUE + "?"; 25 26 @Override 27 protected void setUp() throws Exception 28 { 29 I18NUtil.setLocale(Locale.getDefault()); 31 } 32 33 36 public void testSetAndGet() 37 { 38 assertEquals(Locale.getDefault(), I18NUtil.getLocale()); 40 41 I18NUtil.setLocale(Locale.CANADA_FRENCH); 43 assertEquals(Locale.CANADA_FRENCH, I18NUtil.getLocale()); 44 45 I18NUtil.setLocale(null); 47 assertEquals(Locale.getDefault(), I18NUtil.getLocale()); 48 } 49 50 53 public void testGetMessage() 54 { 55 assertNull(I18NUtil.getMessage(MSG_NO)); 57 58 I18NUtil.registerResourceBundle(BASE_RESOURCE_NAME); 60 61 assertEquals(VALUE_YES, I18NUtil.getMessage(MSG_YES)); 63 assertEquals(VALUE_NO, I18NUtil.getMessage(MSG_NO)); 64 65 assertNull(I18NUtil.getMessage("bad_key")); 67 68 I18NUtil.setLocale(new Locale ("fr", "FR")); 70 71 assertEquals(VALUE_FR_YES, I18NUtil.getMessage(MSG_YES)); 73 assertEquals(VALUE_FR_NO, I18NUtil.getMessage(MSG_NO)); 74 75 assertEquals(VALUE_YES, I18NUtil.getMessage(MSG_YES, Locale.getDefault())); 77 assertEquals(VALUE_NO, I18NUtil.getMessage(MSG_NO, Locale.getDefault())); 78 } 79 80 83 public void testGetMessageWithParams() 84 { 85 I18NUtil.registerResourceBundle(BASE_RESOURCE_NAME); 87 88 assertEquals(VALUE_PARAMS, I18NUtil.getMessage(MSG_PARAMS, new Object []{PARAM_VALUE})); 90 91 I18NUtil.setLocale(new Locale ("fr", "FR")); 93 94 assertEquals(VALUE_FR_PARAMS, I18NUtil.getMessage(MSG_PARAMS, new Object []{PARAM_VALUE})); 96 97 assertEquals(VALUE_PARAMS, I18NUtil.getMessage(MSG_PARAMS, Locale.getDefault(), new Object []{PARAM_VALUE})); 99 } 100 } 101 | Popular Tags |