1 16 package cintoo.messages.bundle; 17 18 import org.testng.annotations.*; 19 import org.testng.Assert; 20 import api.cintoo.messages.context.Context; 21 import api.cintoo.messages.bundle.BaseBundle; 22 import cintoo.messages.context.PackageContext; 23 import cintoo.messages.context.DefaultContextCache; 24 25 import java.util.Locale ; 26 import java.util.ResourceBundle ; 27 28 public class TestBundleManager { 29 private DefaultBundleManager manager; 30 private Locale de_locale; 31 private Context dummy; 32 33 @Configuration(beforeTestMethod = true) 34 public void setUp() { 35 de_locale = new Locale ("de", "de"); 36 dummy = PackageContext.string("test.dummy"); 37 manager = new DefaultBundleManager(new DefaultContextCache()); 38 } 39 40 @Test 41 public void testChildParent() { 42 manager.setBundle("testp1", PackageContext.string("a")); 43 BaseBundle bundle = (BaseBundle) manager.getBundle(PackageContext.string("a"), de_locale); 44 Assert.assertEquals(bundle.getString("oneKeyUp"), "oneKeyUpValue", "Bundle has parent and returns parent key"); 45 Assert.assertEquals(bundle.getString("twoKeyUp"), "twoKeyUpValue", "Bundle has parent and returns parent key"); 46 } 47 48 @Test 49 public void testParentChildSecond() { 50 manager.setBundle("test1", PackageContext.string("a")); 51 manager.setBundle("test2", PackageContext.string("a.b")); 52 BaseBundle bundle = (BaseBundle) manager.getBundle(PackageContext.string("a.b"), de_locale); 53 Assert.assertTrue(bundle.getParent() != null, "Bundle for a.b. has parent"); 54 } 55 56 @Test 57 public void testParentChildFirst() { 58 manager.setBundle("test2", PackageContext.string("a.b")); 59 manager.setBundle("test1", PackageContext.string("a")); 60 BaseBundle bundle = (BaseBundle) manager.getBundle(PackageContext.string("a.b"), de_locale); 61 Assert.assertTrue(bundle.getParent() != null, "Bundle for a.b. has parent"); 62 } 63 64 @Test 65 public void testBean() { 66 manager.setBundle("test"); 67 Assert.assertEquals(manager.getBundle(de_locale).getLocale(), new Locale ("de", "de"), "Returns correct locale in bundle"); 68 } 69 70 @Test 71 public void testBundleWithContextObject() { 72 manager.setBundle("testp1", "test.dummy"); 73 manager.setBundle("testp2"); 74 75 ResourceBundle bundle = manager.getBundle(dummy, de_locale); 76 Assert.assertEquals(bundle.getString("testKey1"), "testValue1", "Returns correct cintoo.messages.bundle for test.dummy"); 77 78 bundle = manager.getBundle(this, de_locale); 79 Assert.assertEquals(bundle.getString("testKey2"), "testValue2", "Returns correct bundle for this"); 80 } 81 } | Popular Tags |