List of usage examples for org.apache.lucene.analysis MockAnalyzer MockAnalyzer
public MockAnalyzer(Random random, CharacterRunAutomaton runAutomaton, boolean lowerCase)
From source file:org.apache.solr.spelling.TestSuggestSpellingConverter.java
License:Apache License
public void testSimple() throws Exception { // lowercases only! converter.setAnalyzer(new MockAnalyzer(random(), MockTokenizer.KEYWORD, true)); assertConvertsTo("This is a test", new String[] { "this is a test" }); }
From source file:org.easynet.resource.queryparser.QueryParserTestBase.java
License:Apache License
public Query getQueryDOA(String query, Analyzer a) throws Exception { if (a == null) a = new MockAnalyzer(random(), MockTokenizer.SIMPLE, true); QueryParser qp = getParserConfig(a); setDefaultOperatorAND(qp);//ww w . j a v a 2 s . c o m return getQuery(query, qp); }
From source file:org.easynet.resource.queryparser.QueryParserTestBase.java
License:Apache License
public void testPunct() throws Exception { Analyzer a = new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false); assertQueryEquals("a&b", a, "a&b"); assertQueryEquals("a&&b", a, "a&&b"); assertQueryEquals(".NET", a, ".NET"); }
From source file:org.easynet.resource.queryparser.QueryParserTestBase.java
License:Apache License
public void testNumber() throws Exception { // The numbers go away because SimpleAnalzyer ignores them assertQueryEquals("3", null, ""); assertQueryEquals("term 1.0 1 2", null, "term"); assertQueryEquals("term term1 term2", null, "term term term"); Analyzer a = new MockAnalyzer(random(), MockTokenizer.WHITESPACE, true); assertQueryEquals("3", a, "3"); assertQueryEquals("term 1.0 1 2", a, "term 1.0 1 2"); assertQueryEquals("term term1 term2", a, "term term1 term2"); }
From source file:org.easynet.resource.queryparser.QueryParserTestBase.java
License:Apache License
public void testRange() throws Exception { assertQueryEquals("[ a TO z]", null, "[a TO z]"); assertQueryEquals("[ a TO z}", null, "[a TO z}"); assertQueryEquals("{ a TO z]", null, "{a TO z]"); assertEquals(MultiTermQuery.CONSTANT_SCORE_AUTO_REWRITE_DEFAULT, ((TermRangeQuery) getQuery("[ a TO z]")).getRewriteMethod()); QueryParser qp = getParserConfig(new MockAnalyzer(random(), MockTokenizer.SIMPLE, true)); qp.setMultiTermRewriteMethod(MultiTermQuery.SCORING_BOOLEAN_QUERY_REWRITE); assertEquals(MultiTermQuery.SCORING_BOOLEAN_QUERY_REWRITE, ((TermRangeQuery) getQuery("[ a TO z]", qp)).getRewriteMethod()); // test open ranges assertQueryEquals("[ a TO * ]", null, "[a TO *]"); assertQueryEquals("[ * TO z ]", null, "[* TO z]"); assertQueryEquals("[ * TO * ]", null, "[* TO *]"); // mixing exclude and include bounds assertQueryEquals("{ a TO z ]", null, "{a TO z]"); assertQueryEquals("[ a TO z }", null, "[a TO z}"); assertQueryEquals("{ a TO * ]", null, "{a TO *]"); assertQueryEquals("[ * TO z }", null, "[* TO z}"); assertQueryEquals("[ a TO z ]", null, "[a TO z]"); assertQueryEquals("{ a TO z}", null, "{a TO z}"); assertQueryEquals("{ a TO z }", null, "{a TO z}"); assertQueryEquals("{ a TO z }^2.0", null, "{a TO z}^2.0"); assertQueryEquals("[ a TO z] OR bar", null, "[a TO z] bar"); assertQueryEquals("[ a TO z] AND bar", null, "+[a TO z] +bar"); 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})"); assertQueryEquals("[* TO Z]", null, "[* TO z]"); assertQueryEquals("[A TO *]", null, "[a TO *]"); assertQueryEquals("[* TO *]", null, "[* TO *]"); }
From source file:org.easynet.resource.queryparser.QueryParserTestBase.java
License:Apache License
public void testDateRange() throws Exception { String startDate = getLocalizedDate(2002, 1, 1); String endDate = getLocalizedDate(2002, 1, 4); // we use the default Locale/TZ since LuceneTestCase randomizes it Calendar endDateExpected = new GregorianCalendar(TimeZone.getDefault(), Locale.getDefault()); endDateExpected.clear();//w w w . j a va 2 s . c o m endDateExpected.set(2002, 1, 4, 23, 59, 59); endDateExpected.set(Calendar.MILLISECOND, 999); final String defaultField = "default"; final String monthField = "month"; final String hourField = "hour"; Analyzer a = new MockAnalyzer(random(), MockTokenizer.SIMPLE, true); QueryParser qp = getParserConfig(a); // set a field specific date resolution setDateResolution(qp, monthField, DateTools.Resolution.MONTH); // set default date resolution to MILLISECOND qp.setDateResolution(DateTools.Resolution.MILLISECOND); // set second field specific date resolution setDateResolution(qp, hourField, DateTools.Resolution.HOUR); // for this field no field specific date resolution has been set, // so verify if the default resolution is used assertDateRangeQueryEquals(qp, defaultField, startDate, endDate, endDateExpected.getTime(), DateTools.Resolution.MILLISECOND); // verify if field specific date resolutions are used for these two // fields assertDateRangeQueryEquals(qp, monthField, startDate, endDate, endDateExpected.getTime(), DateTools.Resolution.MONTH); assertDateRangeQueryEquals(qp, hourField, startDate, endDate, endDateExpected.getTime(), DateTools.Resolution.HOUR); }
From source file:org.easynet.resource.queryparser.QueryParserTestBase.java
License:Apache License
public void testEscaped() throws Exception { Analyzer a = new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false); /*//w w w . j ava 2 s .c o m * assertQueryEquals("\\[brackets", a, "\\[brackets"); * assertQueryEquals("\\[brackets", null, "brackets"); * 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"); */ assertQueryEquals("\\a", a, "a"); assertQueryEquals("a\\-b:c", a, "a-b:c"); assertQueryEquals("a\\+b:c", a, "a+b:c"); assertQueryEquals("a\\:b:c", a, "a:b:c"); assertQueryEquals("a\\\\b:c", a, "a\\b:c"); assertQueryEquals("a:b\\-c", a, "a:b-c"); assertQueryEquals("a:b\\+c", a, "a:b+c"); assertQueryEquals("a:b\\:c", a, "a:b:c"); assertQueryEquals("a:b\\\\c", a, "a:b\\c"); assertQueryEquals("a:b\\-c*", a, "a:b-c*"); assertQueryEquals("a:b\\+c*", a, "a:b+c*"); assertQueryEquals("a:b\\:c*", a, "a:b:c*"); assertQueryEquals("a:b\\\\c*", a, "a:b\\c*"); assertQueryEquals("a:b\\-c~", a, "a:b-c~2"); assertQueryEquals("a:b\\+c~", a, "a:b+c~2"); assertQueryEquals("a:b\\:c~", a, "a:b:c~2"); assertQueryEquals("a:b\\\\c~", a, "a:b\\c~2"); assertQueryEquals("[ a\\- TO a\\+ ]", null, "[a- TO a+]"); assertQueryEquals("[ a\\: TO a\\~ ]", null, "[a: TO a~]"); assertQueryEquals("[ a\\\\ TO a\\* ]", null, "[a\\ TO a*]"); assertQueryEquals("[\"c\\:\\\\temp\\\\\\~foo0.txt\" TO \"c\\:\\\\temp\\\\\\~foo9.txt\"]", a, "[c:\\temp\\~foo0.txt TO c:\\temp\\~foo9.txt]"); assertQueryEquals("a\\\\\\+b", a, "a\\+b"); assertQueryEquals("a \\\"b c\\\" d", a, "a \"b c\" d"); assertQueryEquals("\"a \\\"b c\\\" d\"", a, "\"a \"b c\" d\""); assertQueryEquals("\"a \\+b c d\"", a, "\"a +b c d\""); assertQueryEquals("c\\:\\\\temp\\\\\\~foo.txt", a, "c:\\temp\\~foo.txt"); assertParseException("XY\\"); // there must be a character after the // escape char // test unicode escaping assertQueryEquals("a\\u0062c", a, "abc"); assertQueryEquals("XY\\u005a", a, "XYZ"); assertQueryEquals("XY\\u005A", a, "XYZ"); assertQueryEquals("\"a \\\\\\u0028\\u0062\\\" c\"", a, "\"a \\(b\" c\""); assertParseException("XY\\u005G"); // test non-hex character in escaped // unicode sequence assertParseException("XY\\u005"); // test incomplete escaped unicode // sequence // Tests bug LUCENE-800 assertQueryEquals("(item:\\\\ item:ABCD\\\\)", a, "item:\\ item:ABCD\\"); assertParseException("(item:\\\\ item:ABCD\\\\))"); // unmatched closing // paranthesis assertQueryEquals("\\*", a, "*"); assertQueryEquals("\\\\", a, "\\"); // escaped backslash assertParseException("\\"); // a backslash must always be escaped // LUCENE-1189 assertQueryEquals("(\"a\\\\\") or (\"b\")", a, "a\\ or b"); }
From source file:org.easynet.resource.queryparser.QueryParserTestBase.java
License:Apache License
public void testEscapedVsQuestionMarkAsWildcard() throws Exception { Analyzer a = new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false); assertQueryEquals("a:b\\-?c", a, "a:b\\-?c"); assertQueryEquals("a:b\\+?c", a, "a:b\\+?c"); assertQueryEquals("a:b\\:?c", a, "a:b\\:?c"); assertQueryEquals("a:b\\\\?c", a, "a:b\\\\?c"); }
From source file:org.easynet.resource.queryparser.QueryParserTestBase.java
License:Apache License
public void testBooleanQuery() throws Exception { BooleanQuery.setMaxClauseCount(2);//from w w w . j a v a 2 s. co m Analyzer purWhitespaceAnalyzer = new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false); assertParseException("one two three", purWhitespaceAnalyzer); }
From source file:org.easynet.resource.queryparser.QueryParserTestBase.java
License:Apache License
/** * This test differs from TestPrecedenceQueryParser */// w ww. java2 s . c om public void testPrecedence() throws Exception { QueryParser qp = getParserConfig(new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false)); Query query1 = getQuery("A AND B OR C AND D", qp); Query query2 = getQuery("+A +B +C +D", qp); assertEquals(query1, query2); }