use of software.amazon.awssdk.services.kinesis.model.ShardFilter in project beam by apache.
the class SimplifiedKinesisClientTest method shouldListAllShardsForTrimHorizonWithPagedResults.
@Test
public void shouldListAllShardsForTrimHorizonWithPagedResults() throws Exception {
Shard shard1 = Shard.builder().shardId(SHARD_1).build();
Shard shard2 = Shard.builder().shardId(SHARD_2).build();
Shard shard3 = Shard.builder().shardId(SHARD_3).build();
ShardFilter shardFilter = ShardFilter.builder().type(ShardFilterType.AT_TRIM_HORIZON).build();
String nextListShardsToken = "testNextToken";
when(kinesis.listShards(ListShardsRequest.builder().streamName(STREAM).shardFilter(shardFilter).maxResults(1_000).build())).thenReturn(ListShardsResponse.builder().shards(shard1, shard2).nextToken(nextListShardsToken).build());
when(kinesis.listShards(ListShardsRequest.builder().maxResults(1_000).shardFilter(shardFilter).nextToken(nextListShardsToken).build())).thenReturn(ListShardsResponse.builder().shards(shard3).nextToken(null).build());
List<Shard> shards = underTest.listShardsAtPoint(STREAM, new StartingPoint(InitialPositionInStream.TRIM_HORIZON));
assertThat(shards).containsOnly(shard1, shard2, shard3);
}
Aggregations