예제 #1
0
 /** Test methods i18nManager.countI18nItems() and i18nManager.countBundles() */
 @Ignore
 @Test
 public void testCountI18nItemsAndBundles() {
   I18nModule.initBundleNames(); // remove dirty stuff from previous tests
   int bundleCounter = I18nModule.getBundleNamesContainingI18nFiles().size();
   String testNewBundle = "org.olat.core.util.i18n.junittestdata.new";
   Locale testLocale = i18nMgr.getLocaleOrDefault("de");
   File baseDir = I18nModule.getPropertyFilesBaseDir(testLocale, testNewBundle);
   File testFile = i18nMgr.getPropertiesFile(testLocale, testNewBundle, baseDir);
   // clean first existing files from previous broken testcase
   if (testFile.exists()) {
     i18nMgr.deleteProperties(testLocale, testNewBundle);
   }
   Properties props = i18nMgr.getResolvedProperties(testLocale, testNewBundle);
   assertEquals(0, i18nMgr.countI18nItems(testLocale, testNewBundle, true));
   assertEquals(0, i18nMgr.countI18nItems(testLocale, testNewBundle, false));
   props.setProperty("key.1", "1");
   props.setProperty("key.2", "2");
   i18nMgr.saveOrUpdateProperties(props, testLocale, testNewBundle);
   assertEquals(2, i18nMgr.countI18nItems(testLocale, testNewBundle, false));
   assertEquals(0, i18nMgr.countI18nItems(i18nMgr.getLocaleOrDefault("en"), testNewBundle, false));
   assertEquals(bundleCounter + 1, I18nModule.getBundleNamesContainingI18nFiles().size());
   // test all bundles
   int allCount = i18nMgr.countI18nItems(testLocale, null, true);
   assertEquals(allCount, i18nMgr.countI18nItems(testLocale, null, false));
   props.remove("key.1");
   i18nMgr.saveOrUpdateProperties(props, testLocale, testNewBundle);
   assertEquals(allCount - 1, i18nMgr.countI18nItems(testLocale, null, false));
   i18nMgr.deleteProperties(testLocale, testNewBundle);
   assertEquals(allCount - 2, i18nMgr.countI18nItems(testLocale, null, false));
   assertEquals(bundleCounter, I18nModule.getBundleNamesContainingI18nFiles().size());
   // count bundles tests
   assertEquals(0, i18nMgr.countBundles("org.olat.core.util.i18n.nonexisting", true));
   assertEquals(1, i18nMgr.countBundles("org.olat.core.util.i18n.ui", true));
   // finds 4: regular: i18n.devtools, i18n.ui;
   assertEquals(2, i18nMgr.countBundles("org.olat.core.util.i18n", true));
   assertEquals(0, i18nMgr.countBundles("org.olat.core.util.i18n", false));
   assertEquals(1, i18nMgr.countBundles("org.olat.core.util.i18n.ui", false));
   assertTrue(0 < i18nMgr.countBundles(null, false));
   // clean up
   if (testFile.exists()) {
     i18nMgr.deleteProperties(testLocale, testNewBundle);
   }
   if (testFile.getParentFile().exists()) {
     testFile.getParentFile().delete();
   }
 }