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

integration tests positive

Former-commit-id: ccf14bca
parent 8a66fbf7
No related branches found
No related tags found
1 merge request!23Sprint results
...@@ -131,14 +131,14 @@ public abstract class BaseUnitTest { ...@@ -131,14 +131,14 @@ public abstract class BaseUnitTest {
public final static Long CONTAINER_2_ID = 2L; public final static Long CONTAINER_2_ID = 2L;
public final static String CONTAINER_2_HASH = "0ff1ce"; public final static String CONTAINER_2_HASH = "0ff1ce";
public final static ContainerImage CONTAINER_2_IMAGE = IMAGE_2; public final static ContainerImage CONTAINER_2_IMAGE = IMAGE_2;
public final static String CONTAINER_2_NAME = "t01"; public final static String CONTAINER_2_NAME = "fda-userdb-t01";
public final static String CONTAINER_2_INTERNALNAME = "t01"; public final static String CONTAINER_2_INTERNALNAME = "fda-userdb-t01";
public final static String CONTAINER_2_DATABASE = "tuw"; public final static String CONTAINER_2_DATABASE = "tuw";
public final static String CONTAINER_2_IP = "233.145.99.83"; public final static String CONTAINER_2_IP = "172.28.0.8";
public final static Instant CONTAINER_2_CREATED = Instant.now().minus(1, HOURS); public final static Instant CONTAINER_2_CREATED = Instant.now().minus(1, HOURS);
public final static Container CONTAINER_1 = Container.builder() public final static Container CONTAINER_1 = Container.builder()
.id(1L) .id(CONTAINER_1_ID)
.name(CONTAINER_1_NAME) .name(CONTAINER_1_NAME)
.internalName(CONTAINER_1_INTERNALNAME) .internalName(CONTAINER_1_INTERNALNAME)
.image(CONTAINER_1_IMAGE) .image(CONTAINER_1_IMAGE)
...@@ -147,7 +147,7 @@ public abstract class BaseUnitTest { ...@@ -147,7 +147,7 @@ public abstract class BaseUnitTest {
.build(); .build();
public final static Container CONTAINER_2 = Container.builder() public final static Container CONTAINER_2 = Container.builder()
.id(2L) .id(CONTAINER_2_ID)
.name(CONTAINER_2_NAME) .name(CONTAINER_2_NAME)
.internalName(CONTAINER_2_INTERNALNAME) .internalName(CONTAINER_2_INTERNALNAME)
.image(CONTAINER_2_IMAGE) .image(CONTAINER_2_IMAGE)
......
...@@ -2,8 +2,11 @@ package at.tuwien.service; ...@@ -2,8 +2,11 @@ package at.tuwien.service;
import at.tuwien.BaseUnitTest; import at.tuwien.BaseUnitTest;
import at.tuwien.api.container.ContainerCreateRequestDto; import at.tuwien.api.container.ContainerCreateRequestDto;
import at.tuwien.api.container.ContainerStateDto;
import at.tuwien.api.container.image.ImageCreateDto; import at.tuwien.api.container.image.ImageCreateDto;
import at.tuwien.entities.container.Container;
import at.tuwien.entities.container.image.ContainerImage; import at.tuwien.entities.container.image.ContainerImage;
import at.tuwien.exception.ContainerNotFoundException;
import at.tuwien.exception.ContainerNotRunningException; import at.tuwien.exception.ContainerNotRunningException;
import at.tuwien.exception.DockerClientException; import at.tuwien.exception.DockerClientException;
import at.tuwien.repository.ContainerRepository; import at.tuwien.repository.ContainerRepository;
...@@ -119,53 +122,80 @@ public class ContainerServiceIntegrationTest extends BaseUnitTest { ...@@ -119,53 +122,80 @@ public class ContainerServiceIntegrationTest extends BaseUnitTest {
@Test @Test
public void findIpAddress_notRunning_fails() { public void findIpAddress_notRunning_fails() {
dockerClient.startContainerCmd(CONTAINER_1.getHash()); dockerClient.stopContainerCmd(CONTAINER_1.getHash()).exec();
/* test */ /* test */
assertThrows(DockerClientException.class, () -> { assertThrows(ContainerNotRunningException.class, () -> {
containerService.findIpAddresses(CONTAINER_1.getHash()); containerService.findIpAddresses(CONTAINER_1.getHash());
}); });
} }
@Test @Test
public void findIpAddress_notFound_fails() { public void findIpAddress_notFound_fails() {
dockerClient.stopContainerCmd(CONTAINER_1.getHash()).exec();
dockerClient.removeContainerCmd(CONTAINER_1.getHash()).exec();
/* test */
assertThrows(ContainerNotFoundException.class, () -> {
containerService.findIpAddresses(CONTAINER_1.getHash());
});
} }
@Test @Test
public void getContainerState_succeeds() { public void getContainerState_succeeds() {
/* test */
final ContainerStateDto response = containerService.getContainerState(CONTAINER_1.getHash());
assertEquals(ContainerStateDto.RUNNING, response);
} }
@Test @Test
public void getContainerState_notFound_fails() { public void getContainerState_notFound_fails() {
dockerClient.stopContainerCmd(CONTAINER_1.getHash()).exec();
dockerClient.removeContainerCmd(CONTAINER_1.getHash()).exec();
/* test */
assertThrows(DockerClientException.class, () -> {
containerService.getContainerState(CONTAINER_1.getHash());
});
} }
@Test @Test
public void create_succeeds() { public void create_succeeds() {
final ImageCreateDto request = ImageCreateDto.builder() final ContainerCreateRequestDto request = ContainerCreateRequestDto.builder()
.repository(IMAGE_1_REPOSITORY) .repository(IMAGE_1_REPOSITORY)
.tag(IMAGE_1_TAG) .tag(IMAGE_1_TAG)
.defaultPort(IMAGE_1_PORT) .name(CONTAINER_1_NAME)
.environment(IMAGE_1_ENV_DTO)
.build(); .build();
/* test */
final Container container = containerService.create(request);
assertEquals(CONTAINER_1_NAME, container.getName());
} }
@Test @Test
public void findById_docker_fails() { public void findById_docker_fails() {
// cannot test
/* test */
assertThrows(ContainerNotFoundException.class, () -> {
containerService.getById(CONTAINER_2_ID);
});
} }
@Test @Test
public void change_start_succeeds() { public void change_start_succeeds() {
// cannot test dockerClient.stopContainerCmd(CONTAINER_1.getHash()).exec();
/* test */
containerService.start(CONTAINER_1_ID);
} }
@Test @Test
public void change_stop_succeeds() { public void change_stop_succeeds() {
// cannot test
/* test */
containerService.stop(CONTAINER_1_ID);
} }
} }
...@@ -33,7 +33,7 @@ public interface ContainerMapper { ...@@ -33,7 +33,7 @@ public interface ContainerMapper {
@Mappings({ @Mappings({
@Mapping(source = "state", target = "state", qualifiedByName = "containerStateDto"), @Mapping(source = "state", target = "state", qualifiedByName = "containerStateDto"),
@Mapping(source = "id", target = "hash"), @Mapping(source = "id", target = "hash"),
// @Mapping(target = "id", ignore = true) @Mapping(target = "id", ignore = true)
}) })
ContainerDto inspectContainerResponseToContainerDto(InspectContainerResponse data); ContainerDto inspectContainerResponseToContainerDto(InspectContainerResponse data);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment