CAMEL-22539: Fix and re-enable 48 flaky tests across multiple modules#23022
CAMEL-22539: Fix and re-enable 48 flaky tests across multiple modules#23022gnodet merged 5 commits intoapache:mainfrom
Conversation
camel-management (4 tests): - AbstractManagedThrottlerTest: replace Thread.sleep with Awaitility, increase timing tolerance, increase NotifyBuilder timeout - ManagedAConcurrentThrottlerTest: increase timing tolerance - ManagedAThrottlerTest: remove disable annotation - ManagedAggregateControllerTest: add Awaitility wait for pending aggregation groups AWS Localstack (20 tests): - AWSContainer: replace unreliable log-based wait strategy with HTTP health check on /_localstack/health - Re-enable all 20 disabled AWS integration tests (parameter-store, secrets-manager, kinesis, kms, lambda, sns) camel-jms (7 tests): - JmsMultipleConsumersQueueTest/TopicTest: increase waitForConnections uptime check - Re-enable all 7 disabled JMS tests camel-nats (9 tests): - Add explicit setAssertPeriod(5000) before mock assertions for async delivery - Re-enable all 9 disabled NATS tests Remaining components (6 tests): - GrpcProducerStreamingTest: replace Thread.sleep with Awaitility - KafkaConsumerAuthInvalidIT: increase assertion timeout - Re-enable HttpNoConnectionTest, MllpTcpClientProducerConnectionErrorTest, SjmsToDTest, UndertowWsConsumerRouteTest Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
🌟 Thank you for your contribution to the Apache Camel project! 🌟 🐫 Apache Camel Committers, please review the following items:
|
The Awaitility block introduced a scoped variable that shadowed the original 'pending' variable, leaving later references unresolved. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
🧪 CI tested the following changed modules:
Build reactor — dependencies compiled but only changed modules were tested (16 modules)
|
apupier
left a comment
There was a problem hiding this comment.
How many times have you launched each tests to increase the chance to detect if they are still flaky?
|
Claude Code on behalf of Guillaume Nodet Each test was run 100 consecutive times locally (in a loop with fail-fast on first failure), all passing 100/100:
The same results were also posted on the JIRA issue. |
CAMEL-22539
Summary
Fix and re-enable 48 flaky tests across multiple modules that were disabled on CI via
@DisabledIfSystemProperty(named = "ci.env.name"). This is a follow-up to PR #23020 which fixed 13 flaky tests in camel-core.camel-management (4 tests)
AbstractManagedThrottlerTest: replaceThread.sleep(500)with Awaitility, increase timing tolerance (1200→2500ms), increase NotifyBuilder timeout (2→5s)ManagedAConcurrentThrottlerTest: increase timing toleranceManagedAThrottlerTest: re-enableManagedAggregateControllerTest: add Awaitility wait for pending aggregation groups to prevent race conditionAWS Localstack infrastructure + 20 tests
AWSContainer: replace unreliableWait.forLogMessage(".*Ready\\.\n", 1)withWait.forHttp("/_localstack/health").forStatusCode(200)— the log-based strategy returns before services are actually readycamel-jms (7 tests)
JmsMultipleConsumersQueueTest/TopicTest: increasewaitForConnectionsuptime check (100→500ms)camel-nats (9 tests)
setAssertPeriod(5000)before mock assertions to accommodate async NATS message deliveryRemaining components (6 tests)
GrpcProducerStreamingTest: replaceThread.sleep(2000)with AwaitilityKafkaConsumerAuthInvalidIT: increaseassertIsSatisfiedtimeout (3→10s)HttpNoConnectionTest,MllpTcpClientProducerConnectionErrorTest,SjmsToDTest,UndertowWsConsumerRouteTestTest plan