I am trying to use PostgreSQLContainer
from TestContainers (https://github.com/testcontainers/testcontainers-java + https://www.testcontainers.org/) in order to unit test my JPA repositories.
I declare my container like that:
private val postgresqlContainer = PostgreSQLContainer("postgres:12-alpine")
However, I encounter the following error, from Intellij IDE:
Not enough information to infer type variable SELF
The full error when I try to launch the service is:
Error:(26, 43) Kotlin: Type inference failed: Not enough information to infer parameter SELF in constructor PostgreSQLContainer<SELF : PostgreSQLContainer<SELF!>!>(p0: String!) Please specify it explicitly.
This is now fixed on Kotlin side, see this blog post for more details. Require a flag with Kotlin 1.5.30 and will be the default as of Kotlin 1.6.0.
This trick also works
private val postgresqlContainer = PostgreSQLContainer<Nothing>().apply {
withDatabaseName("x")
withUsername("y")
withPassword("z")
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With