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

use constructor injection and MockitoBean

parent 00123d92
No related branches found
No related tags found
1 merge request!4Use constructor injection and MockitoBean
...@@ -23,24 +23,23 @@ ...@@ -23,24 +23,23 @@
*/ */
package de.ozgcloud.eingang.intelliform; package de.ozgcloud.eingang.intelliform;
import java.io.IOException;
import javax.xml.namespace.QName; import javax.xml.namespace.QName;
import javax.xml.parsers.ParserConfigurationException; import javax.xml.parsers.ParserConfigurationException;
import java.io.IOException;
import jakarta.xml.bind.JAXBElement; import jakarta.xml.bind.JAXBElement;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired; import lombok.extern.log4j.Log4j2;
import org.springframework.ws.server.endpoint.annotation.Endpoint; import org.springframework.ws.server.endpoint.annotation.Endpoint;
import org.springframework.ws.server.endpoint.annotation.PayloadRoot; import org.springframework.ws.server.endpoint.annotation.PayloadRoot;
import org.springframework.ws.server.endpoint.annotation.RequestPayload; import org.springframework.ws.server.endpoint.annotation.RequestPayload;
import org.springframework.ws.server.endpoint.annotation.ResponsePayload; import org.springframework.ws.server.endpoint.annotation.ResponsePayload;
import de.ozgcloud.eingang.semantik.SemantikAdapter; import de.ozgcloud.eingang.semantik.SemantikAdapter;
import lombok.extern.log4j.Log4j2;
@Endpoint @Endpoint
@Log4j2 @Log4j2
@RequiredArgsConstructor
public class FormDataEndpoint { public class FormDataEndpoint {
static final String NAMESPACE_URI = "http://xmlns.cit.de/intelliform/2009/webservices/backend"; static final String NAMESPACE_URI = "http://xmlns.cit.de/intelliform/2009/webservices/backend";
...@@ -51,11 +50,8 @@ public class FormDataEndpoint { ...@@ -51,11 +50,8 @@ public class FormDataEndpoint {
private static final QName _DepositResponse_QNAME = new QName(NAMESPACE_URI, "depositResponse"); private static final QName _DepositResponse_QNAME = new QName(NAMESPACE_URI, "depositResponse");
private static final QName _PrefillResponse_QNAME = new QName(NAMESPACE_URI, "prefillResponse"); private static final QName _PrefillResponse_QNAME = new QName(NAMESPACE_URI, "prefillResponse");
private final DepositDataMapper depositDataMapper;
@Autowired private final SemantikAdapter semantikAdapter;
private DepositDataMapper depositDataMapper;
@Autowired
private SemantikAdapter semantikAdapter;
@PayloadRoot(namespace = NAMESPACE_URI, localPart = PAYLOAD_LOCAL_PART) @PayloadRoot(namespace = NAMESPACE_URI, localPart = PAYLOAD_LOCAL_PART)
@ResponsePayload @ResponsePayload
......
...@@ -24,26 +24,27 @@ ...@@ -24,26 +24,27 @@
package de.ozgcloud.eingang.intelliform; package de.ozgcloud.eingang.intelliform;
import static de.ozgcloud.eingang.intelliform.AttachmentTestFactory.*; import static de.ozgcloud.eingang.intelliform.AttachmentTestFactory.*;
import static de.ozgcloud.eingang.intelliform.DepositDataTestFactory.*; import static de.ozgcloud.eingang.intelliform.DepositDataTestFactory.MANY_ATTACHMENTS;
import static de.ozgcloud.eingang.intelliform.FormDataEndpoint.*; import static de.ozgcloud.eingang.intelliform.FormDataEndpoint.NAMESPACE_URI;
import static de.ozgcloud.eingang.intelliform.XmlDaten1Container.*; import static de.ozgcloud.eingang.intelliform.FormDataEndpoint.PAYLOAD_LOCAL_PART;
import static org.assertj.core.api.Assertions.*; import static de.ozgcloud.eingang.intelliform.XmlDaten1Container.REQUEST_XML_NAME;
import static org.mockito.ArgumentMatchers.*; import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.*; import static org.mockito.Mockito.*;
import javax.xml.namespace.QName;
import javax.xml.transform.Source;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import java.io.StringReader; import java.io.StringReader;
import java.io.StringWriter; import java.io.StringWriter;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import java.util.UUID; import java.util.UUID;
import javax.xml.namespace.QName; import io.grpc.Channel;
import javax.xml.transform.Source;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import jakarta.xml.bind.JAXBElement; import jakarta.xml.bind.JAXBElement;
import lombok.SneakyThrows;
import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.DisplayName;
...@@ -54,11 +55,11 @@ import org.mockito.Captor; ...@@ -54,11 +55,11 @@ import org.mockito.Captor;
import org.mockito.Mock; import org.mockito.Mock;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.boot.test.mock.mockito.SpyBean;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.core.io.Resource; import org.springframework.core.io.Resource;
import org.springframework.oxm.jaxb.Jaxb2Marshaller; import org.springframework.oxm.jaxb.Jaxb2Marshaller;
import org.springframework.test.context.bean.override.mockito.MockitoBean;
import org.springframework.test.context.bean.override.mockito.MockitoSpyBean;
import org.springframework.ws.test.server.MockWebServiceClient; import org.springframework.ws.test.server.MockWebServiceClient;
import org.springframework.ws.test.server.RequestCreators; import org.springframework.ws.test.server.RequestCreators;
import org.springframework.ws.test.server.ResponseActions; import org.springframework.ws.test.server.ResponseActions;
...@@ -76,16 +77,14 @@ import de.ozgcloud.vorgang.vorgang.GrpcFormData; ...@@ -76,16 +77,14 @@ import de.ozgcloud.vorgang.vorgang.GrpcFormData;
import de.ozgcloud.vorgang.vorgang.GrpcIncomingFile; import de.ozgcloud.vorgang.vorgang.GrpcIncomingFile;
import de.ozgcloud.vorgang.vorgang.GrpcIncomingFileGroup; import de.ozgcloud.vorgang.vorgang.GrpcIncomingFileGroup;
import de.ozgcloud.vorgang.vorgang.VorgangServiceGrpc.VorgangServiceBlockingStub; import de.ozgcloud.vorgang.vorgang.VorgangServiceGrpc.VorgangServiceBlockingStub;
import io.grpc.Channel;
import lombok.SneakyThrows;
@SpringBootTest @SpringBootTest
class FormDataEndpointITCase { class FormDataEndpointITCase {
private final static String TEST_FILE_PATH = "classpath:itcase/"; private static final String TEST_FILE_PATH = "classpath:itcase/";
private final static String REQUEST = "EinfachesFormularZweiAnhaengeSoapRequest.xml"; private static final String REQUEST = "EinfachesFormularZweiAnhaengeSoapRequest.xml";
private final static String RESPONSE = "EinfachesFormularZweiAnhaengeSoapResponse.xml"; private static final String RESPONSE = "EinfachesFormularZweiAnhaengeSoapResponse.xml";
private static final String SOAP_REQUEST_OTHER_NAME = "XML-Daten-1-other_name_SoapRequest.xml"; private static final String SOAP_REQUEST_OTHER_NAME = "XML-Daten-1-other_name_SoapRequest.xml";
private static Jaxb2Marshaller marshaller; private static Jaxb2Marshaller marshaller;
...@@ -93,9 +92,9 @@ class FormDataEndpointITCase { ...@@ -93,9 +92,9 @@ class FormDataEndpointITCase {
@Autowired @Autowired
private ApplicationContext applicationContext; private ApplicationContext applicationContext;
@SpyBean @MockitoSpyBean
private VorgangRemoteService vorgangRemoteService; private VorgangRemoteService vorgangRemoteService;
@MockBean @MockitoBean
private VorgangManagerServerResolver resolver; private VorgangManagerServerResolver resolver;
@Mock @Mock
......
...@@ -23,20 +23,17 @@ ...@@ -23,20 +23,17 @@
*/ */
package de.ozgcloud.eingang.intelliform; package de.ozgcloud.eingang.intelliform;
import static org.assertj.core.api.Assertions.*; import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.ArgumentMatchers.*; import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.*; import static org.mockito.Mockito.when;
import java.io.IOException;
import java.net.URISyntaxException;
import javax.xml.parsers.ParserConfigurationException; import javax.xml.parsers.ParserConfigurationException;
import java.io.IOException;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks; import org.mockito.InjectMocks;
import org.mockito.Mock; import org.mockito.Mock;
import org.xml.sax.SAXException;
import de.ozgcloud.common.test.TestUtils; import de.ozgcloud.common.test.TestUtils;
import de.ozgcloud.eingang.common.formdata.FormDataTestFactory; import de.ozgcloud.eingang.common.formdata.FormDataTestFactory;
...@@ -52,18 +49,18 @@ class FormDataEndpointTest { ...@@ -52,18 +49,18 @@ class FormDataEndpointTest {
private SemantikAdapter semantikAdapter; private SemantikAdapter semantikAdapter;
@BeforeEach @BeforeEach
void init() throws SAXException, IOException, ParserConfigurationException { void init() {
when(depositDataMapper.mapToFormData(any())).thenReturn(FormDataTestFactory.create()); when(depositDataMapper.mapToFormData(any())).thenReturn(FormDataTestFactory.create());
} }
@Test @Test
void testDepositFormData() throws SAXException, IOException, ParserConfigurationException, URISyntaxException { void testDepositFormData() throws IOException, ParserConfigurationException {
var response = formdataEndpointIntelli.inputFormData(buildRequest("intelliform/XML-Daten-1.xml")); var response = formdataEndpointIntelli.inputFormData(buildRequest("intelliform/XML-Daten-1.xml"));
assertThat(response).isNotNull(); assertThat(response).isNotNull();
} }
private Deposit buildRequest(String fileName) throws SAXException, IOException, ParserConfigurationException, URISyntaxException { private Deposit buildRequest(String fileName) {
var depositData = new DepositData(); var depositData = new DepositData();
var attachment = new Attachment(); var attachment = new Attachment();
......
...@@ -9,7 +9,7 @@ import de.ozgcloud.vorgang.vorgang.GrpcFormField; ...@@ -9,7 +9,7 @@ import de.ozgcloud.vorgang.vorgang.GrpcFormField;
public class XmlDaten1Container { public class XmlDaten1Container {
public final static String REQUEST_XML_NAME = "XML-Daten-1-SoapRequest.xml"; public static final String REQUEST_XML_NAME = "XML-Daten-1-SoapRequest.xml";
public static final List<GrpcFormField> EINGANG_FIELDS = List.of( public static final List<GrpcFormField> EINGANG_FIELDS = List.of(
create("kontaktsystemtypid", "233034600"), create("kontaktsystemtypid", "233034600"),
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment