@@ -543,8 +543,12 @@ protected void customizeNewPulsarClientBuilder(ClientBuilder clientBuilder) {
543
543
clientBuilder .memoryLimit (10000L , SizeUnit .BYTES );
544
544
}
545
545
546
+ interface ThrowingBiConsumer <T , U > {
547
+ void accept (T t , U u ) throws Exception ;
548
+ }
549
+
546
550
@ Test
547
- public void testSeekChunkMessages () throws PulsarClientException {
551
+ public void testSeekChunkMessages () throws Exception {
548
552
log .info ("-- Starting {} test --" , methodName );
549
553
this .conf .setMaxMessageSize (50 );
550
554
final int totalMessages = 5 ;
@@ -594,14 +598,17 @@ public void testSeekChunkMessages() throws PulsarClientException {
594
598
assertEquals (msgIds .get (i ), msgAfterSeek .getMessageId ());
595
599
}
596
600
597
- Reader <byte []> reader = pulsarClient .newReader ()
598
- .topic (topicName )
599
- .startMessageIdInclusive ()
600
- .startMessageId (msgIds .get (1 ))
601
- .create ();
602
-
603
- Message <byte []> readMsg = reader .readNext (5 , TimeUnit .SECONDS );
604
- assertEquals (msgIds .get (1 ), readMsg .getMessageId ());
601
+ ThrowingBiConsumer <Boolean , MessageId > assertStartMessageId = (inclusive , expectedFirstMsgId ) -> {
602
+ final var builder = pulsarClient .newReader ().topic (topicName ).startMessageId (msgIds .get (1 ));
603
+ if (inclusive ) {
604
+ builder .startMessageIdInclusive ();
605
+ }
606
+ @ Cleanup final var reader = builder .create ();
607
+ final var readMsg = reader .readNext (5 , TimeUnit .SECONDS );
608
+ assertEquals (expectedFirstMsgId , readMsg .getMessageId ());
609
+ };
610
+ assertStartMessageId .accept (true , msgIds .get (1 ));
611
+ assertStartMessageId .accept (false , msgIds .get (2 ));
605
612
606
613
consumer1 .close ();
607
614
consumer2 .close ();
0 commit comments