com.dimafeng.testcontainers

Type members

Classlikes

trait Container extends Startable with Stoppable
class DockerComposeContainer(composeFiles: ComposeFile, exposedServices: Seq[ExposedService], identifier: String, scaledServices: Seq[ScaledService], pull: Boolean, localCompose: Boolean, env: Map[String, String], tailChildContainers: Boolean, logConsumers: Seq[ServiceLogConsumer], waitingFor: Option[WaitingForService], services: Services) extends TestContainerProxy[DockerComposeContainer[_]]
Companion:
object
Companion:
class
final case class ExposedService(name: String, port: Int, waitStrategy: WaitStrategy, instance: Option[Int])
Companion:
object
class FixedHostPortGenericContainer(imageName: String, exposedPorts: Seq[Int], env: Map[String, String], command: Seq[String], classpathResourceMapping: Seq[FileSystemBind], waitStrategy: Option[WaitStrategy], exposedHostPort: Int, exposedContainerPort: Int, fileSystemBind: Seq[FileSystemBind], startupCheckStrategy: Option[StartupCheckStrategy]) extends SingleContainer[FixedHostPortGenericContainer[_]]
Companion:
object
class GenericContainer(val underlyingUnsafeContainer: GenericContainer[_]) extends SingleContainer[GenericContainer[_]]
Companion:
object
Companion:
class
class LazyContainer[T <: Container](factory: => T) extends Container with TestLifecycleAware

Lazy container wrapper aims to solve the problem of cross-container dependencies in MultipleContainers when a second container requires some after start data from a first one (e.g. an application container needs JDBC url of a container with a database - in that case the url becomes available after the database container has started)

Lazy container wrapper aims to solve the problem of cross-container dependencies in MultipleContainers when a second container requires some after start data from a first one (e.g. an application container needs JDBC url of a container with a database - in that case the url becomes available after the database container has started)

You don't need to wrap your containers into the LazyContainer manually when you pass your containers in the MultipleContainers- there is implicit conversion for that.

Companion:
object
Companion:
class
Companion:
class
final case class ScaledService(name: String, numInstances: Int)
final case class Service(name: String)
final case class ServiceLogConsumer(serviceName: String, consumer: Consumer[OutputFrame])
sealed trait Services
Companion:
object
object Services
Companion:
class
abstract class SingleContainer[T <: GenericContainer[_]] extends TestContainerProxy[T]
final case class WaitingForService(serviceName: String, waitStrategy: WaitStrategy)

Deprecated classlikes

@deprecated("For internal usage only. Will be deleted.")
trait TestContainerProxy[T <: FailureDetectingExternalResource] extends Container
Deprecated