Interface TestContext

All Known Implementing Classes:
GuiceTestContext

public interface TestContext
  • Method Details

    • getDependency

      <T> T getDependency(Class<T> dependencyClass)
      Allows obtaining runtime dependency from within test body. Common types of dependencies would be State instance coming out of RequirementFulfillers and services for performing work on cluster (like QueryExecutor, HdfsClient, RemoteExecutor)
      Type Parameters:
      T - template
      Parameters:
      dependencyClass - Class of dependency to be obtained
      Returns:
      Dependency
    • getDependency

      <T> T getDependency(Class<T> dependencyClass, String dependencyName)
    • getOptionalDependency

      <T> Optional<T> getOptionalDependency(Class<T> dependencyClass)
      Same as getDependency(Class) but will return Optional.empty() if no binding is present for given class.
      Type Parameters:
      T - template
      Parameters:
      dependencyClass - Class of dependency to be obtained
      Returns:
      Dependency
    • getOptionalDependency

      <T> Optional<T> getOptionalDependency(Class<T> dependencyClass, String dependencyName)
      Same as getDependency(Class, String) but will return Optional.empty() if no binding is present for given class.
      Type Parameters:
      T - template
      Parameters:
      dependencyClass - Class of dependency to be obtained
      dependencyName - Name of dependency
      Returns:
      Dependency
    • createChildContext

      TestContext createChildContext(Iterable<State> states)
      Creates a new child TestContext with new Injector that contains new states.
      Parameters:
      states - requested states
      Returns:
      TestContext
    • createChildContext

      default TestContext createChildContext(State... states)
    • registerCloseCallback

      void registerCloseCallback(TestContextCloseCallback callback)
      Registers a callback that will be executed on TestContext close.
      Parameters:
      callback - callback that will be executed on TestContext close.
    • injectMembers

      void injectMembers(Object instance)
    • close

      void close()
      Closes this TestContext and all children TestContexts.