Package org.elasticsearch.index.mapper
Class MapperTestCase
java.lang.Object
org.junit.Assert
org.apache.lucene.util.LuceneTestCase
org.elasticsearch.test.ESTestCase
org.elasticsearch.index.mapper.MapperServiceTestCase
org.elasticsearch.index.mapper.MapperTestCase
- Direct Known Subclasses:
AbstractNumericFieldMapperTestCase
public abstract class MapperTestCase extends MapperServiceTestCase
Base class for testing
Mappers.-
Nested Class Summary
Nested Classes Modifier and Type Class Description classMapperTestCase.ParameterCheckerNested classes/interfaces inherited from class org.elasticsearch.test.ESTestCase
ESTestCase.GeohashGenerator, ESTestCase.TestAnalysisNested classes/interfaces inherited from class org.apache.lucene.util.LuceneTestCase
org.apache.lucene.util.LuceneTestCase.AwaitsFix, org.apache.lucene.util.LuceneTestCase.BadApple, org.apache.lucene.util.LuceneTestCase.Monster, org.apache.lucene.util.LuceneTestCase.Nightly, org.apache.lucene.util.LuceneTestCase.Slow, org.apache.lucene.util.LuceneTestCase.SuppressCodecs, org.apache.lucene.util.LuceneTestCase.SuppressFileSystems, org.apache.lucene.util.LuceneTestCase.SuppressFsync, org.apache.lucene.util.LuceneTestCase.SuppressReproduceLine, org.apache.lucene.util.LuceneTestCase.SuppressSysoutChecks, org.apache.lucene.util.LuceneTestCase.SuppressTempFileChecks, org.apache.lucene.util.LuceneTestCase.ThrowingRunnable, org.apache.lucene.util.LuceneTestCase.Weekly -
Field Summary
Fields inherited from class org.elasticsearch.index.mapper.MapperServiceTestCase
INCLUDE_DEFAULTS, SETTINGSFields inherited from class org.elasticsearch.test.ESTestCase
checkIndexFailures, DEFAULT_NAMED_WRITABLE_REGISTRY, DEFAULT_TEST_WORKER_ID, failureAndSuccessEvents, FIPS_SYSPROP, JAVA_TIMEZONE_IDS, JAVA_ZONE_IDS, JODA_TIMEZONE_IDS, logger, MIN_PRIVATE_PORT, TEST_WORKER_SYS_PROPERTY, TEST_WORKER_VM_IDFields inherited from class org.apache.lucene.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_SLOW, 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_SLOW, TEST_THROTTLING, TEST_WEEKLY, VERBOSE -
Constructor Summary
Constructors Constructor Description MapperTestCase() -
Method Summary
Modifier and Type Method Description protected static voidassertDocValuesField(org.elasticsearch.index.mapper.ParseContext.Document doc, java.lang.String field)protected voidassertExistsQuery(org.elasticsearch.index.mapper.MappedFieldType fieldType, org.apache.lucene.search.Query query, org.elasticsearch.index.mapper.ParseContext.Document fields)protected voidassertExistsQuery(org.elasticsearch.index.mapper.MapperService mapperService)protected voidassertFetch(org.elasticsearch.index.mapper.MapperService mapperService, java.lang.String field, java.lang.Object value, java.lang.String format)Assert that fetching a value usingMappedFieldType.valueFetcher(org.elasticsearch.index.query.SearchExecutionContext, java.lang.String)produces the same value as fetching using doc values.protected static voidassertHasNorms(org.elasticsearch.index.mapper.ParseContext.Document doc, java.lang.String field)protected static voidassertNoDocValuesField(org.elasticsearch.index.mapper.ParseContext.Document doc, java.lang.String field)protected static voidassertNoFieldNamesField(org.elasticsearch.index.mapper.ParseContext.Document fields)protected voidassertParseMaximalWarnings()protected voidassertParseMinimalWarnings()protected voidassertSearchable(org.elasticsearch.index.mapper.MappedFieldType fieldType)protected java.util.List<?>fetchFromDocValues(org.elasticsearch.index.mapper.MapperService mapperService, org.elasticsearch.index.mapper.MappedFieldType ft, org.elasticsearch.search.DocValueFormat format, java.lang.Object sourceValue)Use a ValueFetcher to extract values from doc values.protected java.lang.String[]getParseMaximalWarnings()protected java.lang.String[]getParseMinimalWarnings()protected abstract java.lang.ObjectgetSampleValueForDocument()Returns a sample value for the field, to be used in a documentprotected java.lang.ObjectgetSampleValueForQuery()Returns a sample value for the field, to be used when querying the field.protected voidmetaMapping(org.elasticsearch.common.xcontent.XContentBuilder b)protected abstract voidminimalMapping(org.elasticsearch.common.xcontent.XContentBuilder b)protected abstract voidregisterParameters(MapperTestCase.ParameterChecker checker)protected booleansupportsMeta()Override to disable testingmetain fields that don't support it.voidtestDeprecatedBoost()voidtestEmptyName()voidtestExistsQueryMinimalMapping()This test verifies that the exists query created is the appropriate one, and aligns with the data structures being created for a document with a value for the field.voidtestMeta()voidtestMinimalSerializesToItself()voidtestMinimalToMaximal()voidtestTextSearchInfoConsistency()voidtestUpdates()protected java.lang.StringtypeName()protected voidwriteField(org.elasticsearch.common.xcontent.XContentBuilder builder)Writes the field and a sample value for it to the providedXContentBuilder.Methods inherited from class org.elasticsearch.index.mapper.MapperServiceTestCase
createDocumentMapper, createDocumentMapper, createDocumentMapper, createDocumentMapper, createIndexAnalyzers, createIndexAnalyzers, createIndexSettings, createMapperService, createMapperService, createMapperService, createMapperService, createMapperService, createMapperService, createMapperService, createMapperService, createSearchExecutionContext, dynamicMapping, fieldMapping, getIndexSettings, getPlugins, mapping, merge, merge, merge, merge, randomIndexOptions, runtimeFieldMapping, runtimeMapping, source, source, source, topMapping, withAggregationContext, withAggregationContext, withLuceneIndexMethods inherited from class org.elasticsearch.test.ESTestCase
after, afterIfFailed, afterIfSuccessful, allowedWarnings, assertArrayEquals, assertBusy, assertBusy, assertEquals, assertSettingDeprecationsAndWarnings, assertSettingDeprecationsAndWarnings, assertWarnings, assertWarnings, before, between, buildEnvSettings, buildNewFakeTransportAddress, checkStaticState, clearAdditionalRoles, copyInstance, copyNamedWriteable, copyNamedWriteable, copyWriteable, copyWriteable, createDefaultIndexAnalyzers, createParser, createParser, createParser, createParser, createParser, createParser, createTestAnalysis, createTestAnalysis, createTestAnalysis, enableJodaDeprecationWarningsCheck, enableWarningsCheck, ensureAllSearchContextsReleased, ensureCheckIndexPassed, ensureSupportedLocale, frequently, generateRandomStringArray, generateRandomStringArray, getBasePort, getDataPath, getPortRange, getSuiteFailureMarker, getTestTransportPlugin, getTestTransportType, inFipsJvm, iterations, maybeSet, mockScript, newEnvironment, newEnvironment, newNodeEnvironment, newNodeEnvironment, randomAlphaOfLength, randomAlphaOfLengthBetween, randomArray, randomArray, randomBigInteger, randomBoolean, randomByte, randomByteArrayOfLength, randomDateFormatterPattern, randomDateTimeZone, randomDouble, randomDoubleBetween, randomFloat, randomFrom, randomFrom, randomFrom, randomFrom, randomFrom, randomGeohash, randomInt, randomInt, randomIntBetween, randomIp, randomList, randomList, randomLong, randomLongBetween, randomNonNegativeByte, randomNonNegativeLong, randomPositiveTimeValue, randomRealisticUnicodeOfCodepointLength, randomRealisticUnicodeOfCodepointLengthBetween, randomRealisticUnicodeOfLength, randomRealisticUnicodeOfLengthBetween, randomShort, randomSubsetOf, randomSubsetOf, randomSubsetOf, randomTimeValue, randomTimeValue, randomTimeValue, randomTimeZone, randomUnicodeOfCodepointLength, randomUnicodeOfCodepointLengthBetween, randomUnicodeOfLength, randomUnicodeOfLengthBetween, randomUnique, randomValueOtherThan, randomValueOtherThanMany, randomZone, removeHeaderWarningAppender, resetCheckIndexStatus, resetPortCounter, restoreContentType, restoreFileSystem, scaledRandomIntBetween, setContentType, setFileSystem, setHeaderWarningAppender, settings, shuffleMap, shuffleXContent, shuffleXContent, spinForAtLeastNMilliseconds, spinForAtLeastOneMillisecond, terminate, terminate, tmpPaths, toShuffledXContent, waitUntil, waitUntil, writableRegistry, xContentRegistryMethods inherited from class org.apache.lucene.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, getBaseTempDirForTestClass, getDataInputStream, getOnlyLeafReader, getTestClass, getTestName, hasWorkingMMapOnWindows, isTestThread, localeForLanguageTag, maybeChangeLiveIndexWriterConfig, maybeWrapReader, newAlcoholicMergePolicy, newAlcoholicMergePolicy, 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, newStringField, newStringField, newStringField, newStringField, newTextField, newTextField, newTieredMergePolicy, newTieredMergePolicy, overrideDefaultQueryCache, overrideTestDefaultQueryCache, random, randomLocale, randomTimeZone, rarely, rarely, replaceMaxFailureRule, resetDefaultQueryCache, restoreCPUCoreCount, restoreIndexWriterMaxDocs, restoreSpins, runWithRestrictedPermissions, setIndexWriterMaxDocs, setUp, setupCPUCoreCount, setupSpins, slowFileExists, tearDown, usually, usually, wrapReaderMethods 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, assertTrue, assertTrue, fail, failMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
MapperTestCase
public MapperTestCase()
-
-
Method Details
-
minimalMapping
protected abstract void minimalMapping(org.elasticsearch.common.xcontent.XContentBuilder b) throws java.io.IOException- Throws:
java.io.IOException
-
writeField
protected void writeField(org.elasticsearch.common.xcontent.XContentBuilder builder) throws java.io.IOExceptionWrites the field and a sample value for it to the providedXContentBuilder. To be overridden in case the field should not be written at all in documents, like in the case of runtime fields.- Throws:
java.io.IOException
-
getSampleValueForDocument
protected abstract java.lang.Object getSampleValueForDocument()Returns a sample value for the field, to be used in a document -
getSampleValueForQuery
protected java.lang.Object getSampleValueForQuery()Returns a sample value for the field, to be used when querying the field. Normally this is the same format as what is indexed as part of a document, and returned bygetSampleValueForDocument(), but there are cases where fields are queried differently frow how they are indexed e.g. token_count or runtime fields -
testExistsQueryMinimalMapping
public final void testExistsQueryMinimalMapping() throws java.io.IOExceptionThis test verifies that the exists query created is the appropriate one, and aligns with the data structures being created for a document with a value for the field. This can only be verified for the minimal mapping. Field types that allow configurable doc_values or norms should write their own tests that creates the different mappings combinations and invokeassertExistsQuery(MapperService)to verify the behaviour.- Throws:
java.io.IOException
-
assertExistsQuery
protected void assertExistsQuery(org.elasticsearch.index.mapper.MapperService mapperService) throws java.io.IOException- Throws:
java.io.IOException
-
assertExistsQuery
protected void assertExistsQuery(org.elasticsearch.index.mapper.MappedFieldType fieldType, org.apache.lucene.search.Query query, org.elasticsearch.index.mapper.ParseContext.Document fields) -
assertNoFieldNamesField
protected static void assertNoFieldNamesField(org.elasticsearch.index.mapper.ParseContext.Document fields) -
assertHasNorms
protected static void assertHasNorms(org.elasticsearch.index.mapper.ParseContext.Document doc, java.lang.String field) -
assertDocValuesField
protected static void assertDocValuesField(org.elasticsearch.index.mapper.ParseContext.Document doc, java.lang.String field) -
assertNoDocValuesField
protected static void assertNoDocValuesField(org.elasticsearch.index.mapper.ParseContext.Document doc, java.lang.String field) -
testEmptyName
public final void testEmptyName() -
testMinimalSerializesToItself
public final void testMinimalSerializesToItself() throws java.io.IOException- Throws:
java.io.IOException
-
testMinimalToMaximal
public void testMinimalToMaximal() throws java.io.IOException- Throws:
java.io.IOException
-
assertParseMinimalWarnings
protected final void assertParseMinimalWarnings() -
assertParseMaximalWarnings
protected final void assertParseMaximalWarnings() -
getParseMinimalWarnings
protected java.lang.String[] getParseMinimalWarnings() -
getParseMaximalWarnings
protected java.lang.String[] getParseMaximalWarnings() -
supportsMeta
protected boolean supportsMeta()Override to disable testingmetain fields that don't support it. -
metaMapping
protected void metaMapping(org.elasticsearch.common.xcontent.XContentBuilder b) throws java.io.IOException- Throws:
java.io.IOException
-
testMeta
public void testMeta() throws java.io.IOException- Throws:
java.io.IOException
-
typeName
protected java.lang.String typeName() throws java.io.IOException- Throws:
java.io.IOException
-
testDeprecatedBoost
public final void testDeprecatedBoost() throws java.io.IOException- Throws:
java.io.IOException
-
fetchFromDocValues
protected final java.util.List<?> fetchFromDocValues(org.elasticsearch.index.mapper.MapperService mapperService, org.elasticsearch.index.mapper.MappedFieldType ft, org.elasticsearch.search.DocValueFormat format, java.lang.Object sourceValue) throws java.io.IOExceptionUse a ValueFetcher to extract values from doc values.- Throws:
java.io.IOException
-
registerParameters
protected abstract void registerParameters(MapperTestCase.ParameterChecker checker) throws java.io.IOException- Throws:
java.io.IOException
-
testUpdates
public void testUpdates() throws java.io.IOException- Throws:
java.io.IOException
-
testTextSearchInfoConsistency
public final void testTextSearchInfoConsistency() throws java.io.IOException- Throws:
java.io.IOException
-
assertSearchable
protected void assertSearchable(org.elasticsearch.index.mapper.MappedFieldType fieldType) -
assertFetch
protected void assertFetch(org.elasticsearch.index.mapper.MapperService mapperService, java.lang.String field, java.lang.Object value, java.lang.String format) throws java.io.IOExceptionAssert that fetching a value usingMappedFieldType.valueFetcher(org.elasticsearch.index.query.SearchExecutionContext, java.lang.String)produces the same value as fetching using doc values.- Throws:
java.io.IOException
-