Class BaseSegmentInfoFormatTestCase


public abstract class BaseSegmentInfoFormatTestCase extends BaseIndexFileFormatTestCase
Abstract class to do basic tests for si format. NOTE: This test focuses on the si impl, nothing else. The [stretch] goal is for this test to be so thorough in testing a new si format that if this test passes, then all Lucene tests should also pass. Ie, if there is some bug in a given si Format that this test fails to catch then this test needs to be improved!
  • Constructor Details

    • BaseSegmentInfoFormatTestCase

      public BaseSegmentInfoFormatTestCase()
  • Method Details

    • supportsMinVersion

      protected boolean supportsMinVersion()
      Whether this format records min versions.
    • testFiles

      public void testFiles() throws Exception
      Test files map
      Throws:
      Exception
    • testHasBlocks

      public void testHasBlocks() throws IOException
      Throws:
      IOException
    • testAddsSelfToFiles

      public void testAddsSelfToFiles() throws Exception
      Tests SI writer adds itself to files...
      Throws:
      Exception
    • testDiagnostics

      public void testDiagnostics() throws Exception
      Test diagnostics map
      Throws:
      Exception
    • testAttributes

      public void testAttributes() throws Exception
      Test attributes map
      Throws:
      Exception
    • testUniqueID

      public void testUniqueID() throws Exception
      Test unique ID
      Throws:
      Exception
    • testVersions

      public void testVersions() throws Exception
      Test versions
      Throws:
      Exception
    • supportsIndexSort

      protected boolean supportsIndexSort()
    • supportsHasBlocks

      protected boolean supportsHasBlocks()
    • testSort

      public void testSort() throws IOException
      Test sort
      Throws:
      IOException
    • testExceptionOnCreateOutput

      public void testExceptionOnCreateOutput() throws Exception
      Test segment infos write that hits exception immediately on open. make sure we get our exception back, no file handle leaks, etc.
      Throws:
      Exception
    • testExceptionOnCloseOutput

      public void testExceptionOnCloseOutput() throws Exception
      Test segment infos write that hits exception on close. make sure we get our exception back, no file handle leaks, etc.
      Throws:
      Exception
    • testExceptionOnOpenInput

      public void testExceptionOnOpenInput() throws Exception
      Test segment infos read that hits exception immediately on open. make sure we get our exception back, no file handle leaks, etc.
      Throws:
      Exception
    • testExceptionOnCloseInput

      public void testExceptionOnCloseInput() throws Exception
      Test segment infos read that hits exception on close make sure we get our exception back, no file handle leaks, etc.
      Throws:
      Exception
    • testRandom

      public void testRandom() throws Exception
      Sets some otherwise hard-to-test properties: random segment names, ID values, document count, etc and round-trips
      Throws:
      Exception
    • assertEquals

      protected final void assertEquals(SegmentInfo expected, SegmentInfo actual)
    • getVersions

      protected abstract Version[] getVersions()
      Returns the versions this SI should test
    • addRandomFields

      protected void addRandomFields(Document doc)
      Description copied from class: BaseIndexFileFormatTestCase
      Add random fields to the provided document.
      Specified by:
      addRandomFields in class BaseIndexFileFormatTestCase