View Javadoc
1   package org.itracker.core.resources;
2   
3   import org.itracker.model.Language;
4   import org.itracker.services.AbstractServicesIntegrationTest;
5   import org.junit.Before;
6   import org.junit.Test;
7   
8   import java.util.*;
9   
10  import static org.itracker.Assert.*;
11  
12  public class ItrackerResourceBundleIT extends AbstractServicesIntegrationTest {
13      private ITrackerResourceBundle resourceBundle;
14  
15      @Before
16      public void setup() {
17          resourceBundle = (ITrackerResourceBundle)ITrackerResourceBundle.getBundle(Locale.ENGLISH);
18          assertNotNull(resourceBundle);
19  
20         resourceBundle.removeValue("itracker.web.attr.admin", false);
21      }
22  
23  
24      @Test
25      public void testValue() {
26          resourceBundle.updateValue("itracker.web.attr.admin", "root");
27          assertEquals("root", resourceBundle.getString("itracker.web.attr.admin"));
28          Language language = new Language();
29          language.setLocale("en");
30          language.setResourceKey("itracker.web.attr.administer");
31          language.setResourceValue("administer");
32          resourceBundle.updateValue(language.getResourceKey(), language.getResourceValue());
33          assertEquals("administer", resourceBundle.getString("itracker.web.attr.administer"));
34      }
35  
36      @Test
37      public void testGetLocale() {
38          assertEquals("Locale.ENGLISH", Locale.ENGLISH, resourceBundle.getLocale());
39      }
40  
41      @Test
42      public void testDirty() {
43          assertFalse(resourceBundle.isDirty("itracker.web.attr.admin"));
44          resourceBundle.removeValue("itracker.web.attr.admin", true);
45          assertTrue(resourceBundle.isDirty("itracker.web.attr.admin"));
46          resourceBundle.removeValue("itracker.web.attr.admin", false);
47          assertFalse(resourceBundle.isDirty("itracker.web.attr.admin"));
48  
49          assertNotNull(resourceBundle.getString("itracker.web.attr.admin"));
50          assertEquals("itracker.web.attr.admin", ResourceBundle.getBundle(ITrackerResources.RESOURCE_BUNDLE_NAME, resourceBundle.getLocale()).getString("itracker.web.attr.admin"),
51                   resourceBundle.getString("itracker.web.attr.admin"));
52  
53      }
54  
55      @Test
56      public void testGetKeys() {
57          Enumeration<String> keys = resourceBundle.getKeys();
58          assertNotNull(keys);
59          Set<String> keySet = new HashSet<>();
60          keySet.add("itracker.web.attr.admin");
61          keySet.add("itracker.web.attr.administer");
62  
63          Set<String> resultKeySet = new HashSet<>();
64          while (keys.hasMoreElements()) {
65              resultKeySet.add(keys.nextElement());
66          }
67          assertTrue("keys are contained", resultKeySet.containsAll(keySet));
68      }
69  
70      @Override
71      protected String[] getDataSetFiles() {
72          return new String[]{};
73      }
74  
75  }
76  
77