~ ============LICENSE_START=======================================================
~ dcaegen2-collectors-veshv
~ ================================================================================
- ~ Copyright (C) 2018 NOKIA
+ ~ Copyright (C) 2018-2021 NOKIA
~ ================================================================================
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ ============LICENSE_END=========================================================
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.onap.oparent</groupId>
<artifactId>oparent</artifactId>
- <version>0.1.1</version>
+ <version>3.0.0</version>
<relativePath/>
</parent>
- <groupId>org.onap.dcaegen2.collectors.veshv</groupId>
+ <groupId>org.onap.dcaegen2.collectors.hv-ves</groupId>
<artifactId>ves-hv-collector</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.9.1-SNAPSHOT</version>
<name>dcaegen2-collectors-veshv</name>
<description>VES HighVolume Collector</description>
<packaging>pom</packaging>
<modules>
- <module>hv-collector-analysis</module>
- <module>hv-collector-core</module>
- <module>hv-collector-coverage</module>
- <module>hv-collector-ct</module>
- <module>hv-collector-dcae-app-simulator</module>
- <module>hv-collector-domain</module>
- <module>hv-collector-health-check</module>
- <module>hv-collector-main</module>
- <module>hv-collector-test-utils</module>
- <module>hv-collector-utils</module>
- <module>hv-collector-ves-message-generator</module>
- <module>hv-collector-xnf-simulator</module>
+ <module>build</module>
+ <module>sources</module>
</modules>
<properties>
- <kotlin.version>1.2.60</kotlin.version>
- <arrow.version>0.7.2</arrow.version>
- <maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
- <build-helper-maven-plugin.version>1.7</build-helper-maven-plugin.version>
+ <maven-resources-plugin.version>3.2.0</maven-resources-plugin.version>
+ <asm.version>9.1</asm.version>
+ <commons-lang3.version>3.12.0</commons-lang3.version>
+ <maven-failsafe-plugin.version>2.22.2</maven-failsafe-plugin.version>
+ <maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
+ <exec-maven-plugin.version>3.0.0</exec-maven-plugin.version>
+ <os-maven-plugin.version>1.7.0</os-maven-plugin.version>
+ <maven-dependency-plugin.version>3.1.2</maven-dependency-plugin.version>
+ <docker-maven-plugin.version>0.34.1</docker-maven-plugin.version>
+ <guava.version>30.1.1-jre</guava.version>
+ <logback-classic.version>1.3.0-alpha4</logback-classic.version>
+ <slf4j-api.version>2.0.0-alpha1</slf4j-api.version>
+ <reactor-bom.version>2020.0.5</reactor-bom.version>
+ <kafka-clients.version>2.7.0</kafka-clients.version>
+ <commons-cli.version>1.4</commons-cli.version>
+ <javax.json-api.version>1.1.4</javax.json-api.version>
+ <javax.json.version>1.1.4</javax.json.version>
+ <micrometer-registry-prometheus.version>1.6.5</micrometer-registry-prometheus.version>
+ <assertj-core.version>3.19.0</assertj-core.version>
+ <mockito-kotlin.version>2.2.0</mockito-kotlin.version>
+ <coroutines.version>1.4.2</coroutines.version>
+ <kotlin.version>1.4.10</kotlin.version>
+ <arrow.version>0.9.0</arrow.version>
+ <maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
+ <build-helper-maven-plugin.version>3.2.0</build-helper-maven-plugin.version>
+ <jacoco.version>0.8.3</jacoco.version>
+ <detekt.version>1.15.0</detekt.version>
+ <sdk.version>1.8.7</sdk.version>
<!-- Protocol buffers -->
- <protobuf.version>3.5.1</protobuf.version>
- <protoc-jar-maven-plugin.version>3.5.1.1</protoc-jar-maven-plugin.version>
- <protobuf-generated-files.directory>${project.build.directory}/generated-sources/proto/main/java/
- </protobuf-generated-files.directory>
+ <protobuf.version>4.0.0-rc-2</protobuf.version>
<!-- Testing and code analysis -->
- <junit-platform.version>1.2.0-RC1</junit-platform.version>
- <junit-jupiter.version>5.2.0-RC1</junit-jupiter.version>
+ <junit-platform.version>1.2.0</junit-platform.version>
+ <junit-jupiter.version>5.8.0-M1</junit-jupiter.version>
<spek.version>1.1.5</spek.version>
- <maven-surefire-plugin.version>2.22.0</maven-surefire-plugin.version>
+ <gson.version>2.8.6</gson.version>
+
<failIfMissingUnitTests>false</failIfMissingUnitTests>
<failIfMissingComponentTests>false</failIfMissingComponentTests>
<skipAnalysis>true</skipAnalysis>
+ <jacoco.minimum.coverage>60</jacoco.minimum.coverage>
+ <skipEnforcer>true</skipEnforcer>
+ <!--Specify path to load jacoco xml report, as Sonar can't load Kotlin coverage from binary report. -->
+ <sonar.coverage.jacoco.xmlReportPaths>
+ ${project.basedir}/../../build/hv-collector-coverage/target/site/jacoco-aggregate/jacoco.xml
+ </sonar.coverage.jacoco.xmlReportPaths>
<!-- Docker -->
<skipDocker>false</skipDocker>
+ <skipDockerPush>true</skipDockerPush>
<maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
<docker-image.registry>${onap.nexus.dockerregistry.daily}</docker-image.registry>
<docker-image.namespace>onap</docker-image.namespace>
<docker-image.name>${project.groupId}.${project.artifactId}</docker-image.name>
- <docker.http_proxy></docker.http_proxy>
+ <docker-image.latest>latest</docker-image.latest>
+ <docker.http_proxy/>
</properties>
-
<build>
<sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory>
<testSourceDirectory>${project.basedir}/src/test/kotlin</testSourceDirectory>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
- <version>3.1.0</version>
+ <version>${maven-resources-plugin.version}</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-enforcer-plugin</artifactId>
<configuration>
- <skip>true</skip>
+ <skip>${skipEnforcer}</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<version>${kotlin.version}</version>
<configuration>
- <jvmTarget>1.8</jvmTarget>
+ <jvmTarget>11</jvmTarget>
</configuration>
<executions>
<execution>
</execution>
</executions>
</plugin>
- <plugin>
- <groupId>com.github.os72</groupId>
- <artifactId>protoc-jar-maven-plugin</artifactId>
- <version>${protoc-jar-maven-plugin.version}</version>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>build-helper-maven-plugin</artifactId>
- <version>${build-helper-maven-plugin.version}</version>
- <executions>
- <execution>
- <id>add-source</id>
- <phase>generate-sources</phase>
- <goals>
- <goal>add-source</goal>
- </goals>
- <configuration>
- <sources>
- <source>${protobuf-generated-files.directory}</source>
- </sources>
- </configuration>
- </execution>
- </executions>
- </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
<configuration>
- <source>8</source>
- <target>8</target>
+ <source>11</source>
+ <target>11</target>
<encoding>UTF-8</encoding>
<showWarnings>true</showWarnings>
<showDeprecation>true</showDeprecation>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId>
- <version>6.1.1</version> <!-- Use newer version of ASM -->
+ <version>${asm.version}</version> <!-- Use newer version of ASM -->
</dependency>
</dependencies>
</plugin>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
- <version>3.7</version>
+ <version>${commons-lang3.version}</version>
</dependency>
<dependency>
<groupId>org.junit.platform</groupId>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
- <version>2.22.0</version>
+ <version>${maven-failsafe-plugin.version}</version>
<configuration>
<failIfNoTests>${failIfMissingComponentTests}</failIfNoTests>
<forkCount>1</forkCount>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
- <version>3.7</version>
+ <version>${commons-lang3.version}</version>
</dependency>
<dependency>
<groupId>org.junit.platform</groupId>
</dependency>
</dependencies>
</plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>exec-maven-plugin</artifactId>
+ <version>${exec-maven-plugin.version}</version>
+ </plugin>
</plugins>
</pluginManagement>
- <plugins>
- <plugin>
- <artifactId>maven-checkstyle-plugin</artifactId>
- <version>2.17</version>
- <dependencies>
- <dependency>
- <groupId>org.onap.oparent</groupId>
- <artifactId>checkstyle</artifactId>
- <version>1.1.1</version>
- </dependency>
- </dependencies>
- <executions>
- <execution>
- <!-- To override oparent configuration different id must be used
- We need to override it to include .kt files in check. -->
- <id>check-license-kotlin</id>
- <goals>
- <goal>check</goal>
- </goals>
- <phase>process-sources</phase>
- <configuration>
- <configLocation>onap-checkstyle/check-license.xml</configLocation>
- <includeResources>false</includeResources>
- <includeTestSourceDirectory>true</includeTestSourceDirectory>
- <includeTestResources>false</includeTestResources>
- <includes>**\/*.kt</includes>
- <consoleOutput>true</consoleOutput>
- <!--<failOnViolation>false</failOnViolation>-->
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <version>1.8</version>
- <executions>
- <execution>
- <!-- This can be run separately with mvn antrun:run@detekt -->
- <id>detekt</id>
- <phase>verify</phase>
- <goals>
- <goal>run</goal>
- </goals>
- <configuration>
- <target name="detekt" unless="${skipAnalysis}">
- <java taskname="detekt" dir="${basedir}"
- fork="true"
- failonerror="true"
- classname="io.gitlab.arturbosch.detekt.cli.Main"
- classpathref="maven.plugin.classpath">
- <arg value="--input"/>
- <arg value="${basedir}/src/main/kotlin"/>
- <arg value="--config-resource"/>
- <arg value="onap-detekt-config.yml"/>
- <arg value="--filters"/>
- <arg value=".*/target/.*,.*/resources/.*"/>
- <arg value="--output"/>
- <arg value="${basedir}/target/reports"/>
- <arg value="--output-name"/>
- <arg value="detekt-report"/>
- <arg value="--baseline"/>
- <arg value="${basedir}/target/reports/baseline.xml"/>
- </java>
- </target>
- </configuration>
- </execution>
- </executions>
- <dependencies>
- <dependency>
- <groupId>io.gitlab.arturbosch.detekt</groupId>
- <artifactId>detekt-cli</artifactId>
- <version>1.0.0.RC7</version>
- </dependency>
- <dependency>
- <groupId>${project.groupId}</groupId>
- <artifactId>hv-collector-analysis</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
- </plugin>
- </plugins>
<extensions>
<extension>
<groupId>kr.motd.maven</groupId>
<artifactId>os-maven-plugin</artifactId>
- <version>1.6.0</version>
+ <version>${os-maven-plugin.version}</version>
</extension>
</extensions>
</build>
<profiles>
+ <profile>
+ <id>docker-proxy</id>
+ <activation>
+ <property>
+ <name>docker.http_proxy</name>
+ </property>
+ </activation>
+ <properties>
+ <!-- set build args as defined in https://dmp.fabric8.io/#build-buildargs -->
+ <docker.buildArg.http_proxy>${docker.http_proxy}</docker.buildArg.http_proxy>
+ <docker.buildArg.https_proxy>${docker.http_proxy}</docker.buildArg.https_proxy>
+ </properties>
+ </profile>
+
<profile>
<id>docker</id>
<activation>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
- <version>3.1.1</version>
+ <version>${maven-dependency-plugin.version}</version>
<executions>
<execution>
<id>docker-copy-internal-deps</id>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
- <version>0.26.0</version>
+ <version>${docker-maven-plugin.version}</version>
<executions>
<execution>
<id>docker-build-image</id>
</execution>
</executions>
<configuration>
+ <skipPush>${skipDockerPush}</skipPush>
<verbose>true</verbose>
<imagePullPolicy>IfNotPresent</imagePullPolicy>
<images>
<image>
<alias>${project.artifactId}</alias>
- <name>${docker-image.namespace}/${docker-image.name}
+ <name>${docker-image.namespace}/${docker-image.name}:${project.version}
</name>
<registry>${docker-image.registry}</registry>
<build>
- <!--
- <args>
- <http_proxy>${docker.http_proxy}</http_proxy>
- <https_proxy>${docker.http_proxy}</https_proxy>
- </args>
- -->
<dockerFileDir>${project.basedir}</dockerFileDir>
<tags>
- <tag>${project.version}-SNAPSHOT-${maven.build.timestamp}Z</tag>
- <tag>${project.version}</tag>
- <tag>latest</tag>
+ <tag>${project.version}-${maven.build.timestamp}Z</tag>
+ <tag>${docker-image.latest}</tag>
</tags>
</build>
</image>
</images>
</configuration>
- <dependencies>
- <dependency>
- <groupId>io.fabric8</groupId>
- <artifactId>run-java-sh</artifactId>
- <version>1.2.2</version>
- </dependency>
- </dependencies>
</plugin>
</plugins>
</pluginManagement>
<pluginRepositories>
<pluginRepository>
- <id>40_openecomp-release</id>
- <name>40_openecomp-release</name>
- <url>https://nexus.onap.org/content/repositories/releases/</url>
+ <id>kotlinx-repository</id>
+ <name>kotlinx-repository</name>
+ <url>https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven</url>
<releases>
<enabled>true</enabled>
- <updatePolicy>daily</updatePolicy>
+ <updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>false</enabled>
+ <updatePolicy>never</updatePolicy>
</snapshots>
</pluginRepository>
+ </pluginRepositories>
- <pluginRepository>
- <id>arturbosch-code-analysis</id>
- <name>arturbosch-code-analysis (for detekt)</name>
- <url>https://dl.bintray.com/arturbosch/code-analysis/</url>
- <layout>default</layout>
+ <repositories>
+ <repository>
+ <id>kotlinx-repository</id>
+ <name>kotlinx-repository</name>
+ <url>https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven/</url>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
<enabled>false</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>
- </pluginRepository>
- </pluginRepositories>
-
- <repositories>
+ </repository>
<repository>
<id>40_openecomp-release</id>
<name>40_openecomp-release</name>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
- <version>25.0-jre</version>
+ <version>${guava.version}</version>
<exclusions>
<exclusion>
<groupId>com.google.code.findbugs</groupId>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
- <artifactId>kotlin-stdlib-jdk8</artifactId>
+ <artifactId>kotlin-bom</artifactId>
<version>${kotlin.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
- <artifactId>kotlin-reflect</artifactId>
+ <artifactId>kotlin-compiler-embeddable</artifactId>
<version>${kotlin.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.jetbrains.kotlin</groupId>
+ <artifactId>kotlin-scripting-compiler-embeddable</artifactId>
+ <version>${kotlin.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jetbrains.kotlin</groupId>
+ <artifactId>kotlin-script-util</artifactId>
+ <version>${kotlin.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jetbrains.kotlinx</groupId>
+ <artifactId>kotlinx-coroutines-core</artifactId>
+ <version>${coroutines.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.google.code.gson</groupId>
+ <artifactId>gson</artifactId>
+ <version>${gson.version}</version>
+ </dependency>
<dependency>
<groupId>io.arrow-kt</groupId>
- <artifactId>arrow-core</artifactId>
+ <artifactId>arrow-core-data</artifactId>
<version>${arrow.version}</version>
- <exclusions>
- <exclusion>
- <groupId>org.jetbrains.kotlin</groupId>
- <artifactId>kotlin-stdlib</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.jetbrains.kotlin</groupId>
- <artifactId>kotlin-stdlib-jdk7</artifactId>
- </exclusion>
- </exclusions>
</dependency>
<dependency>
<groupId>io.arrow-kt</groupId>
- <artifactId>arrow-syntax</artifactId>
+ <artifactId>arrow-core-extensions</artifactId>
<version>${arrow.version}</version>
</dependency>
<dependency>
<groupId>io.arrow-kt</groupId>
- <artifactId>arrow-instances-core</artifactId>
+ <artifactId>arrow-extras-data</artifactId>
<version>${arrow.version}</version>
</dependency>
<dependency>
<groupId>io.arrow-kt</groupId>
- <artifactId>arrow-instances-data</artifactId>
+ <artifactId>arrow-syntax</artifactId>
<version>${arrow.version}</version>
</dependency>
<dependency>
<groupId>io.arrow-kt</groupId>
- <artifactId>arrow-effects</artifactId>
+ <artifactId>arrow-typeclasses</artifactId>
<version>${arrow.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.3.0-alpha4</version>
+ <version>${logback-classic.version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
- <version>1.8.0-beta1</version>
+ <version>${slf4j-api.version}</version>
</dependency>
<dependency>
<groupId>io.projectreactor</groupId>
<artifactId>reactor-bom</artifactId>
- <version>Bismuth-SR10</version>
+ <!-- remember to update netty native bindings versions -->
+ <version>${reactor-bom.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
+ <!-- Due to security reasons, override transitive kafka-clients dependency version (2.0.0 -> 2.3.1) -->
<dependency>
- <groupId>io.netty</groupId>
- <artifactId>netty-tcnative-boringssl-static</artifactId>
- <version>2.0.8.Final</version>
- <classifier>${os.detected.classifier}</classifier>
+ <groupId>org.apache.kafka</groupId>
+ <artifactId>kafka-clients</artifactId>
+ <version>${kafka-clients.version}</version>
</dependency>
+ <!--
+ Disable native extension (epoll) on production for now.
+ Might be reintroduced if performance tests prove there is some performance issue.
+ -->
+ <!--
<dependency>
- <groupId>com.google.protobuf</groupId>
- <artifactId>protobuf-java</artifactId>
- <version>${protobuf.version}</version>
+ <groupId>io.netty</groupId>
+ <artifactId>netty-transport-native-epoll</artifactId>
+ <version>4.1.29.Final</version>
+ <classifier>${os.detected.classifier}</classifier>
</dependency>
+ -->
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java-util</artifactId>
<version>${protobuf.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
- <version>1.4</version>
+ <version>${commons-cli.version}</version>
</dependency>
<dependency>
<groupId>javax.json</groupId>
<artifactId>javax.json-api</artifactId>
- <version>1.1.2</version>
+ <version>${javax.json-api.version}</version>
</dependency>
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
- <version>1.1.2</version>
+ <version>${javax.json.version}</version>
</dependency>
<dependency>
- <groupId>io.ratpack</groupId>
- <artifactId>ratpack-core</artifactId>
- <version>1.5.4</version>
+ <groupId>io.micrometer</groupId>
+ <artifactId>micrometer-registry-prometheus</artifactId>
+ <version>${micrometer-registry-prometheus.version}</version>
</dependency>
<dependency>
- <groupId>io.micrometer</groupId>
- <artifactId>micrometer-registry-jmx</artifactId>
- <version>1.0.5</version>
+ <groupId>org.onap.dcaegen2.services.sdk</groupId>
+ <artifactId>hvvesclient-producer-impl</artifactId>
+ <version>${sdk.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.onap.dcaegen2.services.sdk</groupId>
+ <artifactId>hvvesclient-producer-api</artifactId>
+ <version>${sdk.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.onap.dcaegen2.services.sdk</groupId>
+ <artifactId>hvvesclient-protobuf</artifactId>
+ <version>${sdk.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.onap.dcaegen2.services.sdk.security</groupId>
+ <artifactId>ssl</artifactId>
+ <version>${sdk.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
+ <artifactId>cbs-client</artifactId>
+ <version>${sdk.version}</version>
</dependency>
<!-- Test dependencies -->
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
- <version>3.9.1</version>
+ <version>${assertj-core.version}</version>
<scope>test</scope>
</dependency>
<dependency>
- <groupId>com.nhaarman</groupId>
+ <groupId>com.nhaarman.mockitokotlin2</groupId>
<artifactId>mockito-kotlin</artifactId>
- <version>1.5.0</version>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-core</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-core</artifactId>
- <version>2.18.3</version>
+ <version>${mockito-kotlin.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<scope>test</scope>
</dependency>
<dependency>
- <groupId>io.projectreactor</groupId>
- <artifactId>reactor-test</artifactId>
- <version>3.1.7.RELEASE</version>
+ <groupId>org.jetbrains.kotlinx</groupId>
+ <artifactId>kotlinx-coroutines-test</artifactId>
+ <version>${coroutines.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
</project>
-
-