counter: 1.2.9 - Reconfigured tests to receive data as domain-instances
[demos/kafka/wordcount] / src / test / java / de / juplo / kafka / wordcount / counter / TestData.java
1 package de.juplo.kafka.wordcount.counter;
2
3 import java.util.List;
4 import java.util.function.BiConsumer;
5
6 import static org.assertj.core.api.Assertions.assertThat;
7
8
9 class TestData
10 {
11         static void writeInputData(BiConsumer<String, Word> consumer)
12         {
13                 consumer.accept(
14                                 "peter",
15                                 Word.of("peter","Hallo"));
16                 consumer.accept(
17                                 "klaus",
18                                 Word.of("klaus","Müsch"));
19                 consumer.accept(
20                                 "peter",
21                                 Word.of("peter","Welt"));
22                 consumer.accept(
23                                 "klaus",
24                                 Word.of("klaus","Müsch"));
25                 consumer.accept(
26                                 "klaus",
27                                 Word.of("klaus","s"));
28                 consumer.accept(
29                                 "peter",
30                                 Word.of("peter","Boäh"));
31                 consumer.accept(
32                                 "peter",
33                                 Word.of("peter","Welt"));
34                 consumer.accept(
35                                 "peter",
36                                 Word.of("peter","Boäh"));
37                 consumer.accept(
38                                 "klaus",
39                                 Word.of("klaus","s"));
40                 consumer.accept(
41                                 "peter",
42                                 Word.of("peter","Boäh"));
43                 consumer.accept(
44                                 "klaus",
45                                 Word.of("klaus","s"));
46         }
47
48         static void assertExpectedResult(List<Message> receivedMessages)
49         {
50                 assertThat(receivedMessages).hasSize(11);
51                 assertThat(receivedMessages).containsSubsequence(
52                                 expectedMessages[0]); // Hallo
53                 assertThat(receivedMessages).containsSubsequence(
54                                 expectedMessages[1],
55                                 expectedMessages[3]); // Müsch
56                 assertThat(receivedMessages).containsSubsequence(
57                                 expectedMessages[2],
58                                 expectedMessages[6]);
59                 assertThat(receivedMessages).containsSubsequence(
60                                 expectedMessages[4],
61                                 expectedMessages[8],
62                                 expectedMessages[10]); // s
63                 assertThat(receivedMessages).containsSubsequence(
64                                 expectedMessages[5],
65                                 expectedMessages[7],
66                                 expectedMessages[9]); // Boäh
67         }
68
69         static Message[] expectedMessages =
70         {
71                         Message.of(
72                                         Word.of("peter","Hallo"),
73                                         WordCount.of("peter","Hallo",1)),
74                         Message.of(
75                                         Word.of("klaus","Müsch"),
76                                         WordCount.of("klaus","Müsch",1)),
77                         Message.of(
78                                         Word.of("peter","Welt"),
79                                         WordCount.of("peter","Welt",1)),
80                         Message.of(
81                                         Word.of("klaus","Müsch"),
82                                         WordCount.of("klaus","Müsch",2)),
83                         Message.of(
84                                         Word.of("klaus","s"),
85                                         WordCount.of("klaus","s",1)),
86                         Message.of(
87                                         Word.of("peter","Boäh"),
88                                         WordCount.of("peter","Boäh",1)),
89                         Message.of(
90                                         Word.of("peter","Welt"),
91                                         WordCount.of("peter","Welt",2)),
92                         Message.of(
93                                         Word.of("peter","Boäh"),
94                                         WordCount.of("peter","Boäh",2)),
95                         Message.of(
96                                         Word.of("klaus","s"),
97                                         WordCount.of("klaus","s",2)),
98                         Message.of(
99                                         Word.of("peter","Boäh"),
100                                         WordCount.of("peter","Boäh",3)),
101                         Message.of(
102                                         Word.of("klaus","s"),
103                                         WordCount.of("klaus","s",3)),
104         };
105 }