diff --git a/maeil-mail/src/main/java/maeilmail/statistics/EventAggregator.java b/maeil-mail/src/main/java/maeilmail/statistics/EventAggregator.java deleted file mode 100644 index 4eb41a6..0000000 --- a/maeil-mail/src/main/java/maeilmail/statistics/EventAggregator.java +++ /dev/null @@ -1,18 +0,0 @@ -package maeilmail.statistics; - -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; -import maeilmail.subscribe.command.domain.SubscribeQuestion; -import org.springframework.stereotype.Component; - -@Component -class EventAggregator { - - public EventReport aggregate(List subscribeQuestions) { - Map result = subscribeQuestions.stream() - .collect(Collectors.partitioningBy(SubscribeQuestion::isSuccess, Collectors.counting())); - - return new EventReport(result.get(true), result.get(false)); - } -} diff --git a/maeil-mail/src/test/java/maeilmail/statistics/EventAggregatorTest.java b/maeil-mail/src/test/java/maeilmail/statistics/EventAggregatorTest.java deleted file mode 100644 index 2d1c3ca..0000000 --- a/maeil-mail/src/test/java/maeilmail/statistics/EventAggregatorTest.java +++ /dev/null @@ -1,41 +0,0 @@ -package maeilmail.statistics; - -import static org.assertj.core.api.Assertions.assertThat; - -import java.util.List; -import maeilmail.question.Question; -import maeilmail.question.QuestionCategory; -import maeilmail.subscribe.command.domain.Subscribe; -import maeilmail.subscribe.command.domain.SubscribeFrequency; -import maeilmail.subscribe.command.domain.SubscribeQuestion; -import org.junit.jupiter.api.DisplayName; -import org.junit.jupiter.api.Test; - -class EventAggregatorTest { - - @Test - @DisplayName("메일 이벤트를 받으면 하루 결과로 변환한다.") - void report() { - EventAggregator eventAggregator = new EventAggregator(); - - List subscribeQuestions = List.of( - createSubscribeQuestion(true), - createSubscribeQuestion(true), - createSubscribeQuestion(false), - createSubscribeQuestion(true) - ); - - EventReport result = eventAggregator.aggregate(subscribeQuestions); - - assertThat(result.success()).isEqualTo(3); - assertThat(result.fail()).isEqualTo(1); - } - - private SubscribeQuestion createSubscribeQuestion(boolean isSuccess) { - return new SubscribeQuestion( - new Subscribe("test@gmail.com", QuestionCategory.BACKEND, SubscribeFrequency.DAILY), - new Question("test-title", "test-content", QuestionCategory.BACKEND), - isSuccess - ); - } -}