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

OZG-6240 KOP-2589 ZonedDateTime.now() instead of using a clock

parent 60a66ec8
No related branches found
No related tags found
No related merge requests found
package de.ozgcloud.xta.test.app.config;
import java.time.Clock;
import genv3.de.xoev.transport.xta.x211.ManagementPortType;
import genv3.de.xoev.transport.xta.x211.MsgBoxPortType;
import genv3.de.xoev.transport.xta.x211.SendPortType;
import jakarta.xml.ws.Endpoint;
import jakarta.xml.ws.soap.SOAPBinding;
import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2;
import org.apache.cxf.bus.spring.SpringBus;
import org.apache.cxf.jaxws.EndpointImpl;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import genv3.de.xoev.transport.xta.x211.ManagementPortType;
import genv3.de.xoev.transport.xta.x211.MsgBoxPortType;
import genv3.de.xoev.transport.xta.x211.SendPortType;
import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2;
@Configuration
@Log4j2
@RequiredArgsConstructor
......@@ -52,9 +48,4 @@ public class XTAServer {
SOAPBinding binding = (SOAPBinding) endpoint.getBinding();
binding.setMTOMEnabled(true);
}
@Bean
Clock clock() {
return Clock.systemDefaultZone();
}
}
package de.ozgcloud.xta.test.app.data;
import java.time.Clock;
import java.time.ZonedDateTime;
import java.util.HashMap;
import java.util.Optional;
......@@ -16,7 +15,6 @@ import de.ozgcloud.xta.test.app.model.XtaTransportReport;
public class XtaTransportReportRepository {
private final HashMap<String, XtaMessageMetaData> messageIdTomessageMetaData = new HashMap<>();
private final HashMap<String, XtaTransportReport.MessageStatus> messageIdToStatus = new HashMap<>();
private final Clock clock;
public boolean add(XtaMessageMetaData messageMetaData) {
if (messageIdTomessageMetaData.containsKey(messageMetaData.messageId())) {
......@@ -42,9 +40,13 @@ public class XtaTransportReportRepository {
return Optional.of(XtaTransportReport.builder()
.messageMetaData(messageIdTomessageMetaData.get(messageId))
.status(messageIdToStatus.get(messageId))
.reportTime(ZonedDateTime.now(clock))
.reportTime(getNow())
.build());
}
return Optional.empty();
}
private ZonedDateTime getNow() {
return ZonedDateTime.now();
}
}
package de.ozgcloud.xta.test.app.data;
import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.Mockito.when;
import java.time.Clock;
import java.time.Instant;
import java.time.ZonedDateTime;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Spy;
import de.ozgcloud.xta.test.app.factory.XtaMessageMetaDataTestFactory;
import de.ozgcloud.xta.test.app.model.XtaMessageMetaData;
import de.ozgcloud.xta.test.app.model.XtaTransportReport;
public class XtaTransportReportRepositoryTest {
@InjectMocks
@Spy
private XtaTransportReportRepository repository;
@Mock
private Clock clock;
private final XtaMessageMetaData messageMetaData = XtaMessageMetaDataTestFactory.create();
......@@ -48,11 +39,6 @@ public class XtaTransportReportRepositoryTest {
class Get {
@Nested
class WithExistingMessageId {
@BeforeEach
void beforeEach() {
mockClock();
}
@Test
void shouldReturnReport() {
repository.add(messageMetaData);
......@@ -64,16 +50,15 @@ public class XtaTransportReportRepositoryTest {
}
@Test
void shouldSetReportTimeNow() {
void shouldSetReportTime() {
repository.add(messageMetaData);
var result = repository.get(messageMetaData.messageId());
assertThat(result).isPresent();
assertThat(result.get().reportTime()).isEqualTo(ZonedDateTime.now(clock));
assertThat(result.get().reportTime()).isNotNull();
}
@Test
void shouldSetStatusOffen() {
repository.add(messageMetaData);
......@@ -101,7 +86,6 @@ public class XtaTransportReportRepositoryTest {
class SetClosedStatus {
@Test
void shouldSetClosedStatus() {
mockClock();
repository.add(messageMetaData);
repository.setClosedStatus(messageMetaData.messageId());
......@@ -126,10 +110,6 @@ public class XtaTransportReportRepositoryTest {
assertThat(result).isFalse();
}
}
private void mockClock() {
when(clock.instant()).thenReturn(Instant.now());
when(clock.getZone()).thenReturn(Clock.systemDefaultZone().getZone());
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment