top10: 1.3.0 - Refined input JSON to match the new general stats-format
[demos/kafka/wordcount] / src / test / java / de / juplo / kafka / wordcount / top10 / TestData.java
index cf52c1f..4fb229b 100644 (file)
@@ -18,44 +18,51 @@ import static org.assertj.core.api.Assertions.assertThat;
 
 class TestData
 {
+       static final String TYPE_COUNTER = "COUNTER";
+
        static final TestUser PETER = TestUser.of("peter");
        static final TestUser KLAUS = TestUser.of("klaus");
 
-       static final KeyValue<TestWord, TestCounter>[] INPUT_MESSAGES = new KeyValue[]
+       static final Stream<KeyValue<TestWord, TestCounter>> getInputMessages()
+       {
+               return Stream.of(INPUT_MESSAGES);
+       }
+
+       private static final KeyValue<TestWord, TestCounter>[] INPUT_MESSAGES = new KeyValue[]
        {
                        new KeyValue<>(
-                                       TestWord.of(PETER.getUser(),"Hallo"),
-                                       TestCounter.of(PETER.getUser(),"Hallo",1)),
+                                       TestWord.of(TYPE_COUNTER, PETER.getUser(),"Hallo"),
+                                       TestCounter.of("Hallo",1)),
                        new KeyValue<>(
-                                       TestWord.of(KLAUS.getUser(),"Müsch"),
-                                       TestCounter.of(KLAUS.getUser(),"Müsch",1)),
+                                       TestWord.of(TYPE_COUNTER, KLAUS.getUser(),"Müsch"),
+                                       TestCounter.of("Müsch",1)),
                        new KeyValue<>(
-                                       TestWord.of(PETER.getUser(),"Welt"),
-                                       TestCounter.of(PETER.getUser(),"Welt",1)),
+                                       TestWord.of(TYPE_COUNTER, PETER.getUser(),"Welt"),
+                                       TestCounter.of("Welt",1)),
                        new KeyValue<>(
-                                       TestWord.of(KLAUS.getUser(),"Müsch"),
-                                       TestCounter.of(KLAUS.getUser(),"Müsch",2)),
+                                       TestWord.of(TYPE_COUNTER, KLAUS.getUser(),"Müsch"),
+                                       TestCounter.of("Müsch",2)),
                        new KeyValue<>(
-                                       TestWord.of(KLAUS.getUser(),"s"),
-                                       TestCounter.of(KLAUS.getUser(),"s",1)),
+                                       TestWord.of(TYPE_COUNTER, KLAUS.getUser(),"s"),
+                                       TestCounter.of("s",1)),
                        new KeyValue<>(
-                                       TestWord.of(PETER.getUser(),"Boäh"),
-                                       TestCounter.of(PETER.getUser(),"Boäh",1)),
+                                       TestWord.of(TYPE_COUNTER, PETER.getUser(),"Boäh"),
+                                       TestCounter.of("Boäh",1)),
                        new KeyValue<>(
-                                       TestWord.of(PETER.getUser(),"Welt"),
-                                       TestCounter.of(PETER.getUser(),"Welt",2)),
+                                       TestWord.of(TYPE_COUNTER, PETER.getUser(),"Welt"),
+                                       TestCounter.of("Welt",2)),
                        new KeyValue<>(
-                                       TestWord.of(PETER.getUser(),"Boäh"),
-                                       TestCounter.of(PETER.getUser(),"Boäh",2)),
+                                       TestWord.of(TYPE_COUNTER, PETER.getUser(),"Boäh"),
+                                       TestCounter.of("Boäh",2)),
                        new KeyValue<>(
-                                       TestWord.of(KLAUS.getUser(),"s"),
-                                       TestCounter.of(KLAUS.getUser(),"s",2)),
+                                       TestWord.of(TYPE_COUNTER, KLAUS.getUser(),"s"),
+                                       TestCounter.of("s",2)),
                        new KeyValue<>(
-                                       TestWord.of(PETER.getUser(),"Boäh"),
-                                       TestCounter.of(PETER.getUser(),"Boäh",3)),
+                                       TestWord.of(TYPE_COUNTER, PETER.getUser(),"Boäh"),
+                                       TestCounter.of("Boäh",3)),
                        new KeyValue<>(
-                                       TestWord.of(KLAUS.getUser(),"s"),
-                                       TestCounter.of(KLAUS.getUser(),"s",3)),
+                                       TestWord.of(TYPE_COUNTER, KLAUS.getUser(),"s"),
+                                       TestCounter.of("s",3)),
        };
 
        static void assertExpectedMessages(MultiValueMap<TestUser, TestRanking> receivedMessages)
@@ -72,7 +79,7 @@ class TestData
                assertRankingEqualsRankingFromLastMessage(KLAUS, store.get(userOf(KLAUS)));
        }
 
-       static User userOf(TestUser user)
+       private static User userOf(TestUser user)
        {
                return User.of(user.getUser());
        }
@@ -83,7 +90,7 @@ class TestData
                assertThat(countMessagesForUser(KLAUS, receivedMessages));
        }
 
-       static int countMessagesForUser(TestUser user, MultiValueMap<TestUser, TestRanking> messagesForUsers)
+       private static int countMessagesForUser(TestUser user, MultiValueMap<TestUser, TestRanking> messagesForUsers)
        {
                return messagesForUsers.get(user) == null
                                ? 0
@@ -97,35 +104,35 @@ class TestData
                assertRankingEqualsRankingFromLastMessage(KLAUS, getLastMessageFor(KLAUS, receivedMessages));
        }
 
-       static void assertRankingEqualsRankingFromLastMessage(TestUser user, Ranking ranking)
+       private static void assertRankingEqualsRankingFromLastMessage(TestUser user, Ranking ranking)
        {
                TestRanking testRanking = TestRanking.of(testEntriesOf(ranking.getEntries()));
                assertRankingEqualsRankingFromLastMessage(user, testRanking);
        }
 
-       static TestEntry[] testEntriesOf(Entry... entries)
+       private static TestEntry[] testEntriesOf(Entry... entries)
        {
                return Arrays
                                .stream(entries)
                                .map(entry -> TestEntry.of(
-                                               entry.getWord(),
+                                               entry.getKey(),
                                                entry.getCounter() == null
                                                                ? -1l
                                                                : entry.getCounter()))
                                .toArray(size -> new TestEntry[size]);
        }
 
-       static void assertRankingEqualsRankingFromLastMessage(TestUser user, TestRanking ranking)
+       private static void assertRankingEqualsRankingFromLastMessage(TestUser user, TestRanking ranking)
        {
                assertThat(ranking).isEqualTo(getLastMessageFor(user));
        }
 
-       static TestRanking getLastMessageFor(TestUser user)
+       private static TestRanking getLastMessageFor(TestUser user)
        {
                return getLastMessageFor(user, expectedMessages());
        }
 
-       static TestRanking getLastMessageFor(TestUser user, MultiValueMap<TestUser, TestRanking> messagesForUsers)
+       private static TestRanking getLastMessageFor(TestUser user, MultiValueMap<TestUser, TestRanking> messagesForUsers)
        {
                return messagesForUsers
                                .get(user)
@@ -133,7 +140,7 @@ class TestData
                                .reduce(null, (left, right) -> right);
        }
 
-       static KeyValue<TestUser, TestRanking>[] EXPECTED_MESSAGES = new KeyValue[]
+       private static KeyValue<TestUser, TestRanking>[] EXPECTED_MESSAGES = new KeyValue[]
        {
                        KeyValue.pair( // 0
                                        PETER,
@@ -193,7 +200,7 @@ class TestData
                                                        TestEntry.of("Müsch", 2l))),
        };
 
-       static MultiValueMap<TestUser, TestRanking> expectedMessages()
+       private static MultiValueMap<TestUser, TestRanking> expectedMessages()
        {
                MultiValueMap<TestUser, TestRanking> expectedMessages = new LinkedMultiValueMap<>();
                Stream