public void testGetQueryPrefix() { try { StringSearchFacet.SubClause testClause = testInstance .new SubClause("dummy value here", StringSearchFacet.SearchTarget.TEXT, true, true); // no field returns no prefix assertEquals("", testClause.getQueryPrefix(StringSearchFacet.SearchHandler.DEFAULT, null)); // REGEXP search handler returns appropriately formatted prefix assertEquals( "{!regexp cache=false qf=\"untokenized_ia\"}", testClause.getQueryPrefix( StringSearchFacet.SearchHandler.REGEXP, SolrField.untokenized_ia)); // SURROUND search handler returns appropriately formatted prefix assertEquals( "{!surround cache=false}transcription_ic:", testClause.getQueryPrefix( StringSearchFacet.SearchHandler.SURROUND, SolrField.transcription_ic)); // DEFAULT search handler simply returns field name followed by colon assertEquals( "transcription_ngram_ia:", testClause.getQueryPrefix( StringSearchFacet.SearchHandler.DEFAULT, SolrField.transcription_ngram_ia)); } catch (StringSearchParsingException sspe) { fail( "StringSearchParsingException erroneously thrown on getQueryPrefix test: " + sspe.getMessage()); } catch (Exception e) { fail("Exception erroneously thrown in getQueryPrefix test:" + e.getMessage()); } }