From 8e9f06a29b64fab5fbdbc5d912af72624474dd04 Mon Sep 17 00:00:00 2001 From: Daniel Carleton Date: Mon, 29 Jun 2020 11:14:30 -0700 Subject: [PATCH 1/2] fix for #262 --- src/jackdaw/streams/interop.clj | 9 ++++++--- test/jackdaw/streams/interop_test.clj | 16 ++++++++++++++++ 2 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 test/jackdaw/streams/interop_test.clj diff --git a/src/jackdaw/streams/interop.clj b/src/jackdaw/streams/interop.clj index 6f4254bc..362636fc 100644 --- a/src/jackdaw/streams/interop.clj +++ b/src/jackdaw/streams/interop.clj @@ -40,9 +40,12 @@ (Serialized/with key-serde value-serde)) (defn topic->materialized [{:keys [topic-name key-serde value-serde]}] - (cond-> (Materialized/as ^String topic-name) - key-serde (.withKeySerde key-serde) - value-serde (.withValueSerde value-serde))) + (if topic-name + (cond-> (Materialized/as ^String topic-name) + key-serde (.withKeySerde key-serde) + value-serde (.withValueSerde value-serde)) + (Materialized/with key-serde + value-serde))) (defn suppress-config->suppressed [{:keys [max-records max-bytes until-time-limit-ms]}] diff --git a/test/jackdaw/streams/interop_test.clj b/test/jackdaw/streams/interop_test.clj new file mode 100644 index 00000000..3c8c5b83 --- /dev/null +++ b/test/jackdaw/streams/interop_test.clj @@ -0,0 +1,16 @@ +(ns jackdaw.streams.interop-test + (:require + [clojure.test :refer :all] + [jackdaw.streams.interop :as interop]) + (:import + (org.apache.kafka.common.serialization + Serdes))) + +(deftest topic->materialized-test + (testing "materialized with serde only doesn't smoke" + (is (interop/topic->materialized {:key-serde (Serdes/String) + :value-serde (Serdes/String)}))) + (testing "materialized with topic name and serde doesn't smoke" + (is (interop/topic->materialized {:key-serde (Serdes/String) + :value-serde (Serdes/String)})))) + From 406bcba19911778c4d111ca8e2e9588b524c789b Mon Sep 17 00:00:00 2001 From: Daniel Carleton Date: Mon, 29 Jun 2020 11:24:29 -0700 Subject: [PATCH 2/2] update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7a58c2fa..34e1d6dc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## Unreleased * Fix `ktable` constructor to use supplied `store-name` +* Fix inability to materialize without supplying a topic name ## [0.7.3] - [2020-04-08]