You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@lucene.apache.org by bu...@apache.org on 2009/08/25 08:48:36 UTC
svn commit: r807499 - in /lucene/java/trunk: ./
contrib/miscellaneous/src/test/org/apache/lucene/queryParser/precedence/
contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/
src/test/org/apache/lucene/document/ src/test/org/apache/lucen...
Author: buschmi
Date: Tue Aug 25 06:48:36 2009
New Revision: 807499
URL: http://svn.apache.org/viewvc?rev=807499&view=rev
Log:
LUCENE-1852: Fix localization test failures.
Modified:
lucene/java/trunk/CHANGES.txt
lucene/java/trunk/contrib/miscellaneous/src/test/org/apache/lucene/queryParser/precedence/TestPrecedenceQueryParser.java
lucene/java/trunk/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQueryParserWrapper.java
lucene/java/trunk/src/test/org/apache/lucene/document/TestDateTools.java
lucene/java/trunk/src/test/org/apache/lucene/queryParser/TestQueryParser.java
Modified: lucene/java/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/java/trunk/CHANGES.txt?rev=807499&r1=807498&r2=807499&view=diff
==============================================================================
--- lucene/java/trunk/CHANGES.txt (original)
+++ lucene/java/trunk/CHANGES.txt Tue Aug 25 06:48:36 2009
@@ -813,6 +813,9 @@
MultiSearcher when possible to help excercise more edge cases.
(Chris Hostetter, Mark Miller)
+ 2. LUCENE-1852: Fix localization test failures.
+ (Robert Muir via Michael Busch)
+
======================= Release 2.4.1 2009-03-09 =======================
API Changes
Modified: lucene/java/trunk/contrib/miscellaneous/src/test/org/apache/lucene/queryParser/precedence/TestPrecedenceQueryParser.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/contrib/miscellaneous/src/test/org/apache/lucene/queryParser/precedence/TestPrecedenceQueryParser.java?rev=807499&r1=807498&r2=807499&view=diff
==============================================================================
--- lucene/java/trunk/contrib/miscellaneous/src/test/org/apache/lucene/queryParser/precedence/TestPrecedenceQueryParser.java (original)
+++ lucene/java/trunk/contrib/miscellaneous/src/test/org/apache/lucene/queryParser/precedence/TestPrecedenceQueryParser.java Tue Aug 25 06:48:36 2009
@@ -17,11 +17,9 @@
* limitations under the License.
*/
-import junit.framework.TestCase;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.LowerCaseTokenizer;
import org.apache.lucene.analysis.SimpleAnalyzer;
-import org.apache.lucene.analysis.Token;
import org.apache.lucene.analysis.TokenFilter;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.WhitespaceAnalyzer;
@@ -37,13 +35,23 @@
import org.apache.lucene.search.RangeQuery;
import org.apache.lucene.search.TermQuery;
import org.apache.lucene.search.WildcardQuery;
+import org.apache.lucene.util.LocalizedTestCase;
import java.io.IOException;
import java.io.Reader;
import java.text.DateFormat;
+import java.util.Arrays;
import java.util.Calendar;
+import java.util.GregorianCalendar;
+import java.util.HashSet;
-public class TestPrecedenceQueryParser extends TestCase {
+public class TestPrecedenceQueryParser extends LocalizedTestCase {
+
+ public TestPrecedenceQueryParser(String name) {
+ super(name, new HashSet(Arrays.asList(new String[]{
+ "testDateRange", "testNumber"
+ })));
+ }
public static Analyzer qpAnalyzer = new QPTestAnalyzer();
@@ -107,7 +115,8 @@
private int originalMaxClauses;
- public void setUp() {
+ public void setUp() throws Exception {
+ super.setUp();
originalMaxClauses = BooleanQuery.getMaxClauseCount();
}
@@ -360,6 +369,14 @@
assertQueryEquals("( bar blar { a TO z}) ", null, "bar blar {a TO z}");
assertQueryEquals("gack ( bar blar { a TO z}) ", null, "gack (bar blar {a TO z})");
}
+
+ private String escapeDateString(String s) {
+ if (s.contains(" ")) {
+ return "\"" + s + "\"";
+ } else {
+ return s;
+ }
+ }
public String getDate(String s) throws Exception {
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);
@@ -368,7 +385,7 @@
public String getLocalizedDate(int year, int month, int day) {
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);
- Calendar calendar = Calendar.getInstance();
+ Calendar calendar = new GregorianCalendar();
calendar.set(year, month, day);
return df.format(calendar.getTime());
}
@@ -376,9 +393,9 @@
public void testDateRange() throws Exception {
String startDate = getLocalizedDate(2002, 1, 1);
String endDate = getLocalizedDate(2002, 1, 4);
- assertQueryEquals("[ " + startDate + " TO " + endDate + "]", null,
+ assertQueryEquals("[ " + escapeDateString(startDate) + " TO " + escapeDateString(endDate) + "]", null,
"[" + getDate(startDate) + " TO " + getDate(endDate) + "]");
- assertQueryEquals("{ " + startDate + " " + endDate + " }", null,
+ assertQueryEquals("{ " + escapeDateString(startDate) + " " + escapeDateString(endDate) + " }", null,
"{" + getDate(startDate) + " TO " + getDate(endDate) + "}");
}
Modified: lucene/java/trunk/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQueryParserWrapper.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQueryParserWrapper.java?rev=807499&r1=807498&r2=807499&view=diff
==============================================================================
--- lucene/java/trunk/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQueryParserWrapper.java (original)
+++ lucene/java/trunk/contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQueryParserWrapper.java Tue Aug 25 06:48:36 2009
@@ -21,8 +21,11 @@
import java.io.Reader;
import java.text.Collator;
import java.text.DateFormat;
+import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.HashSet;
import java.util.List;
import java.util.Locale;
@@ -68,7 +71,7 @@
import org.apache.lucene.search.TermRangeQuery;
import org.apache.lucene.search.WildcardQuery;
import org.apache.lucene.store.RAMDirectory;
-import org.apache.lucene.util.LuceneTestCase;
+import org.apache.lucene.util.LocalizedTestCase;
/**
* This test case is a copy of the core Lucene query parser test, it was adapted
@@ -76,8 +79,16 @@
*
* Tests QueryParser.
*/
-public class TestQueryParserWrapper extends LuceneTestCase {
+public class TestQueryParserWrapper extends LocalizedTestCase {
+ public TestQueryParserWrapper(String name) {
+ super(name, new HashSet(Arrays.asList(new String[]{
+ "testLegacyDateRange", "testDateRange",
+ "testCJK", "testNumber", "testFarsiRangeCollating",
+ "testLocalDateFormat"
+ })));
+ }
+
public static Analyzer qpAnalyzer = new QPTestAnalyzer();
public static class QPTestFilter extends TokenFilter {
@@ -618,6 +629,14 @@
is.close();
}
+
+ private String escapeDateString(String s) {
+ if (s.contains(" ")) {
+ return "\"" + s + "\"";
+ } else {
+ return s;
+ }
+ }
/** for testing legacy DateField support */
private String getLegacyDate(String s) throws Exception {
@@ -645,7 +664,7 @@
private String getLocalizedDate(int year, int month, int day,
boolean extendLastDate) {
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);
- Calendar calendar = Calendar.getInstance();
+ Calendar calendar = new GregorianCalendar();
calendar.set(year, month, day);
if (extendLastDate) {
calendar.set(Calendar.HOUR_OF_DAY, 23);
@@ -660,20 +679,20 @@
public void testLegacyDateRange() throws Exception {
String startDate = getLocalizedDate(2002, 1, 1, false);
String endDate = getLocalizedDate(2002, 1, 4, false);
- Calendar endDateExpected = Calendar.getInstance();
+ Calendar endDateExpected = new GregorianCalendar();
endDateExpected.set(2002, 1, 4, 23, 59, 59);
endDateExpected.set(Calendar.MILLISECOND, 999);
- assertQueryEquals("[ " + startDate + " TO " + endDate + "]", null, "["
+ assertQueryEquals("[ " + escapeDateString(startDate) + " TO " + escapeDateString(endDate) + "]", null, "["
+ getLegacyDate(startDate) + " TO "
+ DateField.dateToString(endDateExpected.getTime()) + "]");
- assertQueryEquals("{ " + startDate + " " + endDate + " }", null, "{"
+ assertQueryEquals("{ " + escapeDateString(startDate) + " " + escapeDateString(endDate) + " }", null, "{"
+ getLegacyDate(startDate) + " TO " + getLegacyDate(endDate) + "}");
}
public void testDateRange() throws Exception {
String startDate = getLocalizedDate(2002, 1, 1, false);
String endDate = getLocalizedDate(2002, 1, 4, false);
- Calendar endDateExpected = Calendar.getInstance();
+ Calendar endDateExpected = new GregorianCalendar();
endDateExpected.set(2002, 1, 4, 23, 59, 59);
endDateExpected.set(Calendar.MILLISECOND, 999);
final String defaultField = "default";
@@ -715,10 +734,10 @@
public void assertDateRangeQueryEquals(QueryParserWrapper qp, String field,
String startDate, String endDate, Date endDateInclusive,
DateTools.Resolution resolution) throws Exception {
- assertQueryEquals(qp, field, field + ":[" + startDate + " TO " + endDate
+ assertQueryEquals(qp, field, field + ":[" + escapeDateString(startDate) + " TO " + escapeDateString(endDate)
+ "]", "[" + getDate(startDate, resolution) + " TO "
+ getDate(endDateInclusive, resolution) + "]");
- assertQueryEquals(qp, field, field + ":{" + startDate + " TO " + endDate
+ assertQueryEquals(qp, field, field + ":{" + escapeDateString(startDate) + " TO " + escapeDateString(endDate)
+ "}", "{" + getDate(startDate, resolution) + " TO "
+ getDate(endDate, resolution) + "}");
}
@@ -1124,7 +1143,7 @@
int hour, int minute, int second, IndexWriter iw) throws IOException {
Document d = new Document();
d.add(new Field("f", content, Field.Store.YES, Field.Index.ANALYZED));
- Calendar cal = Calendar.getInstance();
+ Calendar cal = Calendar.getInstance(Locale.ENGLISH);
cal.set(year, month - 1, day, hour, minute, second);
d.add(new Field("date", DateField.dateToString(cal.getTime()),
Field.Store.YES, Field.Index.NOT_ANALYZED));
Modified: lucene/java/trunk/src/test/org/apache/lucene/document/TestDateTools.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/src/test/org/apache/lucene/document/TestDateTools.java?rev=807499&r1=807498&r2=807499&view=diff
==============================================================================
--- lucene/java/trunk/src/test/org/apache/lucene/document/TestDateTools.java (original)
+++ lucene/java/trunk/src/test/org/apache/lucene/document/TestDateTools.java Tue Aug 25 06:48:36 2009
@@ -4,9 +4,11 @@
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
+import java.util.GregorianCalendar;
import java.util.TimeZone;
import java.util.Locale;
+import org.apache.lucene.util.LocalizedTestCase;
import org.apache.lucene.util.LuceneTestCase;
/**
@@ -26,7 +28,7 @@
* limitations under the License.
*/
-public class TestDateTools extends LuceneTestCase {
+public class TestDateTools extends LocalizedTestCase {
public void testStringToDate() throws ParseException {
@@ -57,7 +59,7 @@
public void testStringtoTime() throws ParseException {
long time = DateTools.stringToTime("197001010000");
- Calendar cal = Calendar.getInstance();
+ Calendar cal = new GregorianCalendar();
cal.set(1970, 0, 1, // year=1970, month=january, day=1
0, 0, 0); // hour, minute, second
cal.set(Calendar.MILLISECOND, 0);
@@ -71,7 +73,7 @@
}
public void testDateAndTimetoString() throws ParseException {
- Calendar cal = Calendar.getInstance();
+ Calendar cal = new GregorianCalendar();
cal.setTimeZone(TimeZone.getTimeZone("GMT"));
cal.set(2004, 1, 3, // year=2004, month=february(!), day=3
22, 8, 56); // hour, minute, second
@@ -135,7 +137,7 @@
}
public void testRound() {
- Calendar cal = Calendar.getInstance();
+ Calendar cal = new GregorianCalendar();
cal.setTimeZone(TimeZone.getTimeZone("GMT"));
cal.set(2004, 1, 3, // year=2004, month=february(!), day=3
22, 8, 56); // hour, minute, second
Modified: lucene/java/trunk/src/test/org/apache/lucene/queryParser/TestQueryParser.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/src/test/org/apache/lucene/queryParser/TestQueryParser.java?rev=807499&r1=807498&r2=807499&view=diff
==============================================================================
--- lucene/java/trunk/src/test/org/apache/lucene/queryParser/TestQueryParser.java (original)
+++ lucene/java/trunk/src/test/org/apache/lucene/queryParser/TestQueryParser.java Tue Aug 25 06:48:36 2009
@@ -21,8 +21,10 @@
import java.io.Reader;
import java.text.Collator;
import java.text.DateFormat;
+import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
+import java.util.GregorianCalendar;
import java.util.HashSet;
import java.util.Locale;
import java.util.Set;
@@ -58,13 +60,21 @@
import org.apache.lucene.search.TermQuery;
import org.apache.lucene.search.WildcardQuery;
import org.apache.lucene.store.RAMDirectory;
-import org.apache.lucene.analysis.BaseTokenStreamTestCase;
+import org.apache.lucene.util.LocalizedTestCase;
/**
* Tests QueryParser.
*/
-public class TestQueryParser extends BaseTokenStreamTestCase {
+public class TestQueryParser extends LocalizedTestCase {
+ public TestQueryParser(String name) {
+ super(name, new HashSet(Arrays.asList(new String[]{
+ "testLegacyDateRange", "testDateRange",
+ "testCJK", "testNumber", "testFarsiRangeCollating",
+ "testLocalDateFormat"
+ })));
+ }
+
public static Analyzer qpAnalyzer = new QPTestAnalyzer();
public static class QPTestFilter extends TokenFilter {
@@ -495,6 +505,14 @@
is.close();
}
+ private String escapeDateString(String s) {
+ if (s.contains(" ")) {
+ return "\"" + s + "\"";
+ } else {
+ return s;
+ }
+ }
+
/** for testing legacy DateField support */
private String getLegacyDate(String s) throws Exception {
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);
@@ -518,7 +536,7 @@
private String getLocalizedDate(int year, int month, int day, boolean extendLastDate) {
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);
- Calendar calendar = Calendar.getInstance();
+ Calendar calendar = new GregorianCalendar();
calendar.set(year, month, day);
if (extendLastDate) {
calendar.set(Calendar.HOUR_OF_DAY, 23);
@@ -533,19 +551,19 @@
public void testLegacyDateRange() throws Exception {
String startDate = getLocalizedDate(2002, 1, 1, false);
String endDate = getLocalizedDate(2002, 1, 4, false);
- Calendar endDateExpected = Calendar.getInstance();
+ Calendar endDateExpected = new GregorianCalendar();
endDateExpected.set(2002, 1, 4, 23, 59, 59);
endDateExpected.set(Calendar.MILLISECOND, 999);
- assertQueryEquals("[ " + startDate + " TO " + endDate + "]", null,
+ assertQueryEquals("[ " + escapeDateString(startDate) + " TO " + escapeDateString(endDate) + "]", null,
"[" + getLegacyDate(startDate) + " TO " + DateField.dateToString(endDateExpected.getTime()) + "]");
- assertQueryEquals("{ " + startDate + " " + endDate + " }", null,
+ assertQueryEquals("{ " + escapeDateString(startDate) + " " + escapeDateString(endDate) + " }", null,
"{" + getLegacyDate(startDate) + " TO " + getLegacyDate(endDate) + "}");
}
public void testDateRange() throws Exception {
String startDate = getLocalizedDate(2002, 1, 1, false);
String endDate = getLocalizedDate(2002, 1, 4, false);
- Calendar endDateExpected = Calendar.getInstance();
+ Calendar endDateExpected = new GregorianCalendar();
endDateExpected.set(2002, 1, 4, 23, 59, 59);
endDateExpected.set(Calendar.MILLISECOND, 999);
final String defaultField = "default";
@@ -585,9 +603,9 @@
public void assertDateRangeQueryEquals(QueryParser qp, String field, String startDate, String endDate,
Date endDateInclusive, DateTools.Resolution resolution) throws Exception {
- assertQueryEquals(qp, field, field + ":[" + startDate + " TO " + endDate + "]",
+ assertQueryEquals(qp, field, field + ":[" + escapeDateString(startDate) + " TO " + escapeDateString(endDate) + "]",
"[" + getDate(startDate, resolution) + " TO " + getDate(endDateInclusive, resolution) + "]");
- assertQueryEquals(qp, field, field + ":{" + startDate + " TO " + endDate + "}",
+ assertQueryEquals(qp, field, field + ":{" + escapeDateString(startDate) + " TO " + escapeDateString(endDate) + "}",
"{" + getDate(startDate, resolution) + " TO " + getDate(endDate, resolution) + "}");
}
@@ -985,7 +1003,7 @@
int day, int hour, int minute, int second, IndexWriter iw) throws IOException {
Document d = new Document();
d.add(new Field("f", content, Field.Store.YES, Field.Index.ANALYZED));
- Calendar cal = Calendar.getInstance();
+ Calendar cal = Calendar.getInstance(Locale.ENGLISH);
cal.set(year, month-1, day, hour, minute, second);
d.add(new Field("date", DateField.dateToString(cal.getTime()), Field.Store.YES, Field.Index.NOT_ANALYZED));
iw.addDocument(d);