Skip to content

Commit

Permalink
Fix Mongo
Browse files Browse the repository at this point in the history
  • Loading branch information
nk2IsHere committed Aug 21, 2023
1 parent 34583e8 commit f805d9c
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 18 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -31,14 +31,10 @@ public class MongoInitializer implements ApplicationContextInitializer<GenericAp

private final MongoProperties properties;

private final boolean embeddedServer;

public MongoInitializer(
MongoProperties properties,
boolean embeddedServer
MongoProperties properties
) {
this.properties = properties;
this.embeddedServer = embeddedServer;
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,6 @@ abstract class AbstractMongoDsl(private val init: MongoDsl.() -> Unit) : Abstrac

protected val properties = MongoProperties()

internal var embedded = false

/**
* Configure the database uri. By default set to `mongodb://localhost/test`.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ open class MongoDsl(private val init: MongoDsl.() -> Unit) : AbstractMongoDsl({}
override fun initialize(context: GenericApplicationContext) {
super.initialize(context)
init()
MongoInitializer(properties, embedded).initialize(context)
MongoInitializer(properties).initialize(context)
MongoDataInitializer(properties).initialize(context)
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@

package org.springframework.fu.kofu.mongo

import de.flapdoodle.embed.mongo.distribution.Version
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Test
import org.springframework.beans.factory.getBean
Expand All @@ -25,21 +24,26 @@ import org.springframework.data.mongodb.core.MongoTemplate
import org.springframework.data.mongodb.core.ReactiveMongoTemplate
import org.springframework.data.mongodb.core.findById
import org.springframework.fu.kofu.application
import org.springframework.util.SocketUtils
import org.testcontainers.containers.GenericContainer
import java.time.Duration

class EmbeddedMongoModuleTests {
class MongoDslTests {

@Test
fun `enable mongodb embedded module with reactive support`() {
val port = SocketUtils.findAvailableTcpPort()
val mongo = object : GenericContainer<Nothing>("mongo:latest") {
init {
withExposedPorts(27017)
}
}
mongo.start()

val app = application {
beans {
bean<TestReactiveRepository>()
}
reactiveMongodb {
uri = "mongodb://localhost:$port/test"
embedded(Version.Main.PRODUCTION)
uri = "mongodb://${mongo.containerIpAddress}:${mongo.firstMappedPort}/test"
}
}
with(app.run()){
Expand All @@ -48,18 +52,25 @@ class EmbeddedMongoModuleTests {
assertEquals("foo", repository.findById("1").block(Duration.ofSeconds(3))?.name)
close()
}

mongo.stop()
}

@Test
fun `enable mongodb embedded module`() {
val port = SocketUtils.findAvailableTcpPort()
fun `enable mongodb`() {
val mongo = object : GenericContainer<Nothing>("mongo:latest") {
init {
withExposedPorts(27017)
}
}
mongo.start()

val app = application {
beans {
bean<TestRepository>()
}
mongodb() {
uri = "mongodb://localhost:$port/test"
embedded(Version.Main.PRODUCTION)
uri = "mongodb://${mongo.containerIpAddress}:${mongo.firstMappedPort}/test"
}
}
with(app.run()){
Expand All @@ -68,6 +79,8 @@ class EmbeddedMongoModuleTests {
assertEquals("foo", repository.findById("1")?.name)
close()
}

mongo.stop()
}
}

Expand Down

0 comments on commit f805d9c

Please sign in to comment.