From e9f6ebf68c9a7c5965d303ed221a0c9c9435da8a Mon Sep 17 00:00:00 2001 From: Prashant Date: Sat, 18 Nov 2023 18:29:29 +0000 Subject: [PATCH 1/2] Change LocalDate to OffsetDateTime --- README.md | 2 +- .../ExceptionlessClient.java | 4 ++-- .../exceptionlessclient/models/Event.java | 10 +++++----- .../plugins/MergedEvent.java | 4 ++-- .../submission/EventRequest.java | 4 ++-- .../ExceptionlessClientTest.java | 14 +++++++------- .../plugins/MergedEventTest.java | 18 +++++++++++------- 7 files changed, 30 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index f1114e8..96605a1 100644 --- a/README.md +++ b/README.md @@ -95,7 +95,7 @@ client uses v4. In that case you have to explicitly declare v4 of the library in com.exceptionless exceptionless-client - 1.0-beta1 + 0.1.0 org.springframework.boot diff --git a/src/main/java/com/exceptionless/exceptionlessclient/ExceptionlessClient.java b/src/main/java/com/exceptionless/exceptionlessclient/ExceptionlessClient.java index b5d037f..17eb074 100644 --- a/src/main/java/com/exceptionless/exceptionlessclient/ExceptionlessClient.java +++ b/src/main/java/com/exceptionless/exceptionlessclient/ExceptionlessClient.java @@ -14,7 +14,7 @@ import lombok.Getter; import lombok.extern.slf4j.Slf4j; -import java.time.LocalDate; +import java.time.OffsetDateTime; import java.util.Timer; import java.util.TimerTask; import java.util.concurrent.ExecutorService; @@ -176,7 +176,7 @@ public Event.EventBuilder createSessionStart() { } public Event.EventBuilder createEvent() { - return Event.builder().dataExclusions(configuration.getDataExclusions()).date(LocalDate.now()); + return Event.builder().dataExclusions(configuration.getDataExclusions()).date(OffsetDateTime.now()); } public void submitEvent(Event event) { diff --git a/src/main/java/com/exceptionless/exceptionlessclient/models/Event.java b/src/main/java/com/exceptionless/exceptionlessclient/models/Event.java index 4155b52..bc16011 100644 --- a/src/main/java/com/exceptionless/exceptionlessclient/models/Event.java +++ b/src/main/java/com/exceptionless/exceptionlessclient/models/Event.java @@ -11,7 +11,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; -import java.time.LocalDate; +import java.time.OffsetDateTime; import java.util.*; import java.util.stream.Collectors; @@ -24,7 +24,7 @@ public class Event extends Model { private String type; private String source; - private LocalDate date; + private OffsetDateTime date; private Set tags; private String message; private String geo; @@ -36,7 +36,7 @@ public class Event extends Model { public Event( String type, String source, - LocalDate date, + OffsetDateTime date, Set tags, String message, String geo, @@ -47,7 +47,7 @@ public Event( Set dataExclusions) { this.type = type; this.source = source; - this.date = date == null ? LocalDate.now() : date; + this.date = date == null ? OffsetDateTime.now() : date; this.tags = tags == null ? new HashSet<>() : tags; this.message = message; this.geo = geo; @@ -167,7 +167,7 @@ public EventBuilder source(String source) { } @Override - public EventBuilder date(LocalDate date) { + public EventBuilder date(OffsetDateTime date) { super.date(date); return this; } diff --git a/src/main/java/com/exceptionless/exceptionlessclient/plugins/MergedEvent.java b/src/main/java/com/exceptionless/exceptionlessclient/plugins/MergedEvent.java index 3157e40..f58900d 100644 --- a/src/main/java/com/exceptionless/exceptionlessclient/plugins/MergedEvent.java +++ b/src/main/java/com/exceptionless/exceptionlessclient/plugins/MergedEvent.java @@ -5,7 +5,7 @@ import lombok.Builder; import lombok.Data; -import java.time.LocalDate; +import java.time.OffsetDateTime; @Data public class MergedEvent { @@ -24,7 +24,7 @@ public void incrementCount(long count) { event.setCount(event.getCount() + count); } - public void updateDate(LocalDate date) { + public void updateDate(OffsetDateTime date) { if (date.isAfter(event.getDate())) { event.setDate(date); } diff --git a/src/main/java/com/exceptionless/exceptionlessclient/submission/EventRequest.java b/src/main/java/com/exceptionless/exceptionlessclient/submission/EventRequest.java index 9c9d7a0..ce4554a 100644 --- a/src/main/java/com/exceptionless/exceptionlessclient/submission/EventRequest.java +++ b/src/main/java/com/exceptionless/exceptionlessclient/submission/EventRequest.java @@ -3,7 +3,7 @@ import lombok.Builder; import lombok.Value; -import java.time.LocalDate; +import java.time.OffsetDateTime; import java.util.Map; import java.util.Set; @@ -12,7 +12,7 @@ public class EventRequest { String type; String source; - LocalDate date; + OffsetDateTime date; Set tags; String message; String geo; diff --git a/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java b/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java index 4022fac..609c899 100644 --- a/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java +++ b/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java @@ -19,7 +19,7 @@ import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import java.time.LocalDate; +import java.time.OffsetDateTime; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.*; @@ -72,8 +72,8 @@ public void itCanSubmitAnExceptionEvent() { argThat( event -> event.getType().equals(EventType.ERROR.value()) - && event.getDate().equals(LocalDate.now()) && event.getReferenceId() != null + && event.getDate() != null && event.getError().isPresent() && event.getEnvironmentInfo().isPresent() && event.getData().containsKey(EventPropertyKey.EXTRA.value()))); @@ -101,7 +101,7 @@ public void itCanSubmitUnhandledExceptionEvent() { argThat( event -> event.getType().equals(EventType.ERROR.value()) - && event.getDate().equals(LocalDate.now()) + && event.getDate().equals(OffsetDateTime.now()) && event.getReferenceId() != null && event.getError().isPresent() && event.getEnvironmentInfo().isPresent() @@ -123,8 +123,8 @@ public void itCanSubmitFeatureUsageEvent() { event -> event.getType().equals(EventType.USAGE.value()) && event.getSource().equals("test-feature") - && event.getDate().equals(LocalDate.now()) && event.getReferenceId() != null + && event.getDate() != null && event.getEnvironmentInfo().isPresent())); assertThat(configuration.getLastReferenceIdManager().getLast()).isNotNull(); } @@ -153,7 +153,7 @@ public void itCanSubmitALogEvent() { event.getType().equals(EventType.LOG.value()) && event.getSource().equals("test-log-source") && event.getMessage().equals("test-log-message") - && event.getDate().equals(LocalDate.now()) + && event.getDate().equals(OffsetDateTime.now()) && event.getReferenceId() != null && event.getEnvironmentInfo().isPresent() && event.getData().containsKey(EventPropertyKey.LOG_LEVEL.value()))); @@ -226,7 +226,7 @@ public void itCanSubmitANotFoundEvent() { event -> event.getType().equals(EventType.NOT_FOUND.value()) && event.getSource().equals("test-resource") - && event.getDate().equals(LocalDate.now()) + && event.getDate().equals(OffsetDateTime.now()) && event.getReferenceId() != null && event.getEnvironmentInfo().isPresent())); assertThat(configuration.getLastReferenceIdManager().getLast()).isNotNull(); @@ -254,7 +254,7 @@ public void itCanSubmitASessionStartEvent() { argThat( event -> event.getType().equals(EventType.SESSION.value()) - && event.getDate().equals(LocalDate.now()) + && event.getDate().equals(OffsetDateTime.now()) && event.getReferenceId() != null && event.getEnvironmentInfo().isPresent())); assertThat(configuration.getLastReferenceIdManager().getLast()).isNotNull(); diff --git a/src/test/java/com/exceptionless/exceptionlessclient/plugins/MergedEventTest.java b/src/test/java/com/exceptionless/exceptionlessclient/plugins/MergedEventTest.java index 8f79134..241dcae 100644 --- a/src/test/java/com/exceptionless/exceptionlessclient/plugins/MergedEventTest.java +++ b/src/test/java/com/exceptionless/exceptionlessclient/plugins/MergedEventTest.java @@ -8,7 +8,7 @@ import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import java.time.LocalDate; +import java.time.OffsetDateTime; import static org.mockito.ArgumentMatchers.argThat; import static org.mockito.Mockito.times; @@ -23,7 +23,7 @@ public class MergedEventTest { public void setup() { mergedEvent = MergedEvent.builder() - .event(Event.builder().date(LocalDate.now()).build()) + .event(Event.builder().date(OffsetDateTime.now()).build()) .eventQueue(eventQueue) .build(); } @@ -38,7 +38,7 @@ public void itCanIncrementCount() { @Test public void itCanUpdateDate() { - LocalDate tomorrow = LocalDate.now().plusDays(1); + OffsetDateTime tomorrow = OffsetDateTime.now().plusDays(1); mergedEvent.updateDate(tomorrow); mergedEvent.resubmit(); @@ -47,18 +47,22 @@ public void itCanUpdateDate() { @Test public void itShouldNotUpdateDateIfSameAsTheEvent() { - mergedEvent.updateDate(LocalDate.now()); + OffsetDateTime now = OffsetDateTime.now(); + mergedEvent.setEvent(Event.builder().date(now).build()); + mergedEvent.updateDate(now); mergedEvent.resubmit(); - verify(eventQueue, times(1)).enqueue(argThat(event -> event.getDate().equals(LocalDate.now()))); + verify(eventQueue, times(1)).enqueue(argThat(event -> event.getDate().equals(now))); } @Test public void itShouldNotUpdateDateIfBeforeAsTheEvent() { - LocalDate yesterday = LocalDate.now().minusDays(1); + OffsetDateTime now = OffsetDateTime.now(); + OffsetDateTime yesterday = now.minusDays(1); + mergedEvent.setEvent(Event.builder().date(now).build()); mergedEvent.updateDate(yesterday); mergedEvent.resubmit(); - verify(eventQueue, times(1)).enqueue(argThat(event -> event.getDate().equals(LocalDate.now()))); + verify(eventQueue, times(1)).enqueue(argThat(event -> event.getDate().equals(now))); } } From 4737d2a549c262c0711e22cad75259970a870eff Mon Sep 17 00:00:00 2001 From: Prashant Date: Sat, 18 Nov 2023 18:35:08 +0000 Subject: [PATCH 2/2] Fix UT --- .../ExceptionlessClientTest.java | 14 +++++++------- .../plugins/MergedEventTest.java | 15 +++++++-------- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java b/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java index 609c899..74a18c7 100644 --- a/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java +++ b/src/test/java/com/exceptionless/exceptionlessclient/ExceptionlessClientTest.java @@ -19,7 +19,7 @@ import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import java.time.OffsetDateTime; +import java.time.LocalDate; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.*; @@ -73,7 +73,7 @@ public void itCanSubmitAnExceptionEvent() { event -> event.getType().equals(EventType.ERROR.value()) && event.getReferenceId() != null - && event.getDate() != null + && event.getDate().toLocalDate().equals(LocalDate.now()) && event.getError().isPresent() && event.getEnvironmentInfo().isPresent() && event.getData().containsKey(EventPropertyKey.EXTRA.value()))); @@ -101,7 +101,7 @@ public void itCanSubmitUnhandledExceptionEvent() { argThat( event -> event.getType().equals(EventType.ERROR.value()) - && event.getDate().equals(OffsetDateTime.now()) + && event.getDate().toLocalDate().equals(LocalDate.now()) && event.getReferenceId() != null && event.getError().isPresent() && event.getEnvironmentInfo().isPresent() @@ -124,7 +124,7 @@ public void itCanSubmitFeatureUsageEvent() { event.getType().equals(EventType.USAGE.value()) && event.getSource().equals("test-feature") && event.getReferenceId() != null - && event.getDate() != null + && event.getDate().toLocalDate().equals(LocalDate.now()) && event.getEnvironmentInfo().isPresent())); assertThat(configuration.getLastReferenceIdManager().getLast()).isNotNull(); } @@ -153,7 +153,7 @@ public void itCanSubmitALogEvent() { event.getType().equals(EventType.LOG.value()) && event.getSource().equals("test-log-source") && event.getMessage().equals("test-log-message") - && event.getDate().equals(OffsetDateTime.now()) + && event.getDate().toLocalDate().equals(LocalDate.now()) && event.getReferenceId() != null && event.getEnvironmentInfo().isPresent() && event.getData().containsKey(EventPropertyKey.LOG_LEVEL.value()))); @@ -226,7 +226,7 @@ public void itCanSubmitANotFoundEvent() { event -> event.getType().equals(EventType.NOT_FOUND.value()) && event.getSource().equals("test-resource") - && event.getDate().equals(OffsetDateTime.now()) + && event.getDate().toLocalDate().equals(LocalDate.now()) && event.getReferenceId() != null && event.getEnvironmentInfo().isPresent())); assertThat(configuration.getLastReferenceIdManager().getLast()).isNotNull(); @@ -254,7 +254,7 @@ public void itCanSubmitASessionStartEvent() { argThat( event -> event.getType().equals(EventType.SESSION.value()) - && event.getDate().equals(OffsetDateTime.now()) + && event.getDate().toLocalDate().equals(LocalDate.now()) && event.getReferenceId() != null && event.getEnvironmentInfo().isPresent())); assertThat(configuration.getLastReferenceIdManager().getLast()).isNotNull(); diff --git a/src/test/java/com/exceptionless/exceptionlessclient/plugins/MergedEventTest.java b/src/test/java/com/exceptionless/exceptionlessclient/plugins/MergedEventTest.java index 241dcae..b71cbf8 100644 --- a/src/test/java/com/exceptionless/exceptionlessclient/plugins/MergedEventTest.java +++ b/src/test/java/com/exceptionless/exceptionlessclient/plugins/MergedEventTest.java @@ -8,6 +8,7 @@ import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; +import java.time.LocalDate; import java.time.OffsetDateTime; import static org.mockito.ArgumentMatchers.argThat; @@ -47,22 +48,20 @@ public void itCanUpdateDate() { @Test public void itShouldNotUpdateDateIfSameAsTheEvent() { - OffsetDateTime now = OffsetDateTime.now(); - mergedEvent.setEvent(Event.builder().date(now).build()); - mergedEvent.updateDate(now); + mergedEvent.updateDate(OffsetDateTime.now()); mergedEvent.resubmit(); - verify(eventQueue, times(1)).enqueue(argThat(event -> event.getDate().equals(now))); + verify(eventQueue, times(1)) + .enqueue(argThat(event -> event.getDate().toLocalDate().equals(LocalDate.now()))); } @Test public void itShouldNotUpdateDateIfBeforeAsTheEvent() { - OffsetDateTime now = OffsetDateTime.now(); - OffsetDateTime yesterday = now.minusDays(1); - mergedEvent.setEvent(Event.builder().date(now).build()); + OffsetDateTime yesterday = OffsetDateTime.now().minusDays(1); mergedEvent.updateDate(yesterday); mergedEvent.resubmit(); - verify(eventQueue, times(1)).enqueue(argThat(event -> event.getDate().equals(now))); + verify(eventQueue, times(1)) + .enqueue(argThat(event -> event.getDate().toLocalDate().equals(LocalDate.now()))); } }