Package org.apache.lucene.tests.index
Class BaseNormsFormatTestCase
- java.lang.Object
-
- org.junit.Assert
-
- org.apache.lucene.tests.util.LuceneTestCase
-
- org.apache.lucene.tests.index.BaseNormsFormatTestCase
-
public abstract class BaseNormsFormatTestCase extends LuceneTestCase
Abstract class to do basic tests for a norms format. NOTE: This test focuses on the norms impl, nothing else. The [stretch] goal is for this test to be so thorough in testing a new NormsFormat that if this test passes, then all Lucene/Solr tests should also pass. Ie, if there is some bug in a given NormsFormat that this test fails to catch then this test needs to be improved!
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.lucene.tests.util.LuceneTestCase
LuceneTestCase.AwaitsFix, LuceneTestCase.BadApple, LuceneTestCase.Monster, LuceneTestCase.Nightly, LuceneTestCase.SuppressCodecs, LuceneTestCase.SuppressFileSystems, LuceneTestCase.SuppressFsync, LuceneTestCase.SuppressReproduceLine, LuceneTestCase.SuppressSysoutChecks, LuceneTestCase.SuppressTempFileChecks, LuceneTestCase.ThrowingConsumer<T>, LuceneTestCase.ThrowingRunnable, LuceneTestCase.Weekly
-
-
Field Summary
-
Fields inherited from class org.apache.lucene.tests.util.LuceneTestCase
assertsAreEnabled, classRules, DEFAULT_LINE_DOCS_FILE, INFOSTREAM, JENKINS_LARGE_LINE_DOCS_FILE, LEAVE_TEMPORARY, MAYBE_CACHE_POLICY, RANDOM_MULTIPLIER, ruleChain, suiteFailureMarker, SYSPROP_AWAITSFIX, SYSPROP_BADAPPLES, SYSPROP_FAILFAST, SYSPROP_MAXFAILURES, SYSPROP_MONSTER, SYSPROP_NIGHTLY, SYSPROP_WEEKLY, TEST_ASSERTS_ENABLED, TEST_AWAITSFIX, TEST_BADAPPLES, TEST_CODEC, TEST_DIRECTORY, TEST_DOCVALUESFORMAT, TEST_LINE_DOCS_FILE, TEST_MONSTER, TEST_NIGHTLY, TEST_POSTINGSFORMAT, TEST_THROTTLING, TEST_WEEKLY, VERBOSE
-
-
Constructor Summary
Constructors Constructor Description BaseNormsFormatTestCase()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
addRandomFields(Document doc)
Add random fields to the provided document.protected <D extends Directory>
DapplyCreatedVersionMajor(D d)
Set the created version of the givenDirectory
and return it.protected boolean
codecSupportsSparsity()
Whether the codec supports sparse values.protected Collection<String>
excludedExtensionsFromByteCounts()
Return the list of extensions that should be excluded from byte counts when comparing indices that store the same content.protected abstract Codec
getCodec()
Returns the codec to run tests againstprotected int
getCreatedVersionMajor()
Returns the major version that this codec is compatible with.protected DirectoryReader
maybeWrapWithMergingReader(DirectoryReader r)
protected boolean
mergeIsStable()
void
setUp()
For subclasses to override.protected boolean
shouldTestMergeInstance()
Returnsfalse
if only the regular fields reader should be tested, andtrue
if only the merge instance should be tested.void
tearDown()
For subclasses to override.void
testAllZeros()
void
testByteRange()
void
testCheckIntegrityReadsAllBytes()
This test is a best effort at verifying that checkIntegrity doesn't miss any files.void
testFewLargeValues()
void
testFewSparseLargeValues()
void
testFewSparseValues()
void
testFewValues()
void
testFullLongRange()
void
testIndependantIterators()
void
testIndependantSparseIterators()
void
testLongRange()
void
testMergeStability()
The purpose of this test is to make sure that bulk merge doesn't accumulate useless data over runs.void
testMostZeros()
void
testMultiClose()
Calls close multiple times on closeable codec apisvoid
testNCommon()
void
testNCommonBig()
a more thorough n-common that tests all low bpvvoid
testOutliers()
void
testOutliers2()
void
testRandomExceptions()
Tests exception handling on write and openInput/createOutputvoid
testShortRange()
void
testSparseAllZeros()
void
testSparseByteRange()
void
testSparseFullLongRange()
void
testSparseLongRange()
void
testSparseNCommon()
void
testSparseNCommonBig()
a more thorough n-common that tests all low bpv and sparse docsvoid
testSparseOutliers()
void
testSparseOutliers2()
void
testSparseShortRange()
void
testThreads()
void
testUndeadNorms()
-
Methods inherited from class org.apache.lucene.tests.util.LuceneTestCase
addVirusChecker, assertDeletedDocsEquals, assertDocsAndPositionsEnumEquals, assertDocsEnumEquals, assertDocsSkippingEquals, assertDocValuesEquals, assertDocValuesEquals, assertFieldInfosEquals, assertNormsEquals, assertPointsEquals, assertPositionsSkippingEquals, assertReaderEquals, assertReaderStatisticsEquals, assertStoredFieldEquals, assertStoredFieldsEquals, assertTermsEnumEquals, assertTermsEquals, assertTermsEquals, assertTermsStatisticsEquals, assertTermStatsEquals, assertTermVectorsEquals, asSet, assumeFalse, assumeNoException, assumeTrue, assumeWorkingMMapOnWindows, atLeast, atLeast, callStackContains, callStackContains, callStackContainsAnyOf, closeAfterSuite, closeAfterTest, collate, createTempDir, createTempDir, createTempFile, createTempFile, dumpArray, dumpIterator, ensureSaneIWCOnNightly, expectThrows, expectThrows, expectThrows, expectThrowsAnyOf, expectThrowsAnyOf, getDataInputStream, getDataPath, getJvmForkArguments, getOnlyLeafReader, getTestClass, getTestName, hasWorkingMMapOnWindows, isTestThread, localeForLanguageTag, maybeChangeLiveIndexWriterConfig, maybeWrapReader, newAlcoholicMergePolicy, newAlcoholicMergePolicy, newBytesRef, newBytesRef, newBytesRef, newBytesRef, newBytesRef, newBytesRef, newDirectory, newDirectory, newDirectory, newDirectory, newDirectory, newField, newField, newFSDirectory, newFSDirectory, newIndexWriterConfig, newIndexWriterConfig, newIndexWriterConfig, newIOContext, newIOContext, newLogMergePolicy, newLogMergePolicy, newLogMergePolicy, newLogMergePolicy, newLogMergePolicy, newMaybeVirusCheckingDirectory, newMaybeVirusCheckingFSDirectory, newMergePolicy, newMergePolicy, newMergePolicy, newMockDirectory, newMockDirectory, newMockDirectory, newMockFSDirectory, newMockFSDirectory, newSearcher, newSearcher, newSearcher, newSearcher, newSnapshotIndexWriterConfig, newStringField, newStringField, newStringField, newStringField, newTextField, newTextField, newTieredMergePolicy, newTieredMergePolicy, overrideDefaultQueryCache, overrideTestDefaultQueryCache, random, randomLocale, randomTimeZone, rarely, rarely, replaceMaxFailureRule, resetDefaultQueryCache, restoreCPUCoreCount, restoreIndexWriterMaxDocs, runWithRestrictedPermissions, setIndexWriterMaxDocs, setupCPUCoreCount, setUpExecutorService, shutdownExecutorService, slowFileExists, usually, usually, wrapReader
-
Methods inherited from class org.junit.Assert
assertArrayEquals, assertArrayEquals, 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, assertEquals, assertEquals, assertFalse, assertFalse, assertNotEquals, assertNotEquals, assertNotEquals, assertNotEquals, assertNotEquals, assertNotEquals, assertNotEquals, assertNotEquals, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertThat, assertThat, assertThrows, assertThrows, assertTrue, assertTrue, fail, fail
-
-
-
-
Method Detail
-
codecSupportsSparsity
protected boolean codecSupportsSparsity()
Whether the codec supports sparse values.
-
testNCommonBig
@Nightly public void testNCommonBig() throws Exception
a more thorough n-common that tests all low bpv- Throws:
Exception
-
testSparseNCommonBig
@Nightly public void testSparseNCommonBig() throws Exception
a more thorough n-common that tests all low bpv and sparse docs- Throws:
Exception
-
addRandomFields
protected void addRandomFields(Document doc)
Add random fields to the provided document.
-
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
-
testIndependantIterators
public void testIndependantIterators() throws IOException
- Throws:
IOException
-
testIndependantSparseIterators
public void testIndependantSparseIterators() throws IOException
- Throws:
IOException
-
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 givenDirectory
and return it.- Throws:
IOException
-
setUp
public void setUp() throws Exception
Description copied from class:LuceneTestCase
For subclasses to override. Overrides must callsuper.setUp()
.- Overrides:
setUp
in classLuceneTestCase
- Throws:
Exception
-
tearDown
public void tearDown() throws Exception
Description copied from class:LuceneTestCase
For subclasses to override. Overrides must callsuper.tearDown()
.- Overrides:
tearDown
in classLuceneTestCase
- Throws:
Exception
-
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.
-
mergeIsStable
protected boolean mergeIsStable()
-
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()
Returnsfalse
if only the regular fields reader should be tested, andtrue
if only the merge instance should be tested.
-
maybeWrapWithMergingReader
protected final DirectoryReader maybeWrapWithMergingReader(DirectoryReader r) throws IOException
- Throws:
IOException
-
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
-
-