Skip to content
Snippets Groups Projects
Unverified Commit a44282fc authored by Martin Weise's avatar Martin Weise
Browse files

Fixed database service

parent aadf0e28
No related branches found
No related tags found
1 merge request!106Dev
package at.tuwien.service;
import at.tuwien.BaseUnitTest;
import at.tuwien.config.IndexInitializer;
import at.tuwien.config.ReadyConfig;
import at.tuwien.exception.AmqpException;
import at.tuwien.exception.BrokerVirtualHostCreationException;
......@@ -22,6 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.context.annotation.Profile;
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
import org.springframework.test.context.ActiveProfiles;
import org.springframework.test.context.junit.jupiter.SpringExtension;
......@@ -35,14 +37,14 @@ import static at.tuwien.config.DockerConfig.hostConfig;
@Log4j2
@SpringBootTest
@ExtendWith(SpringExtension.class)
@ActiveProfiles("test-noelastic")
public class AmqpServiceIntegrationTest extends BaseUnitTest {
private static final String AMQP_EXCHANGE = "fda";
@MockBean
private ReadyConfig readyConfig;
@MockBean
private IndexInitializer indexInitializer;
@Autowired
private Channel channel;
......@@ -118,7 +120,7 @@ public class AmqpServiceIntegrationTest extends BaseUnitTest {
}
@Test
public void createExchange_succeeds() throws AmqpException, IOException, BrokerVirtualHostCreationException {
public void createExchange_succeeds() throws AmqpException, IOException {
final Principal principal = new BasicUserPrincipal(USER_1_USERNAME);
/* mock */
......
......@@ -3,6 +3,7 @@ package at.tuwien.service;
import at.tuwien.BaseUnitTest;
import at.tuwien.api.database.DatabaseCreateDto;
import at.tuwien.config.DockerConfig;
import at.tuwien.config.IndexInitializer;
import at.tuwien.config.ReadyConfig;
import at.tuwien.entities.container.Container;
import at.tuwien.entities.database.Database;
......@@ -45,6 +46,9 @@ public class DatabaseServiceIntegrationTest extends BaseUnitTest {
@MockBean
private ReadyConfig readyConfig;
@MockBean
private IndexInitializer indexInitializer;
@MockBean
private Channel channel;
......
......@@ -2,6 +2,7 @@ package at.tuwien.service;
import at.tuwien.BaseUnitTest;
import at.tuwien.api.database.DatabaseCreateDto;
import at.tuwien.config.IndexInitializer;
import at.tuwien.config.ReadyConfig;
import at.tuwien.entities.container.Container;
import at.tuwien.entities.database.Database;
......@@ -39,12 +40,14 @@ import static org.mockito.Mockito.*;
@Log4j2
@SpringBootTest
@ExtendWith(SpringExtension.class)
@ActiveProfiles("test-noelastic")
public class DatabaseServiceUnitTest extends BaseUnitTest {
@MockBean
private ReadyConfig readyConfig;
@MockBean
private IndexInitializer indexInitializer;
@MockBean
private Channel channel;
......
......@@ -17,7 +17,4 @@ spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
spring.jpa.hibernate.ddl-auto=create-drop
spring.jpa.show-sql=false
# disable elasticsearch
spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.data.elasticsearch.ElasticsearchDataAutoConfiguration,org.springframework.boot.autoconfigure.data.elasticsearch.ElasticsearchRepositoriesAutoConfiguration,org.springframework.boot.autoconfigure.elasticsearch.ElasticsearchRestClientAutoConfiguration
spring.rabbitmq.host=broker-service
\ No newline at end of file
......@@ -4,8 +4,6 @@ import at.tuwien.entities.database.Database;
import lombok.extern.log4j.Log4j2;
import org.springframework.boot.context.event.ApplicationReadyEvent;
import org.springframework.context.event.EventListener;
import org.springframework.core.env.Environment;
import org.springframework.core.env.Profiles;
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
import org.springframework.stereotype.Component;
......@@ -14,19 +12,14 @@ import org.springframework.stereotype.Component;
@Log4j2
public class IndexInitializer {
private final Environment environment;
private final ElasticsearchOperations elasticsearchOperations;
public IndexInitializer(Environment environment, ElasticsearchOperations elasticsearchOperations) {
this.environment = environment;
public IndexInitializer(ElasticsearchOperations elasticsearchOperations) {
this.elasticsearchOperations = elasticsearchOperations;
}
@EventListener(ApplicationReadyEvent.class)
public void initIndex() {
if (environment.acceptsProfiles(Profiles.of("test-noelastic"))) {
return;
}
log.debug("creating index");
IndexCoordinates indexCoordinates = IndexCoordinates.of("databaseindex");
if (!elasticsearchOperations.indexOps(indexCoordinates).exists()) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment