projects
/
demos
/
kafka
/
wordcount
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
query: 2.0.0 - (RED) The keys of the top10-topic are deserialized as JSON
[demos/kafka/wordcount]
/
src
/
test
/
java
/
de
/
juplo
/
kafka
/
wordcount
/
query
/
QueryStreamProcessorTopologyTest.java
diff --git
a/src/test/java/de/juplo/kafka/wordcount/query/QueryStreamProcessorTopologyTest.java
b/src/test/java/de/juplo/kafka/wordcount/query/QueryStreamProcessorTopologyTest.java
index
845792c
..
203c813
100644
(file)
--- a/
src/test/java/de/juplo/kafka/wordcount/query/QueryStreamProcessorTopologyTest.java
+++ b/
src/test/java/de/juplo/kafka/wordcount/query/QueryStreamProcessorTopologyTest.java
@@
-1,6
+1,7
@@
package de.juplo.kafka.wordcount.query;
import de.juplo.kafka.wordcount.top10.TestRanking;
package de.juplo.kafka.wordcount.query;
import de.juplo.kafka.wordcount.top10.TestRanking;
+import de.juplo.kafka.wordcount.top10.TestUser;
import de.juplo.kafka.wordcount.users.TestUserData;
import lombok.extern.slf4j.Slf4j;
import org.apache.kafka.common.serialization.StringSerializer;
import de.juplo.kafka.wordcount.users.TestUserData;
import lombok.extern.slf4j.Slf4j;
import org.apache.kafka.common.serialization.StringSerializer;
@@
-24,11
+25,12
@@
public class QueryStreamProcessorTopologyTest
{
public static final String TOP10_IN = "TOP10-IN";
public static final String USERS_IN = "USERS-IN";
{
public static final String TOP10_IN = "TOP10-IN";
public static final String USERS_IN = "USERS-IN";
- public static final String STORE_NAME = "TOPOLOGY-TEST";
+ public static final String RANKING_STORE_NAME = "TOPOLOGY-TEST-RANKINGS";
+ public static final String USERS_STORE_NAME = "TOPOLOGY-TEST-USERS";
TopologyTestDriver testDriver;
TopologyTestDriver testDriver;
- TestInputTopic<
String
, TestRanking> top10In;
+ TestInputTopic<
TestUser
, TestRanking> top10In;
TestInputTopic<String, TestUserData> userIn;
TestInputTopic<String, TestUserData> userIn;
@@
-38,19
+40,20
@@
public class QueryStreamProcessorTopologyTest
Topology topology = QueryStreamProcessor.buildTopology(
USERS_IN,
TOP10_IN,
Topology topology = QueryStreamProcessor.buildTopology(
USERS_IN,
TOP10_IN,
- Stores.inMemoryKeyValueStore(STORE_NAME));
+ Stores.inMemoryKeyValueStore(USERS_STORE_NAME),
+ Stores.inMemoryKeyValueStore(RANKING_STORE_NAME));
testDriver = new TopologyTestDriver(topology, serializationConfig());
top10In = testDriver.createInputTopic(
TOP10_IN,
testDriver = new TopologyTestDriver(topology, serializationConfig());
top10In = testDriver.createInputTopic(
TOP10_IN,
-
new StringSerializer(
),
- jsonSerializer(TestRanking.class));
+
jsonSerializer(TestUser.class, true
),
+ jsonSerializer(TestRanking.class
,false
));
userIn = testDriver.createInputTopic(
USERS_IN,
new StringSerializer(),
userIn = testDriver.createInputTopic(
USERS_IN,
new StringSerializer(),
- jsonSerializer(TestUserData.class));
+ jsonSerializer(TestUserData.class
, false).noTypeInfo(
));
}
}
@@
-64,7
+67,7
@@
public class QueryStreamProcessorTopologyTest
.getTop10Messages()
.forEach(kv -> top10In.pipeInput(kv.key, kv.value));
.getTop10Messages()
.forEach(kv -> top10In.pipeInput(kv.key, kv.value));
- KeyValueStore<String, UserRanking> store = testDriver.getKeyValueStore(STORE_NAME);
+ KeyValueStore<String, UserRanking> store = testDriver.getKeyValueStore(
RANKING_
STORE_NAME);
TestData.assertExpectedState(user -> store.get(user));
}
TestData.assertExpectedState(user -> store.get(user));
}
@@
-74,15
+77,15
@@
public class QueryStreamProcessorTopologyTest
testDriver.close();
}
testDriver.close();
}
- private <T> JsonSerializer<T> jsonSerializer(Class<T> type)
+ private <T> JsonSerializer<T> jsonSerializer(Class<T> type
, boolean isKey
)
{
JsonSerializer<T> jsonSerializer = new JsonSerializer<>();
jsonSerializer.configure(
Map.of(
JsonSerializer.TYPE_MAPPINGS,
{
JsonSerializer<T> jsonSerializer = new JsonSerializer<>();
jsonSerializer.configure(
Map.of(
JsonSerializer.TYPE_MAPPINGS,
- "user
data:" + TestUserData
.class.getName() + "," +
+ "user
:" + TestUser
.class.getName() + "," +
"ranking:" + TestRanking.class.getName()),
"ranking:" + TestRanking.class.getName()),
-
false
);
+
isKey
);
return jsonSerializer;
}
}
return jsonSerializer;
}
}