public synchronized TopologyDescription describe() {
        return internalTopologyBuilder.describe();
    }
@Test
    public void streamStreamLeftJoinTopologyWithCustomStoresNames() {
        final StreamsBuilder builder  = new StreamsBuilder();
        final KStream<Integer, String> stream1;
        final KStream<Integer, String> stream2;

        stream1 = builder.stream("input-topic1");
        stream2 = builder.stream("input-topic2");

        stream1.leftJoin(
            stream2,
            MockValueJoiner.TOSTRING_JOINER,
            JoinWindows.ofTimeDifferenceWithNoGrace(ofMillis(100)),
            StreamJoined.with(Serdes.Integer(), Serdes.String(), Serdes.String())
                .withStoreName("custom-name"));

        final TopologyDescription describe = builder.build().describe();

        assertEquals(
            "Topologies:\n" +
                "   Sub-topology: 0\n" +
                "    Source: KSTREAM-SOURCE-0000000000 (topics: [input-topic1])\n" +
                "      --> KSTREAM-WINDOWED-0000000002\n" +
                "    Source: KSTREAM-SOURCE-0000000001 (topics: [input-topic2])\n" +
                "      --> KSTREAM-WINDOWED-0000000003\n" +
                "    Processor: KSTREAM-WINDOWED-0000000002 (stores: [custom-name-this-join-store])\n" +
                "      --> KSTREAM-JOINTHIS-0000000004\n" +
                "      <-- KSTREAM-SOURCE-0000000000\n" +
                "    Processor: KSTREAM-WINDOWED-0000000003 (stores: [custom-name-outer-other-join-store])\n" +
                "      --> KSTREAM-OUTEROTHER-0000000005\n" +
                "      <-- KSTREAM-SOURCE-0000000001\n" +
                "    Processor: KSTREAM-JOINTHIS-0000000004 (stores: [custom-name-outer-other-join-store, custom-name-left-shared-join-store])\n" +
                "      --> KSTREAM-MERGE-0000000006\n" +
                "      <-- KSTREAM-WINDOWED-0000000002\n" +
                "    Processor: KSTREAM-OUTEROTHER-0000000005 (stores: [custom-name-this-join-store, custom-name-left-shared-join-store])\n" +
                "      --> KSTREAM-MERGE-0000000006\n" +
                "      <-- KSTREAM-WINDOWED-0000000003\n" +
                "    Processor: KSTREAM-MERGE-0000000006 (stores: [])\n" +
                "      --> none\n" +
                "      <-- KSTREAM-JOINTHIS-0000000004, KSTREAM-OUTEROTHER-0000000005\n\n",
            describe.toString());
    }