LUCENE-3521: revert the revert of the hack in LuceneTestCase because ICU still has bugs with java7

git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1184851 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Robert Muir 2011-10-16 15:45:10 +00:00
parent b24d05ca50
commit 18bf8f155e
1 changed files with 17 additions and 0 deletions

View File

@ -325,6 +325,9 @@ public abstract class LuceneTestCase extends Assert {
random.initialized = true;
}
@Deprecated
private static boolean icuTested = false;
@BeforeClass
public static void beforeClassLuceneTestCaseJ4() {
initRandom();
@ -376,6 +379,20 @@ public abstract class LuceneTestCase extends Assert {
savedLocale = Locale.getDefault();
// START hack to init ICU safely before we randomize locales.
// ICU fails during classloading when a special Java7-only locale is the default
// see: http://bugs.icu-project.org/trac/ticket/8734
if (!icuTested) {
icuTested = true;
try {
Locale.setDefault(Locale.US);
Class.forName("com.ibm.icu.util.ULocale");
} catch (ClassNotFoundException cnfe) {
// ignore if no ICU is in classpath
}
}
// END hack
locale = TEST_LOCALE.equals("random") ? randomLocale(random) : localeForName(TEST_LOCALE);
Locale.setDefault(locale);
savedTimeZone = TimeZone.getDefault();