org.apache.solr.util

## Class AbstractSolrTestCase

- java.lang.Object
- - org.junit.Assert
  - - org.apache.lucene.util.LuceneTestCase
    - - org.apache.solr.SolrTestCaseJ4
      - - org.apache.solr.util.AbstractSolrTestCase

-     public abstract class AbstractSolrTestCase
      extends SolrTestCaseJ4

  An Abstract base class that makes writing Solr JUnit tests "easier"

  Test classes that subclass this need only specify the path to the schema.xml file (:TODO: the solrconfig.xml as well) and write some testMethods. This class takes care of creating/destroying the index, and provides several assert methods to assist you.

  See Also:
    `SolrTestCaseJ4.setUp()`, `SolrTestCaseJ4.tearDown()`

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.solr.SolrTestCaseJ4

      `SolrTestCaseJ4.CloudSolrClientBuilder, SolrTestCaseJ4.Doc, SolrTestCaseJ4.Fld, SolrTestCaseJ4.FldType, SolrTestCaseJ4.FVal, SolrTestCaseJ4.IRange, SolrTestCaseJ4.IVals, SolrTestCaseJ4.IValsPercent, SolrTestCaseJ4.SuppressObjectReleaseTracker, SolrTestCaseJ4.SuppressSSL, SolrTestCaseJ4.SVal, SolrTestCaseJ4.Vals, SolrTestCaseJ4.XmlDoc`

    - ### Nested 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
    Modifier and Type | Field and Description
    --- | ---
    `protected org.apache.solr.core.SolrConfig` | `solrConfig`

    - ### Fields inherited from class org.apache.solr.SolrTestCaseJ4

      `configString, CORE_PROPERTIES_FILENAME, DEFAULT_CONNECTION_TIMEOUT, DEFAULT_TEST_COLLECTION_NAME, DEFAULT_TEST_CORENAME, h, hdfsDataDir, initCoreDataDir, lrf, ONE_ONE, schemaString, solrClassRules, solrTestRules, sslConfig, SYSTEM_PROPERTY_SOLR_TESTS_MERGEPOLICY, SYSTEM_PROPERTY_SOLR_TESTS_MERGEPOLICYFACTORY, SYSTEM_PROPERTY_SOLR_TESTS_USEMERGEPOLICY, SYSTEM_PROPERTY_SOLR_TESTS_USEMERGEPOLICYFACTORY, testSolrHome, ZERO_ONE, ZERO_TWO`

    - ### Fields 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_CODEC, TEST_DIRECTORY, TEST_DOCVALUESFORMAT, TEST_LINE_DOCS_FILE, TEST_NIGHTLY, TEST_POSTINGSFORMAT, TEST_SLOW, TEST_THROTTLING, TEST_WEEKLY, VERBOSE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractSolrTestCase()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `adoc(int commitWithin, String... fieldsAndValues)` Generates a simple <add><doc>...
    `String` | `delI(String id, String... args)` Generates a <delete>...
    `String` | `delQ(String q, String... args)` Generates a <delete>...
    `static File` | `getFile(String name)`
    `String` | `getSolrHome()` Subclasses can override this to change a test's solr home (default is in test-files)
    `static void` | `ignoreException(String pattern)` Causes an exception matching the regex pattern to not be logged.
    `void` | `postSetUp()` Subclasses that override setUp can optionally call this method to log the fact that their setUp process has ended.
    `void` | `preTearDown()` Subclasses that override tearDown can optionally call this method to log the fact that the tearDown process has started.
    `static void` | `resetExceptionIgnores()`

    - ### Methods inherited from class org.apache.solr.SolrTestCaseJ4

      `add, addAndGetVersion, adoc, adoc, assertFailedU, assertFailedU, assertFieldValues, assertJQ, assertJQ, assertQ, assertQ, assertQEx, assertQEx, assertQEx, assertSolrInputFieldEquals, assertU, assertU, assertXmlFile, buildJettyConfig, buildUrl, chooseMPForMP, clearIndex, commit, compareSolrDocument, compareSolrDocumentList, compareSolrInputDocument, configset, copyMinConf, copyMinConf, copyMinFullSetup, copySolrHomeToTemp, createComparator, createComparator, createCore, createCoreContainer, createCoreContainer, createCoreContainer, createDefaultCoreContainer, createDoc, createSort, deleteAndGetVersion, deleteByQueryAndGetVersion, deleteCore, delI, delQ, doc, endTrackingSearchers, getClassName, getCloudSolrClient, getCloudSolrClient, getCloudSolrClient, getCloudSolrClient, getConcurrentUpdateSolrClient, getConcurrentUpdateSolrClient, getHttpSolrClient, getHttpSolrClient, getHttpSolrClient, getHttpSolrClient, getLBHttpSolrClient, getLBHttpSolrClient, getRootCause, getSchemaFile, getSimpleClassName, getSolrConfigFile, getWrappedException, hasInitException, hasInitException, indexDocs, initClassLogLevels, initCore, initCore, initCore, initCore, initMethodLogLevels, invertField, isSSLMode, JQ, json, json, json, jsonAdd, jsonDelId, jsonDelQ, map, newRandomConfig, optimize, params, randomDate, randomSkewedDate, randomXmlUsableUnicodeString, req, req, req, resetFactory, restoreMethodLogLevels, sdoc, sdocs, setUp, setupNoCoreTest, setupTestCases, skewed, startTrackingSearchers, systemClearPropertySolrTestsMergePolicy, systemClearPropertySolrTestsMergePolicyFactory, systemSetPropertySolrTestsMergePolicy, systemSetPropertySolrTestsMergePolicyFactory, tearDown, teardownTestCases, TEST_HOME, TEST_PATH, toJSON, unchooseMPForMP, unIgnoreException, updateJ, useFactory, waitForWarming, whitespaceMockTokenizer, whitespaceMockTokenizer, writeCoreProperties, writeCoreProperties`

    - ### Methods inherited from class org.apache.lucene.util.LuceneTestCase

      `addVirusChecker, assertDeletedDocsEquals, assertDocsAndPositionsEnumEquals, assertDocsEnumEquals, assertDocsSkippingEquals, assertDocValuesEquals, assertDocValuesEquals, assertFieldInfosEquals, assertFieldsEquals, assertFieldStatisticsEquals, assertNormsEquals, assertPointsEquals, assertPositionsSkippingEquals, assertReaderEquals, assertReaderStatisticsEquals, assertStoredFieldEquals, assertStoredFieldsEquals, assertTermsEnumEquals, assertTermsEquals, assertTermsStatisticsEquals, assertTermStatsEquals, assertTermVectorsEquals, asSet, assumeFalse, assumeNoException, assumeTrue, atLeast, atLeast, closeAfterSuite, closeAfterTest, collate, createTempDir, createTempDir, createTempFile, createTempFile, dumpArray, dumpIterator, expectThrows, getBaseTempDirForTestClass, getDataInputStream, getDataPath, getOnlyLeafReader, getTestClass, getTestName, 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, 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, setupCPUCoreCount, setupSpins, 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, 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

    - #### solrConfig

          protected org.apache.solr.core.SolrConfig solrConfig

  - ### Constructor Detail

    - #### AbstractSolrTestCase

          public AbstractSolrTestCase()

  - ### Method Detail

    - #### getSolrHome

          public String getSolrHome()

      Subclasses can override this to change a test's solr home (default is in test-files)

    - #### ignoreException

          public static void ignoreException(String pattern)

      Causes an exception matching the regex pattern to not be logged.

    - #### resetExceptionIgnores

          public static void resetExceptionIgnores()

    - #### postSetUp

          public void postSetUp()

      Subclasses that override setUp can optionally call this method to log the fact that their setUp process has ended.
      Overrides:
        `postSetUp` in class `SolrTestCaseJ4`

    - #### preTearDown

          public void preTearDown()

      Subclasses that override tearDown can optionally call this method to log the fact that the tearDown process has started. This is necessary since subclasses will want to call super.tearDown() at the *end* of their tearDown method.
      Overrides:
        `preTearDown` in class `SolrTestCaseJ4`

    - #### adoc

          public String adoc(int commitWithin,
                             String... fieldsAndValues)

      Generates a simple <add><doc>... XML String with the commitWithin attribute.
      Parameters:
        `commitWithin` - the value of the commitWithin attribute
        `fieldsAndValues` - 0th and Even numbered args are fields names odds are field values.
      See Also:
        `SolrTestCaseJ4.add(org.apache.solr.SolrTestCaseJ4.XmlDoc, java.lang.String...)`, `SolrTestCaseJ4.doc(java.lang.String...)`

    - #### delI

          public String delI(String id,
                             String... args)

      Generates a <delete>... XML string for an ID
      See Also:
        `BaseTestHarness.deleteById(java.lang.String, java.lang.String...)`

    - #### delQ

          public String delQ(String q,
                             String... args)

      Generates a <delete>... XML string for an query
      See Also:
        `BaseTestHarness.deleteByQuery(java.lang.String, java.lang.String...)`

    - #### getFile

          public static File getFile(String name)

      See Also:
        `SolrTestCaseJ4.getFile(java.lang.String)`

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