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