query: 2.1.2 - Refined tests (added messages, that are filtered)
[demos/kafka/wordcount] / src / test / java / de / juplo / kafka / wordcount / query / TestData.java
index c190eed..7c71312 100644 (file)
@@ -10,13 +10,15 @@ import java.util.Arrays;
 import java.util.function.Function;
 import java.util.stream.Stream;
 
+import static de.juplo.kafka.wordcount.query.QueryStreamProcessor.STATS_TYPE;
 import static org.assertj.core.api.Assertions.assertThat;
 
 
 class TestData
 {
-       static final TestUser PETER = TestUser.of("peter");
-       static final TestUser KLAUS = TestUser.of("klaus");
+       static final TestUser PETER = TestUser.of(STATS_TYPE, "peter");
+       static final TestUser KLAUS = TestUser.of(STATS_TYPE, "klaus");
+       static final TestUser OTHER_CHANNEL = TestUser.of("POPULAR", "klaus");
 
        static final Stream<KeyValue<TestUser, TestRanking>> getTop10Messages()
        {
@@ -30,8 +32,8 @@ class TestData
 
        static void assertExpectedState(Function<String, UserRanking> function)
        {
-               assertRankingEqualsRankingFromLastMessage(PETER.getUsername(), function.apply(PETER.getUsername()));
-               assertRankingEqualsRankingFromLastMessage(KLAUS.getUsername(), function.apply(KLAUS.getUsername()));
+               assertRankingEqualsRankingFromLastMessage(PETER.getChannel(), function.apply(PETER.getChannel()));
+               assertRankingEqualsRankingFromLastMessage(KLAUS.getChannel(), function.apply(KLAUS.getChannel()));
        }
 
        private static void assertRankingEqualsRankingFromLastMessage(String user, UserRanking rankingJson)
@@ -42,7 +44,7 @@ class TestData
        private static UserRanking getLastMessageFor(String user)
        {
                return getTop10Messages()
-                               .filter(kv -> kv.key.getUsername().equals(user))
+                               .filter(kv -> kv.key.getChannel().equals(user))
                                .map(kv -> kv.value)
                                .map(testRanking -> userRankingFor(user, testRanking))
                                .reduce(null, (left, right) -> right);
@@ -69,8 +71,8 @@ class TestData
        private static Entry entryOf(TestEntry testEntry)
        {
                Entry entry = new Entry();
-               entry.setWord(testEntry.getWord());
-               entry.setCount(testEntry.getCount());
+               entry.setKey(testEntry.getKey());
+               entry.setCounter(testEntry.getCounter());
                return entry;
        }
        private static KeyValue<TestUser, TestRanking>[] TOP10_MESSAGES = new KeyValue[]
@@ -83,6 +85,10 @@ class TestData
                                        KLAUS,
                                        TestRanking.of(
                                                        TestEntry.of("Müsch", 1l))),
+                       KeyValue.pair( // 1
+                                       OTHER_CHANNEL,
+                                       TestRanking.of(
+                                                       TestEntry.of("Müsch", 1l))),
                        KeyValue.pair( // 2
                                        PETER,
                                        TestRanking.of(
@@ -120,6 +126,11 @@ class TestData
                                        TestRanking.of(
                                                        TestEntry.of("Müsch", 2l),
                                                        TestEntry.of("s", 2l))),
+                       KeyValue.pair( // 8
+                                       OTHER_CHANNEL,
+                                       TestRanking.of(
+                                                       TestEntry.of("Müsch", 2l),
+                                                       TestEntry.of("s", 2l))),
                        KeyValue.pair( // 9
                                        PETER,
                                        TestRanking.of(
@@ -136,10 +147,10 @@ class TestData
        private static KeyValue<String, TestUserData>[] USERS_MESSAGES = new KeyValue[]
        {
                        KeyValue.pair(
-                                       PETER.getUsername(),
-                                       TestUserData.of(PETER.getUsername(), "Peter", "Pan", TestUserData.Sex.MALE)),
+                                       PETER.getChannel(),
+                                       TestUserData.of(PETER.getChannel(), "Peter", "Pan", TestUserData.Sex.MALE)),
                        KeyValue.pair(
-                                       KLAUS.getUsername(),
-                                       TestUserData.of(KLAUS.getUsername(), "Klaus", "Klüse", TestUserData.Sex.OTHER)),
+                                       KLAUS.getChannel(),
+                                       TestUserData.of(KLAUS.getChannel(), "Klaus", "Klüse", TestUserData.Sex.OTHER)),
        };
 }