Integration tests structure unified, unnecessary imports removed (#1711)
Co-authored-by: iliax <ikuramshin@provectus.com>
This commit is contained in:
parent
f7e7bc0e38
commit
a8fc61dcff
16 changed files with 29 additions and 88 deletions
|
@ -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";
|
||||
|
|
@ -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<String, Object> config = Map.of(
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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<TopicMessageEventDTO> 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,
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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();
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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(
|
||||
"{"
|
||||
|
|
|
@ -1,11 +1,3 @@
|
|||
kafka:
|
||||
clusters:
|
||||
-
|
||||
name: local
|
||||
bootstrapServers: localhost:9093
|
||||
zookeeper: localhost:2181
|
||||
schemaRegistry: http://localhost:8081
|
||||
jmxPort: 9997
|
||||
spring:
|
||||
jmx:
|
||||
enabled: true
|
||||
|
|
Loading…
Add table
Reference in a new issue