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

total 59 tests

Former-commit-id: 7741639b
parent 4b7d7e0c
Branches
Tags
1 merge request!23Sprint results
......@@ -29,6 +29,7 @@ build-metadata-db:
test-backend-container:
stage: test
script:
- docker system prune -f
- "./fda-container-service/rest-service/src/test/resources/integration-test.before"
- "mvn -f fda-container-service/pom.xml clean test verify"
- "./fda-container-service/rest-service/src/test/resources/integration-test.after"
......@@ -49,6 +50,7 @@ test-backend-container:
test-backend-database:
stage: test
script:
- docker system prune -f
- "./fda-database-service/rest-service/src/test/resources/integration-test.before"
- "mvn -f fda-database-service/pom.xml clean test verify"
- "./fda-database-service/rest-service/src/test/resources/integration-test.after"
......@@ -81,6 +83,7 @@ test-backend-gateway:
test-backend-query:
stage: test
script:
- docker system prune -f
- "./fda-query-service/rest-service/src/test/resources/integration-test.before"
- "mvn -f fda-query-service/pom.xml clean test verify"
- "./fda-query-service/rest-service/src/test/resources/integration-test.after"
......@@ -101,6 +104,7 @@ test-backend-query:
test-backend-table:
stage: test
script:
- docker system prune -f
- "./fda-table-service/rest-service/src/test/resources/integration-test.before"
- "mvn -f fda-table-service/pom.xml clean test verify"
- "./fda-table-service/rest-service/src/test/resources/integration-test.after"
......
......@@ -3,11 +3,10 @@ package at.tuwien.service;
import at.tuwien.BaseUnitTest;
import at.tuwien.api.container.ContainerCreateRequestDto;
import at.tuwien.api.container.ContainerStateDto;
import at.tuwien.api.container.image.ImageCreateDto;
import at.tuwien.entities.container.Container;
import at.tuwien.entities.container.image.ContainerImage;
import at.tuwien.exception.ContainerNotFoundException;
import at.tuwien.exception.ContainerNotRunningException;
import at.tuwien.exception.ContainerStillRunningException;
import at.tuwien.exception.DockerClientException;
import at.tuwien.repository.ContainerRepository;
import at.tuwien.repository.ImageRepository;
......@@ -17,7 +16,6 @@ import com.github.dockerjava.api.exception.NotModifiedException;
import com.github.dockerjava.api.model.*;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -27,7 +25,6 @@ import org.springframework.test.context.junit.jupiter.SpringExtension;
import javax.transaction.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import static org.junit.jupiter.api.Assertions.*;
......@@ -40,9 +37,6 @@ public class ContainerServiceIntegrationTest extends BaseUnitTest {
@Autowired
private ContainerService containerService;
@Autowired
private ImageService imageService;
@Autowired
private HostConfig hostConfig;
......@@ -55,6 +49,9 @@ public class ContainerServiceIntegrationTest extends BaseUnitTest {
@Autowired
private DockerClient dockerClient;
private Long CONTAINER_1_ID, CONTAINER_2_ID;
private String CONTAINER_1_HASH;
@Transactional
@BeforeEach
public void beforeEach() {
......@@ -68,6 +65,7 @@ public class ContainerServiceIntegrationTest extends BaseUnitTest {
.withEnableIpv6(false)
.exec();
imageRepository.save(IMAGE_1);
imageRepository.save(IMAGE_2);
/* create container */
final CreateContainerResponse request = dockerClient.createContainerCmd(IMAGE_1_REPOSITORY + ":" + IMAGE_1_TAG)
.withEnv(IMAGE_1_ENVIRONMENT)
......@@ -79,8 +77,10 @@ public class ContainerServiceIntegrationTest extends BaseUnitTest {
.exec();
/* start container */
dockerClient.startContainerCmd(request.getId()).exec();
CONTAINER_1.setHash(request.getId());
containerRepository.save(CONTAINER_1);
CONTAINER_1_HASH = request.getId();
CONTAINER_1.setHash(CONTAINER_1_HASH);
CONTAINER_1_ID = containerRepository.save(CONTAINER_1).getId();
CONTAINER_2_ID = containerRepository.save(CONTAINER_2).getId();
}
@Transactional
......@@ -115,29 +115,29 @@ public class ContainerServiceIntegrationTest extends BaseUnitTest {
public void findIpAddress_succeeds() throws ContainerNotRunningException {
/* test */
final Map<String, String> response = containerService.findIpAddresses(CONTAINER_1.getHash());
final Map<String, String> response = containerService.findIpAddresses(CONTAINER_1_HASH);
assertTrue(response.containsKey("fda-userdb"));
assertEquals(CONTAINER_1_IP, response.get("fda-userdb"));
}
@Test
public void findIpAddress_notRunning_fails() {
dockerClient.stopContainerCmd(CONTAINER_1.getHash()).exec();
dockerClient.stopContainerCmd(CONTAINER_1_HASH).exec();
/* test */
assertThrows(ContainerNotRunningException.class, () -> {
containerService.findIpAddresses(CONTAINER_1.getHash());
containerService.findIpAddresses(CONTAINER_1_HASH);
});
}
@Test
public void findIpAddress_notFound_fails() {
dockerClient.stopContainerCmd(CONTAINER_1.getHash()).exec();
dockerClient.removeContainerCmd(CONTAINER_1.getHash()).exec();
dockerClient.stopContainerCmd(CONTAINER_1_HASH).exec();
dockerClient.removeContainerCmd(CONTAINER_1_HASH).exec();
/* test */
assertThrows(ContainerNotFoundException.class, () -> {
containerService.findIpAddresses(CONTAINER_1.getHash());
containerService.findIpAddresses(CONTAINER_1_HASH);
});
}
......@@ -145,18 +145,18 @@ public class ContainerServiceIntegrationTest extends BaseUnitTest {
public void getContainerState_succeeds() {
/* test */
final ContainerStateDto response = containerService.getContainerState(CONTAINER_1.getHash());
final ContainerStateDto response = containerService.getContainerState(CONTAINER_1_HASH);
assertEquals(ContainerStateDto.RUNNING, response);
}
@Test
public void getContainerState_notFound_fails() {
dockerClient.stopContainerCmd(CONTAINER_1.getHash()).exec();
dockerClient.removeContainerCmd(CONTAINER_1.getHash()).exec();
dockerClient.stopContainerCmd(CONTAINER_1_HASH).exec();
dockerClient.removeContainerCmd(CONTAINER_1_HASH).exec();
/* test */
assertThrows(DockerClientException.class, () -> {
containerService.getContainerState(CONTAINER_1.getHash());
containerService.getContainerState(CONTAINER_1_HASH);
});
}
......@@ -185,7 +185,7 @@ public class ContainerServiceIntegrationTest extends BaseUnitTest {
@Test
public void change_start_succeeds() {
dockerClient.stopContainerCmd(CONTAINER_1.getHash()).exec();
dockerClient.stopContainerCmd(CONTAINER_1_HASH).exec();
/* test */
containerService.start(CONTAINER_1_ID);
......@@ -198,4 +198,48 @@ public class ContainerServiceIntegrationTest extends BaseUnitTest {
containerService.stop(CONTAINER_1_ID);
}
@Test
public void change_stop_notFoundDocker_fails() {
/* test */
assertThrows(DockerClientException.class, () -> {
containerService.stop(CONTAINER_2_ID);
});
}
@Test
public void remove_succeeds() {
dockerClient.stopContainerCmd(CONTAINER_1_HASH).exec();
/* test */
containerService.remove(CONTAINER_1_ID);
}
@Test
public void remove_notFound_fails() {
/* test */
assertThrows(ContainerNotFoundException.class, () -> {
containerService.remove(9999999L);
});
}
@Test
public void remove_docker_fails() {
/* test */
assertThrows(DockerClientException.class, () -> {
containerService.remove(CONTAINER_2_ID);
});
}
@Test
public void remove_stillRunning_fails() {
/* test */
assertThrows(ContainerStillRunningException.class, () -> {
containerService.remove(CONTAINER_1_ID);
});
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment