Index: contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQPHelper.java =================================================================== --- contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQPHelper.java (revision 801934) +++ contrib/queryparser/src/test/org/apache/lucene/queryParser/standard/TestQPHelper.java (working copy) @@ -301,6 +301,29 @@ } } + public void testConstantScoring() throws Exception { + StandardQueryParser qp = new StandardQueryParser(new WhitespaceAnalyzer()); + Query q = qp.parse("foo*bar", "field"); + assertTrue(q instanceof WildcardQuery); + assertEquals(MultiTermQuery.CONSTANT_SCORE_FILTER_REWRITE, ((MultiTermQuery) q).getRewriteMethod()); + + q = qp.parse("foo*", "field"); + assertTrue(q instanceof PrefixQuery); + assertEquals(MultiTermQuery.CONSTANT_SCORE_FILTER_REWRITE, ((MultiTermQuery) q).getRewriteMethod()); + + q = qp.parse("foo~0.7", "field"); + assertTrue(q instanceof FuzzyQuery); + assertEquals(MultiTermQuery.CONSTANT_SCORE_FILTER_REWRITE, ((MultiTermQuery) q).getRewriteMethod()); + + // generates spooky exception trying to build the + // message localized to en_US + q = qp.parse("foo~2", "field"); + + q = qp.parse("[a TO z]", "field"); + assertTrue(q instanceof TermRangeQuery); + assertEquals(MultiTermQuery.CONSTANT_SCORE_FILTER_REWRITE, ((MultiTermQuery) q).getRewriteMethod()); + } + public void testCJK() throws Exception { // Test Ideographic Space - As wide as a CJK character cell (fullwidth) // used google to translate the word "term" to japanese -> ??