Github user zhijiangW commented on a diff in the pull request:
https://github.com/apache/flink/pull/4533#discussion_r145749291
--- Diff:
flink-runtime/src/test/java/org/apache/flink/runtime/io/network/netty/PartitionRequestClientHandlerTest.java
---
@@ -208,6 +211,53 @@ public void testCancelBeforeActive() throws Exception {
client.cancelRequestFor(inputChannel.getInputChannelId());
}
+ /**
+ * Verifies that {@link RemoteInputChannel} is enqueued in the
pipeline, and
+ * {@link AddCredit} message is sent to the producer.
+ */
+ @Test
+ public void testNotifyCreditAvailable() throws Exception {
+ final CreditBasedClientHandler handler = new
CreditBasedClientHandler();
+ final EmbeddedChannel channel = new EmbeddedChannel(handler);
+
+ final RemoteInputChannel inputChannel =
mock(RemoteInputChannel.class);
--- End diff --
I reviewed all the previous existing tests in
`PartitionRequestClientHandlerTest` and all the `RemoteInputChannel` is mocked,
so I also used the mocked channel here.
I think the mocked input channel is enough for this test, because there is
no interaction with internal input channel. The handler just enqueues this
input channel and pools it to send `AddCredit` message.
If you prefer the real input channel, I am willing to modify it.
---