kafka-jira mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "John Roesler (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (KAFKA-6474) Rewrite test to use new public TopologyTestDriver
Date Fri, 09 Mar 2018 19:26:00 GMT

    [ https://issues.apache.org/jira/browse/KAFKA-6474?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16393415#comment-16393415

John Roesler commented on KAFKA-6474:

Hi Filipe,

I have been working on a similar task (KAFKA-6473) and discovered something that will probably
be a problem for you.

This task requires the streams project to have a test dependency on the stream:test-utils
project, but streams:test-utils already has a compile dependency on the streams project. I'm
no Gradle expert, but as far as I can tell, there's no way to break this circular dependency,
at least without doing something exotic in the gradle config.

We had a discussion in this mailing list thread: [[DISCUSS] KIP-267|[http://mail-archives.apache.org/mod_mbox/kafka-dev/201803.mbox/%3CCAAyirGsovAzRMLa91nd6rzceQgEcNcLMt7ZrXVN7M1Psj4jCmQ%40mail.gmail.com%3E]|http://mail-archives.apache.org/mod_mbox/kafka-dev/201803.mbox/%3CCAAyirGsovAzRMLa91nd6rzceQgEcNcLMt7ZrXVN7M1Psj4jCmQ%40mail.gmail.com%3E].] . Here's
what we settled on:

{quote}I would propose we restructure the streams directory thusly:
streams/ (artifact name := "streams", the actual streams code lives here)
- test-utils/ (this is the current test-utils artifact, depends on "streams")
- tests/ (new module, depends on "streams" and "test-utils", *NO published artifact*)
This gets us out of the circular dependency without having to engage in any Gradle shenanigans
while preserving "test-utils" as a separate artifact. This is good because: 1) the test-utils
don't need to be in production code, so it's nice to have a separate artifact, 2) test-utils
is already public in 1.1, and it's a bummer to introduce users' code when we can so easily
avoid it.{quote}
Another result of the discussion is that I'm actually going to side-step this issue for KAFKA-6473,
so I won't be doing any restructuring in the course of my work. I'm just sharing these ideas
with you for your context.
Hope you're well!

> Rewrite test to use new public TopologyTestDriver
> -------------------------------------------------
>                 Key: KAFKA-6474
>                 URL: https://issues.apache.org/jira/browse/KAFKA-6474
>             Project: Kafka
>          Issue Type: Improvement
>          Components: streams, unit tests
>    Affects Versions: 1.1.0
>            Reporter: Matthias J. Sax
>            Assignee: Filipe Agapito
>            Priority: Major
>              Labels: beginner, newbie
> With KIP-247 we added public TopologyTestDriver. We should rewrite out own test to use
this new test driver and remove the two classes ProcessorTopoogyTestDriver and KStreamTestDriver.

This message was sent by Atlassian JIRA

View raw message