Skip to content
Snippets Groups Projects
Commit 4bd021c6 authored by Lukas Malte Monnerjahn's avatar Lukas Malte Monnerjahn
Browse files

Merge remote-tracking branch 'origin/OZG-6240-KOP-2589-getTransportReport'...

Merge remote-tracking branch 'origin/OZG-6240-KOP-2589-getTransportReport' into OZG-6240-KOP-2589-getTransportReport

# Conflicts:
#	src/main/java/de/ozgcloud/xta/test/app/mapper/ResponseMapper.java
parents 5cbebaf1 44c7e5fc
Branches
Tags
No related merge requests found
......@@ -7,6 +7,7 @@ import org.apache.cxf.annotations.SchemaValidation;
import org.apache.cxf.ws.addressing.AttributedURIType;
import org.springframework.stereotype.Component;
import de.ozgcloud.xta.test.app.mapper.ExceptionMapper;
import de.ozgcloud.xta.test.app.mapper.RequestMapper;
import de.ozgcloud.xta.test.app.mapper.ResponseMapper;
import de.ozgcloud.xta.test.app.service.XtaMessageService;
......@@ -29,6 +30,7 @@ import lombok.extern.log4j.Log4j2;
@Log4j2
public class ManagementPortImpl implements ManagementPortType {
private final ExceptionMapper exceptionMapper;
private final ResponseMapper responseMapper;
private final RequestMapper requestMapper;
private final RequestValidator requestValidator;
......
......@@ -4,6 +4,10 @@ import static de.ozgcloud.xta.test.app.factory.MessageMetaDataTestFactory.*;
import static org.assertj.core.api.Assertions.*;
import static org.mockito.Mockito.*;
import java.util.Optional;
import genv3.de.xoev.transport.xta.x211.InvalidMessageIDException;
import genv3.de.xoev.transport.xta.x211.TransportReport;
import org.apache.cxf.ws.addressing.AttributedURIType;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
......@@ -12,9 +16,13 @@ import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import de.ozgcloud.xta.test.app.factory.XtaMessageMetaDataTestFactory;
import de.ozgcloud.xta.test.app.mapper.ExceptionMapper;
import de.ozgcloud.xta.test.app.mapper.RequestMapper;
import de.ozgcloud.xta.test.app.mapper.ResponseMapper;
import de.ozgcloud.xta.test.app.model.XtaGetTransportReportRequest;
import de.ozgcloud.xta.test.app.model.XtaLookupServiceRequest;
import de.ozgcloud.xta.test.app.model.XtaTransportReport;
import de.ozgcloud.xta.test.app.service.XtaMessageService;
import de.ozgcloud.xta.test.app.validation.RequestValidator;
import genv3.de.xoev.transport.xta.x211.LookupServiceRequest;
......@@ -30,6 +38,8 @@ public class ManagementPortImplTest {
@Mock
private XtaMessageService xtaMessageService;
@Mock
private ExceptionMapper exceptionMapper;
@Mock
private ResponseMapper responseMapper;
@Mock
private RequestMapper requestMapper;
......@@ -113,4 +123,67 @@ public class ManagementPortImplTest {
assertThat(result).isEqualTo(response);
}
}
@DisplayName("get transport report")
@Nested
class TestGetTransportReport {
private static final String MESSAGE_ID = "urn:de:xta:messageid:1";
@Mock
private AttributedURIType messageId;
@Mock
private PartyType authorIdentifier;
@Mock
private XtaTransportReport xtaTransportReport;
private XtaGetTransportReportRequest request;
@BeforeEach
void beforeEach() {
request = XtaGetTransportReportRequest.builder()
.messageId(MESSAGE_ID)
.clientIdentifier(XtaMessageMetaDataTestFactory.READER_IDENTIFIER)
.build();
when(requestMapper.mapXtaGetTransportReportRequest(messageId, authorIdentifier)).thenReturn(request);
}
@DisplayName("with valid request")
@Nested
class TestWithValidRequest {
@BeforeEach
void beforeEach() {
when(xtaMessageService.getTransportReport(request)).thenReturn(Optional.of(xtaTransportReport));
when(responseMapper.mapTransportReport(xtaTransportReport)).thenReturn(TRANSPORT_REPORT);
}
@DisplayName("should return")
@Test
void shouldReturn() {
var result = getTransportReport();
assertThat(result).contains(TRANSPORT_REPORT);
}
}
@DisplayName("with Invalid message id")
@Nested
class TestWithInvalidMessageId {
@Mock
private InvalidMessageIDException exception;
@DisplayName("should throw exception")
@Test
void shouldThrowException() {
when(xtaMessageService.getTransportReport(request)).thenReturn(Optional.empty());
when(exceptionMapper.createInvalidMessageIDException(any())).thenReturn(exception);
}
}
@SneakyThrows
private TransportReport getTransportReport() {
return managementPortImpl.getTransportReport(messageId, authorIdentifier);
}
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment