RemoteInputChannel extends InputChannel { public void onFailedPartitionRequest() { inputGate.triggerPartitionStateCheck(partitionId); } RemoteInputChannel(
			SingleInputGate inputGate,
			int channelIndex,
			ResultPartitionID partitionId,
			ConnectionID connectionId,
			ConnectionManager connectionManager);  RemoteInputChannel(
			SingleInputGate inputGate,
			int channelIndex,
			ResultPartitionID partitionId,
			ConnectionID connectionId,
			ConnectionManager connectionManager,
			Tuple2<Integer, Integer> initialAndMaxBackoff); void failPartitionRequest(); @Override String toString(); int getNumberOfQueuedBuffers(); InputChannelID getInputChannelId(); BufferProvider getBufferProvider(); void onBuffer(Buffer buffer, int sequenceNumber); void onEmptyBuffer(int sequenceNumber); void onFailedPartitionRequest(); void onError(Throwable cause);  }
@Test public void testOnFailedPartitionRequest() throws Exception { final ConnectionManager connectionManager = mock(ConnectionManager.class); when(connectionManager.createPartitionRequestClient(any(ConnectionID.class))) .thenReturn(mock(PartitionRequestClient.class)); final ResultPartitionID partitionId = new ResultPartitionID(); final SingleInputGate inputGate = mock(SingleInputGate.class); final RemoteInputChannel ch = new RemoteInputChannel( inputGate, 0, partitionId, mock(ConnectionID.class), connectionManager); ch.onFailedPartitionRequest(); verify(inputGate).triggerPartitionStateCheck(eq(partitionId)); }