summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruno Sakoto <bruno.sakoto@bell.ca>2021-07-21 18:26:07 -0400
committerBruno Sakoto <bruno.sakoto@bell.ca>2021-07-21 18:27:32 -0400
commitbc5644f4b972f4f000043dd6c99ec828bde39730 (patch)
treebb806a6c882d93ae7bcae5a8fac39a9f6f9e3a02
parent092d4a0b4eb6011b16d223f0c1d5072fdb5f6abb (diff)
Review maven configuration for testcontainers
Maven build was not failing when test containers are not able to run because of following maven surefire plugin bug: * https://github.com/junit-team/junit5/issues/2178 * https://issues.apache.org/jira/browse/SUREFIRE-1688 This bug is fixed in surefire 3.0.0-M5. Then, 3.0.0-M4 version coming from oparent is now overridden in pom plugin management. This commit also improves spock testcontainers integration by using the appropriate spock dependency. Issue-ID: CPS-515 Signed-off-by: Bruno Sakoto <bruno.sakoto@bell.ca> Change-Id: I3ad902e598ece31601115d6484e520b6321ce8dd
-rwxr-xr-xpom.xml17
-rw-r--r--src/test/groovy/org/onap/cps/temporal/controller/event/listener/kafka/DataUpdatedEventListenerIntegrationSpec.groovy6
-rw-r--r--src/test/groovy/org/onap/cps/temporal/repository/NetworkDataRepositorySpec.groovy8
3 files changed, 18 insertions, 13 deletions
diff --git a/pom.xml b/pom.xml
index 161c7e5..4f5020a 100755
--- a/pom.xml
+++ b/pom.xml
@@ -65,6 +65,13 @@
<type>pom</type>
<scope>import</scope>
</dependency>
+ <dependency>
+ <groupId>org.testcontainers</groupId>
+ <artifactId>testcontainers-bom</artifactId>
+ <version>1.15.3</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
</dependencies>
</dependencyManagement>
@@ -148,20 +155,17 @@
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
- <artifactId>junit-jupiter</artifactId>
- <version>1.15.2</version>
+ <artifactId>spock</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>postgresql</artifactId>
- <version>1.15.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>kafka</artifactId>
- <version>1.15.3</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -421,6 +425,11 @@
<pluginManagement>
<plugins>
<plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>3.0.0-M5</version>
+ </plugin>
+ <plugin>
<groupId>com.google.cloud.tools</groupId>
<artifactId>jib-maven-plugin</artifactId>
<version>3.0.0</version>
diff --git a/src/test/groovy/org/onap/cps/temporal/controller/event/listener/kafka/DataUpdatedEventListenerIntegrationSpec.groovy b/src/test/groovy/org/onap/cps/temporal/controller/event/listener/kafka/DataUpdatedEventListenerIntegrationSpec.groovy
index 4c362ad..2ba011f 100644
--- a/src/test/groovy/org/onap/cps/temporal/controller/event/listener/kafka/DataUpdatedEventListenerIntegrationSpec.groovy
+++ b/src/test/groovy/org/onap/cps/temporal/controller/event/listener/kafka/DataUpdatedEventListenerIntegrationSpec.groovy
@@ -29,6 +29,7 @@ import org.springframework.kafka.core.KafkaTemplate
import org.springframework.test.context.DynamicPropertyRegistry
import org.springframework.test.context.DynamicPropertySource
import org.testcontainers.containers.KafkaContainer
+import org.testcontainers.spock.Testcontainers
import spock.lang.Shared
import spock.lang.Specification
import spock.util.concurrent.PollingConditions
@@ -40,19 +41,18 @@ import java.util.concurrent.TimeUnit
* This integration test is running database and kafka dependencies as docker containers.
*/
@SpringBootTest
+@Testcontainers
@Slf4j
class DataUpdatedEventListenerIntegrationSpec extends Specification {
@Shared
- def databaseTestContainer = TimescaleContainer.getInstance()
+ TimescaleContainer databaseTestContainer = TimescaleContainer.getInstance()
static kafkaTestContainer = new KafkaContainer()
static {
Runtime.getRuntime().addShutdownHook(new Thread(kafkaTestContainer::stop))
}
-
def setupSpec() {
- databaseTestContainer.start()
kafkaTestContainer.start()
}
diff --git a/src/test/groovy/org/onap/cps/temporal/repository/NetworkDataRepositorySpec.groovy b/src/test/groovy/org/onap/cps/temporal/repository/NetworkDataRepositorySpec.groovy
index f66b35e..c23015c 100644
--- a/src/test/groovy/org/onap/cps/temporal/repository/NetworkDataRepositorySpec.groovy
+++ b/src/test/groovy/org/onap/cps/temporal/repository/NetworkDataRepositorySpec.groovy
@@ -23,7 +23,7 @@ import org.onap.cps.temporal.domain.NetworkData
import org.onap.cps.temporal.repository.containers.TimescaleContainer
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.boot.test.context.SpringBootTest
-import org.testcontainers.junit.jupiter.Testcontainers
+import org.testcontainers.spock.Testcontainers
import spock.lang.Shared
import spock.lang.Specification
@@ -49,11 +49,7 @@ class NetworkDataRepositorySpec extends Specification {
.schemaSet(schemaSetName).anchor(anchorName).payload(payload).build()
@Shared
- def databaseTestContainer = TimescaleContainer.getInstance()
-
- def setupSpec() {
- databaseTestContainer.start()
- }
+ TimescaleContainer databaseTestContainer = TimescaleContainer.getInstance()
def 'Store latest network data in timeseries database.'() {
when: 'a new Network Data is stored'