Class BasePointsFormatTestCase


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

      • BasePointsFormatTestCase

        public BasePointsFormatTestCase()
    • Method Detail

      • addRandomFields

        protected void addRandomFields​(Document doc)
        Add random fields to the provided document.
      • testAllPointDocsDeletedInSegment

        public void testAllPointDocsDeletedInSegment()
                                              throws Exception
        Throws:
        Exception
      • testWithExceptions

        public void testWithExceptions()
                                throws Exception
        Make sure we close open files, delete temp files, etc., on exception
        Throws:
        Exception
      • testOneDimTwoValues

        public void testOneDimTwoValues()
                                 throws Exception
        Throws:
        Exception
      • testRandomBinaryTiny

        public void testRandomBinaryTiny()
                                  throws Exception
        Throws:
        Exception
      • testRandomBinaryMedium

        public void testRandomBinaryMedium()
                                    throws Exception
        Throws:
        Exception
      • mergeIsStable

        protected boolean mergeIsStable()
      • testDocCountEdgeCases

        public void testDocCountEdgeCases()
      • testRandomDocCount

        public void testRandomDocCount()
      • getCodec

        protected abstract Codec getCodec()
        Returns the codec to run tests against
      • getCreatedVersionMajor

        protected int getCreatedVersionMajor()
        Returns the major version that this codec is compatible with.
      • applyCreatedVersionMajor

        protected final <D extends Directory> D applyCreatedVersionMajor​(D d)
                                                                  throws IOException
        Set the created version of the given Directory and return it.
        Throws:
        IOException
      • excludedExtensionsFromByteCounts

        protected Collection<String> excludedExtensionsFromByteCounts()
        Return the list of extensions that should be excluded from byte counts when comparing indices that store the same content.
      • testMergeStability

        public void testMergeStability()
                                throws Exception
        The purpose of this test is to make sure that bulk merge doesn't accumulate useless data over runs.
        Throws:
        Exception
      • testMultiClose

        public void testMultiClose()
                            throws IOException
        Calls close multiple times on closeable codec apis
        Throws:
        IOException
      • testRandomExceptions

        public void testRandomExceptions()
                                  throws Exception
        Tests exception handling on write and openInput/createOutput
        Throws:
        Exception
      • shouldTestMergeInstance

        protected boolean shouldTestMergeInstance()
        Returns false if only the regular fields reader should be tested, and true if only the merge instance should be tested.
      • testCheckIntegrityReadsAllBytes

        public void testCheckIntegrityReadsAllBytes()
                                             throws Exception
        This test is a best effort at verifying that checkIntegrity doesn't miss any files. It tests that the combination of opening a reader and calling checkIntegrity on it reads all bytes of all files.
        Throws:
        Exception