use of org.apache.kafka.common.requests.DescribeLogDirsResponse.ReplicaInfo in project kafka-rest by confluentinc.
the class ReplicaManagerImplTest method searchByBrokerId_existingBroker_returnsReplicas.
@Test
public void searchByBrokerId_existingBroker_returnsReplicas() throws Exception {
HashMap<TopicPartition, ReplicaInfo> partitions = new HashMap<>();
partitions.put(new TopicPartition(TOPIC_NAME, PARTITION_ID_1), null);
partitions.put(new TopicPartition(TOPIC_NAME, PARTITION_ID_2), null);
expect(brokerManager.getBroker(CLUSTER_ID, BROKER_ID_1)).andReturn(completedFuture(Optional.of(BROKER_1)));
expect(adminClient.describeLogDirs(eq(singletonList(BROKER_ID_1)), anyObject())).andReturn(describeLogDirsResult);
expect(describeLogDirsResult.values()).andReturn(singletonMap(BROKER_ID_1, KafkaFuture.completedFuture(singletonMap(TOPIC_NAME, new LogDirInfo(null, partitions)))));
expect(partitionManager.getPartition(CLUSTER_ID, TOPIC_NAME, PARTITION_ID_1)).andReturn(completedFuture(Optional.of(PARTITION_1)));
expect(partitionManager.getPartition(CLUSTER_ID, TOPIC_NAME, PARTITION_ID_2)).andReturn(completedFuture(Optional.of(PARTITION_2)));
replay(adminClient, describeLogDirsResult, brokerManager, partitionManager);
List<PartitionReplica> replicas = replicaManager.searchReplicasByBrokerId(CLUSTER_ID, BROKER_ID_1).get();
assertEquals(new HashSet<>(Arrays.asList(REPLICA_1_1, REPLICA_2_1)), new HashSet<>(replicas));
}
Aggregations