Author: ehatcher
Date: Mon Mar 7 13:46:39 2005
New Revision: 156449
URL: http://svn.apache.org/viewcvs?view=rev&rev=156449
Log:
Fix broken QueryParser.jj and generated code. Removed inadvertent debugging
<echo> from build.xml.
Added (currently failing) test cases for new PrecedenceQueryParser as a target
for enhancement.
Modified:
lucene/java/trunk/build.xml
lucene/java/trunk/src/java/org/apache/lucene/queryParser/QueryParser.java
lucene/java/trunk/src/java/org/apache/lucene/queryParser/QueryParser.jj
lucene/java/trunk/src/test/org/apache/lucene/queryParser/precedence/TestPrecedenceQueryParser.java
Modified: lucene/java/trunk/build.xml
URL:
http://svn.apache.org/viewcvs/lucene/java/trunk/build.xml?view=diff&r1=156448&r2=156449
==============================================================================
--- lucene/java/trunk/build.xml (original)
+++ lucene/java/trunk/build.xml Mon Mar 7 13:46:39 2005
@@ -97,7 +97,6 @@
<srcfiles dir="src" includes="**/*.jj" />
<mapper type="glob" from="*.jj" to="*.java"/>
</uptodate>
- <echo>${javacc.files.uptodate}</echo>
</target>
<target name="javacc-notice" unless="javacc.files.uptodate">
Modified:
lucene/java/trunk/src/java/org/apache/lucene/queryParser/QueryParser.java
URL:
http://svn.apache.org/viewcvs/lucene/java/trunk/src/java/org/apache/lucene/queryParser/QueryParser.java?view=diff&r1=156448&r2=156449
==============================================================================
--- lucene/java/trunk/src/java/org/apache/lucene/queryParser/QueryParser.java
(original)
+++ lucene/java/trunk/src/java/org/apache/lucene/queryParser/QueryParser.java
Mon Mar 7 13:46:39 2005
@@ -524,6 +524,7 @@
protected Query getBooleanQuery(Vector clauses) throws ParseException {
return getBooleanQuery(clauses, false);
}
+
/**
* Factory method for generating query, given a set of clauses.
* By default creates a boolean query composed of clauses passed in.
Modified:
lucene/java/trunk/src/java/org/apache/lucene/queryParser/QueryParser.jj
URL:
http://svn.apache.org/viewcvs/lucene/java/trunk/src/java/org/apache/lucene/queryParser/QueryParser.jj?view=diff&r1=156448&r2=156449
==============================================================================
--- lucene/java/trunk/src/java/org/apache/lucene/queryParser/QueryParser.jj
(original)
+++ lucene/java/trunk/src/java/org/apache/lucene/queryParser/QueryParser.jj Mon
Mar 7 13:46:39 2005
@@ -545,8 +545,9 @@
* @exception ParseException throw in overridden method to disallow
*/
protected Query getBooleanQuery(Vector clauses) throws ParseException {
- getBooleanQuery(clauses, false);
+ return getBooleanQuery(clauses, false);
}
+
/**
* Factory method for generating query, given a set of clauses.
* By default creates a boolean query composed of clauses passed in.
Modified:
lucene/java/trunk/src/test/org/apache/lucene/queryParser/precedence/TestPrecedenceQueryParser.java
URL:
http://svn.apache.org/viewcvs/lucene/java/trunk/src/test/org/apache/lucene/queryParser/precedence/TestPrecedenceQueryParser.java?view=diff&r1=156448&r2=156449
==============================================================================
---
lucene/java/trunk/src/test/org/apache/lucene/queryParser/precedence/TestPrecedenceQueryParser.java
(original)
+++
lucene/java/trunk/src/test/org/apache/lucene/queryParser/precedence/TestPrecedenceQueryParser.java
Mon Mar 7 13:46:39 2005
@@ -170,6 +170,8 @@
assertQueryEquals("tÃÂrm term term", null, "tÃÂrm term term");
assertQueryEquals("ÃÂmlaut", null, "ÃÂmlaut");
+ assertQueryEquals("+a", null, "+a");
+ assertQueryEquals("-a", null, "-a");
assertQueryEquals("a AND b", null, "+a +b");
assertQueryEquals("(a AND b)", null, "+a +b");
assertQueryEquals("c OR (a AND b)", null, "c (+a +b)");
@@ -325,6 +327,7 @@
assertQueryEquals("term AND NOT phrase term", qpAnalyzer,
"(+term -\"phrase1 phrase2\") term");
assertQueryEquals("stop", qpAnalyzer, "");
+ assertQueryEquals("stop OR stop AND stop", qpAnalyzer, "");
assertTrue(getQuery("term term term", qpAnalyzer) instanceof BooleanQuery);
assertTrue(getQuery("term +stop", qpAnalyzer) instanceof TermQuery);
}
@@ -530,11 +533,9 @@
Query query1 = PrecedenceQueryParser.parse("A AND B OR C AND D", "field",
new WhitespaceAnalyzer());
Query query2 = PrecedenceQueryParser.parse("(A AND B) OR (C AND D)",
"field", new WhitespaceAnalyzer());
assertEquals(query1, query2);
- }
- public void testPrecedenceWithNot() throws Exception {
- Query query1 = PrecedenceQueryParser.parse("A OR B C", "field", new
WhitespaceAnalyzer());
- Query query2 = PrecedenceQueryParser.parse("A B C", "field", new
WhitespaceAnalyzer());
+ query1 = PrecedenceQueryParser.parse("A OR B C", "field", new
WhitespaceAnalyzer());
+ query2 = PrecedenceQueryParser.parse("A B C", "field", new
WhitespaceAnalyzer());
assertEquals(query1, query2);
query1 = PrecedenceQueryParser.parse("A AND B C", "field", new
WhitespaceAnalyzer());
@@ -548,8 +549,11 @@
query1 = PrecedenceQueryParser.parse("A OR NOT B", "field", new
WhitespaceAnalyzer());
query2 = PrecedenceQueryParser.parse("A -B", "field", new
WhitespaceAnalyzer());
assertEquals(query1, query2);
- }
+ query1 = PrecedenceQueryParser.parse("A OR NOT B AND C", "field", new
WhitespaceAnalyzer());
+ query2 = PrecedenceQueryParser.parse("A (-B +C)", "field", new
WhitespaceAnalyzer());
+ assertEquals(query1, query2);
+ }
public void tearDown() {