ehatcher    2003/11/26 03:03:30

  Modified:    src/test/org/apache/lucene/queryParser TestQueryParser.java
  Log:
  new QueryParser tests
  
  Revision  Changes    Path
  1.23      +50 -2     
jakarta-lucene/src/test/org/apache/lucene/queryParser/TestQueryParser.java
  
  Index: TestQueryParser.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-lucene/src/test/org/apache/lucene/queryParser/TestQueryParser.java,v
  retrieving revision 1.22
  retrieving revision 1.23
  diff -u -r1.22 -r1.23
  --- TestQueryParser.java      30 Sep 2003 04:41:02 -0000      1.22
  +++ TestQueryParser.java      26 Nov 2003 11:03:30 -0000      1.23
  @@ -79,8 +79,6 @@
   
   /**
    * Tests QueryParser.
  - *
  - * @version $Id$
    */
   public class TestQueryParser extends TestCase {
   
  @@ -138,6 +136,12 @@
       }
     }
   
  +  private int originalMaxClauses;
  +
  +  public void setUp() {
  +    originalMaxClauses = BooleanQuery.getMaxClauseCount();
  +  }
  +
     public QueryParser getParser(Analyzer a) throws Exception {
       if (a == null)
         a = new SimpleAnalyzer();
  @@ -356,6 +360,25 @@
       assertQueryEquals("\\\\", a, "\\\\");
       assertQueryEquals("\\+blah", a, "\\+blah");
       assertQueryEquals("\\(blah", a, "\\(blah");
  +
  +    assertQueryEquals("\\-blah", a, "\\-blah");
  +    assertQueryEquals("\\!blah", a, "\\!blah");
  +    assertQueryEquals("\\{blah", a, "\\{blah");
  +    assertQueryEquals("\\}blah", a, "\\}blah");
  +    assertQueryEquals("\\:blah", a, "\\:blah");
  +    assertQueryEquals("\\^blah", a, "\\^blah");
  +    assertQueryEquals("\\[blah", a, "\\[blah");
  +    assertQueryEquals("\\]blah", a, "\\]blah");
  +    assertQueryEquals("\\\"blah", a, "\\\"blah");
  +    assertQueryEquals("\\(blah", a, "\\(blah");
  +    assertQueryEquals("\\)blah", a, "\\)blah");
  +    assertQueryEquals("\\~blah", a, "\\~blah");
  +    assertQueryEquals("\\*blah", a, "\\*blah");
  +    assertQueryEquals("\\?blah", a, "\\?blah");
  +    assertQueryEquals("foo \\&& bar", a, "foo \\&& bar");
  +    assertQueryEquals("foo \\|| bar", a, "foo \\|| bar");
  +    assertQueryEquals("foo \\AND bar", a, "foo \\AND bar");
  +
     }
   
     public void testSimpleDAO()
  @@ -381,6 +404,17 @@
       assertEquals(q.getBoost(), (float) 2.0, (float) 0.5);
       q = qp.parse("\"on\"^1.0");
       assertNotNull(q);
  +
  +    q = QueryParser.parse("the^3", "field", new StandardAnalyzer());
  +    assertNotNull(q);
  +  }
  +
  +  public void testException() throws Exception {
  +    try {
  +      assertQueryEquals("\"some phrase", null, "abc");
  +      fail("ParseException expected, not thrown");
  +    } catch (ParseException expected) {
  +    }
     }
   
     public void testCustomQueryParserWildcard() {
  @@ -399,6 +433,20 @@
         return;
       }
       fail("Fuzzy queries should not be allowed");
  +  }
  +
  +  public void testBooleanQuery() throws Exception {
  +    BooleanQuery.setMaxClauseCount(2);
  +    try {
  +      QueryParser.parse("one two three", "field", new WhitespaceAnalyzer());
  +      fail("ParseException expected due to too many boolean clauses");
  +    } catch (ParseException expected) {
  +      // too many boolean clauses, so ParseException is expected
  +    }
  +  }
  +
  +  public void tearDown() {
  +    BooleanQuery.setMaxClauseCount(originalMaxClauses);
     }
   
   }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to