Class ITDependenciesHeavy<T extends StorageComponent>

java.lang.Object
zipkin2.storage.ITStorage<T>
zipkin2.storage.ITDependenciesHeavy<T>

@TestInstance(PER_CLASS) public abstract class ITDependenciesHeavy<T extends StorageComponent> extends ITStorage<T>
Base heavy tests for SpanStore implementations that support dependency aggregation. Subtypes should create a connection to a real backend, even if that backend is in-process.

As these tests create a lot of data, implementations may wish to isolate them from other integration tests such as ITDependencies

  • Constructor Details

    • ITDependenciesHeavy

      public ITDependenciesHeavy()
  • Method Details

    • initializeStoragePerTest

      protected boolean initializeStoragePerTest()
      Description copied from class: ITStorage
      Sets the test to initialise the StorageComponent before each test rather than the test class. Generally, tests will run faster if the storage is initialized as infrequently as possibly while clearing data between runs, but for certain backends like Cassandra, it's difficult to reliably clear data between runs and tends to be very slow anyways.
      Overrides:
      initializeStoragePerTest in class ITStorage<T extends StorageComponent>
    • configureStorageForTest

      protected void configureStorageForTest(StorageComponent.Builder storage)
      Description copied from class: ITStorage
      Configures a StorageComponent.Builder with parameters for the test being executed.
      Specified by:
      configureStorageForTest in class ITStorage<T extends StorageComponent>
    • processDependencies

      protected void processDependencies(List<Span> spans) throws Exception
      Override if dependency processing is a separate job: it should complete before returning from this method.
      Throws:
      Exception
    • manyLinks

      @Test protected void manyLinks() throws Exception
      Ensure there's no query limit problem around links
      Throws:
      Exception