org.apache.lucene.search
Class SearchEquivalenceTestBase

java.lang.Object
  extended by org.junit.Assert
      extended by org.apache.lucene.util.LuceneTestCase
          extended by org.apache.lucene.search.SearchEquivalenceTestBase

public abstract class SearchEquivalenceTestBase
extends LuceneTestCase

Simple base class for checking search equivalence. Extend it, and write tests that create randomTerm()s (all terms are single characters a-z), and use assertSameSet(Query, Query) and assertSubsetOf(Query, Query)


Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.lucene.util.LuceneTestCase
LuceneTestCase.AwaitsFix, LuceneTestCase.BadApple, LuceneTestCase.Nightly, LuceneTestCase.Slow, LuceneTestCase.SuppressCodecs, LuceneTestCase.Weekly
 
Field Summary
protected static Analyzer analyzer
           
protected static Directory directory
           
protected static IndexReader reader
           
protected static IndexSearcher s1
           
protected static IndexSearcher s2
           
protected static String stopword
           
 
Fields inherited from class org.apache.lucene.util.LuceneTestCase
classRules, DEFAULT_LINE_DOCS_FILE, doesntSupportOffsets, INFOSTREAM, JENKINS_LARGE_LINE_DOCS_FILE, OLD_FORMAT_IMPERSONATION_IS_ACTIVE, PREFLEX_IMPERSONATION_IS_ACTIVE, RANDOM_MULTIPLIER, ruleChain, suiteFailureMarker, SYSPROP_AWAITSFIX, SYSPROP_BADAPPLES, SYSPROP_FAILFAST, SYSPROP_MAXFAILURES, SYSPROP_NIGHTLY, SYSPROP_SLOW, SYSPROP_WEEKLY, TEMP_DIR, TEST_AWAITSFIX, TEST_CODEC, TEST_DIRECTORY, TEST_DOCVALUESFORMAT, TEST_LINE_DOCS_FILE, TEST_NIGHTLY, TEST_POSTINGSFORMAT, TEST_SLOW, TEST_THROTTLING, TEST_VERSION_CURRENT, TEST_WEEKLY, VERBOSE
 
Constructor Summary
SearchEquivalenceTestBase()
           
 
Method Summary
static void afterClass()
           
 void assertSameSet(Query q1, Query q2)
          Asserts that the documents returned by q1 are the same as of those returned by q2
 void assertSubsetOf(Query q1, Query q2)
          Asserts that the documents returned by q1 are a subset of those returned by q2
protected  void assertSubsetOf(Query q1, Query q2, Filter filter)
          Asserts that the documents returned by q1 are a subset of those returned by q2.
static void beforeClass()
           
protected  Filter randomFilter()
          Returns a random filter over the document set
protected  Term randomTerm()
          returns a term suitable for searching.
 
Methods inherited from class org.apache.lucene.util.LuceneTestCase
assertDeletedDocsEquals, assertDocsAndPositionsEnumEquals, assertDocsEnumEquals, assertDocsSkippingEquals, assertDocValuesEquals, assertDocValuesEquals, assertFieldInfosEquals, assertFieldsEquals, assertFieldStatisticsEquals, assertNormsEquals, assertPositionsSkippingEquals, assertReaderEquals, assertReaderStatisticsEquals, assertSaneFieldCaches, assertStoredFieldEquals, assertStoredFieldsEquals, assertTermsEnumEquals, assertTermsEquals, assertTermsStatisticsEquals, assertTermStatsEquals, assertTermVectorsEquals, asSet, assumeFalse, assumeNoException, assumeTrue, atLeast, atLeast, closeAfterSuite, closeAfterTest, defaultCodecSupportsDocsWithField, defaultCodecSupportsDocValues, defaultCodecSupportsSortedSet, dumpArray, dumpIterator, getDataFile, getOnlySegmentReader, getTestClass, getTestName, isTestThread, localeForName, maybeWrapReader, newAlcoholicMergePolicy, newAlcoholicMergePolicy, newDirectory, newDirectory, newDirectory, newDirectory, newField, newField, newFSDirectory, newFSDirectory, newIndexWriterConfig, newIndexWriterConfig, newIOContext, newIOContext, newLogMergePolicy, newLogMergePolicy, newLogMergePolicy, newLogMergePolicy, newLogMergePolicy, newMergePolicy, newMergePolicy, newMockDirectory, newMockDirectory, newMockFSDirectory, newSearcher, newSearcher, newStringField, newStringField, newTextField, newTextField, newTieredMergePolicy, newTieredMergePolicy, random, randomLocale, randomTimeZone, rarely, rarely, replaceMaxFailureRule, setUp, tearDown, usually, usually
 
Methods inherited from class org.junit.Assert
assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertThat, assertThat, assertTrue, assertTrue, fail, fail
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

s1

protected static IndexSearcher s1

s2

protected static IndexSearcher s2

directory

protected static Directory directory

reader

protected static IndexReader reader

analyzer

protected static Analyzer analyzer

stopword

protected static String stopword
Constructor Detail

SearchEquivalenceTestBase

public SearchEquivalenceTestBase()
Method Detail

beforeClass

public static void beforeClass()
                        throws Exception
Throws:
Exception

afterClass

public static void afterClass()
                       throws Exception
Throws:
Exception

randomTerm

protected Term randomTerm()
returns a term suitable for searching. terms are single characters in lowercase (a-z)


randomFilter

protected Filter randomFilter()
Returns a random filter over the document set


assertSameSet

public void assertSameSet(Query q1,
                          Query q2)
                   throws Exception
Asserts that the documents returned by q1 are the same as of those returned by q2

Throws:
Exception

assertSubsetOf

public void assertSubsetOf(Query q1,
                           Query q2)
                    throws Exception
Asserts that the documents returned by q1 are a subset of those returned by q2

Throws:
Exception

assertSubsetOf

protected void assertSubsetOf(Query q1,
                              Query q2,
                              Filter filter)
                       throws Exception
Asserts that the documents returned by q1 are a subset of those returned by q2. Both queries will be filtered by filter

Throws:
Exception


Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.