diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/AbstractBaseTest.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/AbstractIntegrationTest.java similarity index 91% rename from kafka-ui-api/src/test/java/com/provectus/kafka/ui/AbstractBaseTest.java rename to kafka-ui-api/src/test/java/com/provectus/kafka/ui/AbstractIntegrationTest.java index b12d3ab903..b98f4a0d00 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/AbstractBaseTest.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/AbstractIntegrationTest.java @@ -11,20 +11,22 @@ import org.jetbrains.annotations.NotNull; import org.junit.jupiter.api.extension.ExtendWith; import org.junit.jupiter.api.function.ThrowingConsumer; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.ApplicationContextInitializer; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.test.context.ActiveProfiles; -import org.springframework.test.context.junit.jupiter.SpringExtension; +import org.springframework.test.context.ContextConfiguration; import org.testcontainers.containers.KafkaContainer; import org.testcontainers.containers.Network; import org.testcontainers.utility.DockerImageName; -@ExtendWith(SpringExtension.class) @SpringBootTest @ActiveProfiles("test") -public abstract class AbstractBaseTest { +@AutoConfigureWebTestClient(timeout = "60000") +@ContextConfiguration(initializers = {AbstractIntegrationTest.Initializer.class}) +public abstract class AbstractIntegrationTest { public static final String LOCAL = "local"; public static final String SECOND_LOCAL = "secondLocal"; diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConnectServiceTests.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConnectServiceTests.java index a88ba72bbe..e886a0884d 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConnectServiceTests.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConnectServiceTests.java @@ -21,15 +21,11 @@ import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient; import org.springframework.core.ParameterizedTypeReference; -import org.springframework.test.context.ContextConfiguration; import org.springframework.test.web.reactive.server.WebTestClient; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) @Slf4j -@AutoConfigureWebTestClient(timeout = "60000") -public class KafkaConnectServiceTests extends AbstractBaseTest { +public class KafkaConnectServiceTests extends AbstractIntegrationTest { private final String connectName = "kafka-connect"; private final String connectorName = UUID.randomUUID().toString(); private final Map config = Map.of( diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConsumerGroupTests.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConsumerGroupTests.java index f98ea2cb09..17e7a19ee7 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConsumerGroupTests.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConsumerGroupTests.java @@ -21,14 +21,10 @@ import org.apache.kafka.common.serialization.BytesDeserializer; import org.apache.kafka.common.utils.Bytes; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient; -import org.springframework.test.context.ContextConfiguration; import org.springframework.test.web.reactive.server.WebTestClient; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) @Slf4j -@AutoConfigureWebTestClient(timeout = "10000") -public class KafkaConsumerGroupTests extends AbstractBaseTest { +public class KafkaConsumerGroupTests extends AbstractIntegrationTest { @Autowired WebTestClient webTestClient; diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConsumerTests.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConsumerTests.java index 96e8cf371e..d248edf5e8 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConsumerTests.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaConsumerTests.java @@ -19,16 +19,12 @@ import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient; -import org.springframework.test.context.ContextConfiguration; import org.springframework.test.web.reactive.server.WebTestClient; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) @Slf4j -@AutoConfigureWebTestClient(timeout = "60000") -public class KafkaConsumerTests extends AbstractBaseTest { +public class KafkaConsumerTests extends AbstractIntegrationTest { @Autowired private WebTestClient webTestClient; diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaTopicCreateTests.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaTopicCreateTests.java index a301bee396..558695556a 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaTopicCreateTests.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/KafkaTopicCreateTests.java @@ -2,18 +2,12 @@ package com.provectus.kafka.ui; import com.provectus.kafka.ui.model.TopicCreationDTO; import java.util.UUID; -import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient; -import org.springframework.test.context.ContextConfiguration; import org.springframework.test.web.reactive.server.WebTestClient; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) -@Slf4j -@AutoConfigureWebTestClient(timeout = "10000") -public class KafkaTopicCreateTests extends AbstractBaseTest { +public class KafkaTopicCreateTests extends AbstractIntegrationTest { @Autowired private WebTestClient webTestClient; private TopicCreationDTO topicCreation; diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/ReadOnlyModeTests.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/ReadOnlyModeTests.java index 9aa7f7cfac..2d4afa7d1c 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/ReadOnlyModeTests.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/ReadOnlyModeTests.java @@ -4,18 +4,12 @@ import com.provectus.kafka.ui.model.TopicCreationDTO; import com.provectus.kafka.ui.model.TopicUpdateDTO; import java.util.Map; import java.util.UUID; -import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient; import org.springframework.http.HttpStatus; -import org.springframework.test.context.ContextConfiguration; import org.springframework.test.web.reactive.server.WebTestClient; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) -@Slf4j -@AutoConfigureWebTestClient(timeout = "60000") -public class ReadOnlyModeTests extends AbstractBaseTest { +public class ReadOnlyModeTests extends AbstractIntegrationTest { @Autowired private WebTestClient webTestClient; diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/SchemaRegistryServiceTests.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/SchemaRegistryServiceTests.java index 2bf5e2e82c..354b5eb4a5 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/SchemaRegistryServiceTests.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/SchemaRegistryServiceTests.java @@ -13,18 +13,14 @@ import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient; import org.springframework.http.MediaType; -import org.springframework.test.context.ContextConfiguration; import org.springframework.test.web.reactive.server.EntityExchangeResult; import org.springframework.test.web.reactive.server.WebTestClient; import org.springframework.web.reactive.function.BodyInserters; import reactor.core.publisher.Mono; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) @Slf4j -@AutoConfigureWebTestClient(timeout = "10000") -class SchemaRegistryServiceTests extends AbstractBaseTest { +class SchemaRegistryServiceTests extends AbstractIntegrationTest { @Autowired WebTestClient webTestClient; String subject; diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/emitter/TailingEmitterTest.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/emitter/TailingEmitterTest.java index 48ce2cac38..9cdf28128a 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/emitter/TailingEmitterTest.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/emitter/TailingEmitterTest.java @@ -2,7 +2,7 @@ package com.provectus.kafka.ui.emitter; import static org.assertj.core.api.Assertions.assertThat; -import com.provectus.kafka.ui.AbstractBaseTest; +import com.provectus.kafka.ui.AbstractIntegrationTest; import com.provectus.kafka.ui.model.ConsumerPosition; import com.provectus.kafka.ui.model.MessageFilterTypeDTO; import com.provectus.kafka.ui.model.SeekDirectionDTO; @@ -24,18 +24,11 @@ import org.apache.kafka.common.serialization.StringSerializer; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationContext; -import org.springframework.test.context.ContextConfiguration; import org.testcontainers.shaded.org.awaitility.Awaitility; import reactor.core.Disposable; import reactor.core.publisher.Flux; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) -class TailingEmitterTest extends AbstractBaseTest { - - @Autowired - private ApplicationContext ctx; +class TailingEmitterTest extends AbstractIntegrationTest { private String topic; @@ -112,11 +105,11 @@ class TailingEmitterTest extends AbstractBaseTest { private Flux createTailingFlux( String topicName, String query) { - var cluster = ctx.getBean(ClustersStorage.class) + var cluster = applicationContext.getBean(ClustersStorage.class) .getClusterByName(LOCAL) .get(); - return ctx.getBean(MessagesService.class) + return applicationContext.getBean(MessagesService.class) .loadMessages(cluster, topicName, new ConsumerPosition(SeekTypeDTO.LATEST, Map.of(), SeekDirectionDTO.TAILING), query, diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/BrokerServiceTest.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/BrokerServiceTest.java index 7d2d7b78f3..33e90e3b0b 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/BrokerServiceTest.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/BrokerServiceTest.java @@ -1,14 +1,12 @@ package com.provectus.kafka.ui.service; -import com.provectus.kafka.ui.AbstractBaseTest; +import com.provectus.kafka.ui.AbstractIntegrationTest; import com.provectus.kafka.ui.model.BrokerDTO; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.test.context.ContextConfiguration; import reactor.test.StepVerifier; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) -class BrokerServiceTest extends AbstractBaseTest { +class BrokerServiceTest extends AbstractIntegrationTest { @Autowired private BrokerService brokerService; diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/ConfigTest.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/ConfigTest.java index f696220bb7..290a926ccf 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/ConfigTest.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/ConfigTest.java @@ -2,7 +2,7 @@ package com.provectus.kafka.ui.service; import static org.assertj.core.api.Assertions.assertThat; -import com.provectus.kafka.ui.AbstractBaseTest; +import com.provectus.kafka.ui.AbstractIntegrationTest; import com.provectus.kafka.ui.model.BrokerConfigDTO; import java.time.Duration; import java.util.List; @@ -10,15 +10,11 @@ import java.util.Map; import java.util.Optional; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient; import org.springframework.core.ParameterizedTypeReference; -import org.springframework.test.context.ContextConfiguration; import org.springframework.test.web.reactive.server.WebTestClient; import org.testcontainers.shaded.org.awaitility.Awaitility; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) -@AutoConfigureWebTestClient(timeout = "60000") -public class ConfigTest extends AbstractBaseTest { +public class ConfigTest extends AbstractIntegrationTest { @Autowired private WebTestClient webTestClient; diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/LogDirsTest.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/LogDirsTest.java index e95550ecdf..af410871e1 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/LogDirsTest.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/LogDirsTest.java @@ -2,7 +2,7 @@ package com.provectus.kafka.ui.service; import static org.assertj.core.api.Assertions.assertThat; -import com.provectus.kafka.ui.AbstractBaseTest; +import com.provectus.kafka.ui.AbstractIntegrationTest; import com.provectus.kafka.ui.exception.LogDirNotFoundApiException; import com.provectus.kafka.ui.exception.TopicOrPartitionNotFoundException; import com.provectus.kafka.ui.model.BrokerTopicLogdirsDTO; @@ -12,14 +12,10 @@ import java.util.List; import java.util.Map; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient; import org.springframework.core.ParameterizedTypeReference; -import org.springframework.test.context.ContextConfiguration; import org.springframework.test.web.reactive.server.WebTestClient; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) -@AutoConfigureWebTestClient(timeout = "60000") -public class LogDirsTest extends AbstractBaseTest { +public class LogDirsTest extends AbstractIntegrationTest { @Autowired private WebTestClient webTestClient; diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/MessagesServiceTest.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/MessagesServiceTest.java index b999a23730..e866bb28c2 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/MessagesServiceTest.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/MessagesServiceTest.java @@ -1,6 +1,6 @@ package com.provectus.kafka.ui.service; -import com.provectus.kafka.ui.AbstractBaseTest; +import com.provectus.kafka.ui.AbstractIntegrationTest; import com.provectus.kafka.ui.exception.TopicNotFoundException; import com.provectus.kafka.ui.model.CreateTopicMessageDTO; import com.provectus.kafka.ui.model.KafkaCluster; @@ -9,11 +9,9 @@ import java.util.UUID; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.test.context.ContextConfiguration; import reactor.test.StepVerifier; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) -class MessagesServiceTest extends AbstractBaseTest { +class MessagesServiceTest extends AbstractIntegrationTest { private static final String NON_EXISTING_TOPIC = UUID.randomUUID().toString(); diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/OffsetsResetServiceTest.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/OffsetsResetServiceTest.java index 4fe49b5e29..966e0ec763 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/OffsetsResetServiceTest.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/OffsetsResetServiceTest.java @@ -2,7 +2,7 @@ package com.provectus.kafka.ui.service; import static org.assertj.core.api.Assertions.assertThat; -import com.provectus.kafka.ui.AbstractBaseTest; +import com.provectus.kafka.ui.AbstractIntegrationTest; import com.provectus.kafka.ui.exception.NotFoundException; import com.provectus.kafka.ui.exception.ValidationException; import com.provectus.kafka.ui.model.KafkaCluster; @@ -30,12 +30,10 @@ import org.apache.kafka.common.utils.Bytes; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.springframework.test.context.ContextConfiguration; import reactor.core.publisher.Mono; import reactor.test.StepVerifier; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) -public class OffsetsResetServiceTest extends AbstractBaseTest { +public class OffsetsResetServiceTest extends AbstractIntegrationTest { private static final int PARTITIONS = 5; diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/RecordEmitterTest.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/RecordEmitterTest.java index e947486da6..05d8da3786 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/RecordEmitterTest.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/RecordEmitterTest.java @@ -7,7 +7,7 @@ import static com.provectus.kafka.ui.model.SeekTypeDTO.OFFSET; import static com.provectus.kafka.ui.model.SeekTypeDTO.TIMESTAMP; import static org.assertj.core.api.Assertions.assertThat; -import com.provectus.kafka.ui.AbstractBaseTest; +import com.provectus.kafka.ui.AbstractIntegrationTest; import com.provectus.kafka.ui.emitter.BackwardRecordEmitter; import com.provectus.kafka.ui.emitter.ForwardRecordEmitter; import com.provectus.kafka.ui.model.ConsumerPosition; @@ -40,14 +40,12 @@ import org.apache.kafka.common.utils.Bytes; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; -import org.springframework.test.context.ContextConfiguration; import reactor.core.publisher.Flux; import reactor.core.publisher.FluxSink; import reactor.test.StepVerifier; @Slf4j -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) -class RecordEmitterTest extends AbstractBaseTest { +class RecordEmitterTest extends AbstractIntegrationTest { static final int PARTITIONS = 5; static final int MSGS_PER_PARTITION = 100; diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/SendAndReadTests.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/SendAndReadTests.java index d7e7e8e02c..c9be9666d2 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/SendAndReadTests.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/service/SendAndReadTests.java @@ -3,7 +3,7 @@ package com.provectus.kafka.ui.service; import static org.assertj.core.api.Assertions.assertThat; import com.fasterxml.jackson.databind.ObjectMapper; -import com.provectus.kafka.ui.AbstractBaseTest; +import com.provectus.kafka.ui.AbstractIntegrationTest; import com.provectus.kafka.ui.model.ConsumerPosition; import com.provectus.kafka.ui.model.CreateTopicMessageDTO; import com.provectus.kafka.ui.model.KafkaCluster; @@ -27,11 +27,9 @@ import org.apache.kafka.common.TopicPartition; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.test.context.ContextConfiguration; import reactor.test.StepVerifier; -@ContextConfiguration(initializers = {AbstractBaseTest.Initializer.class}) -public class SendAndReadTests extends AbstractBaseTest { +public class SendAndReadTests extends AbstractIntegrationTest { private static final AvroSchema AVRO_SCHEMA_1 = new AvroSchema( "{" diff --git a/kafka-ui-api/src/test/resources/application-test.yml b/kafka-ui-api/src/test/resources/application-test.yml index 4ca75ff82a..5709d14528 100644 --- a/kafka-ui-api/src/test/resources/application-test.yml +++ b/kafka-ui-api/src/test/resources/application-test.yml @@ -1,11 +1,3 @@ -kafka: - clusters: - - - name: local - bootstrapServers: localhost:9093 - zookeeper: localhost:2181 - schemaRegistry: http://localhost:8081 - jmxPort: 9997 spring: jmx: enabled: true