TestContainersFixtures

class Object
trait Matchable
class Any
FunSuite

Type members

Classlikes

class ForAllContainerFixture[T <: Startable & Stoppable](val container: T) extends Fixture[T]

Creates a fixture that starts a single container before all test and stops it after all test.

Creates a fixture that starts a single container before all test and stops it after all test.

Example:
class MysqlSpec extends FunSuite with TestContainersFixtures {
 val mysql = ForAllContainerFixture(MySQLContainer())
 // You need to override `munitFixtures` and pass in your container fixture
 override def munitFixtures = List(mysql)
 test("test case name") {
   // Inside your test body you can do with your container whatever you want to
   assert(mysql().jdbcUrl.nonEmpty)
 }
}
Companion:
object
class ForEachContainerFixture[T <: Startable & Stoppable](val container: T) extends Fixture[T]

Creates a fixture that starts a single container before each test and stops it after each test.

Creates a fixture that starts a single container before each test and stops it after each test.

Example:
class MysqlSpec extends FunSuite with TestContainersFixtures {
 val mysql = ForEachContainerFixture(MySQLContainer())
 // You need to override `munitFixtures` and pass in your container fixture
 override def munitFixtures = List(mysql)
 test("test case name") {
   // Inside your test body you can do with your container whatever you want to
   assert(mysql().jdbcUrl.nonEmpty)
 }
}
Companion:
object