diff --git a/amazon-kinesis-client/src/test/java/software/amazon/kinesis/lifecycle/ShardConsumerTest.java b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/lifecycle/ShardConsumerTest.java index 533a200af..e5db170b2 100644 --- a/amazon-kinesis-client/src/test/java/software/amazon/kinesis/lifecycle/ShardConsumerTest.java +++ b/amazon-kinesis-client/src/test/java/software/amazon/kinesis/lifecycle/ShardConsumerTest.java @@ -816,6 +816,10 @@ public void testLongRunningTasks() throws Exception { assertThat(consumer.taskRunningTime(), nullValue()); cache.requestBarrier.reset(); + // Sleep for 10 millis before processing next task. If we don't; then the following + // assertion on time fails. This happens if cache.publish() is executed in the + // same millisecond as that of previousTaskStartTime, resulting in the unit test failure. + Thread.sleep(10); cache.publish(); awaitAndResetBarrier(taskArriveBarrier);