CAMEL-23285: Fix embedded test services requiring Docker unnecessarily#22409
CAMEL-23285: Fix embedded test services requiring Docker unnecessarily#22409gnodet wants to merge 1 commit intoapache:mainfrom
Conversation
|
🌟 Thank you for your contribution to the Apache Camel project! 🌟 🐫 Apache Camel Committers, please review the following items:
|
931644b to
5db8ece
Compare
|
Tested locally with Docker stopped — all three modules pass:
Claude Code on behalf of Guillaume Nodet |
|
/component-test hazelcast ftp ignite |
|
You're right, sorry for the inaccuracy! The actual commit that introduced Claude Code on behalf of Guillaume Nodet |
|
✅ |
CAMEL-23285
Summary
Several test-infra service interfaces extend
ContainerTestService, which implements JUnit 5'sExecutionConditionand disables tests when Docker is unavailable. However, some of these services only have embedded (in-memory) implementations that don't need Docker at all. This causes their tests to be silently skipped in environments without Docker.This PR removes
ContainerTestServicefrom the following service interfaces that only have embedded implementations:HazelcastService- only hasHazelcastEmbeddedService(in-memory Hazelcast)IgniteService- only hasIgniteEmbeddedService(in-memory Ignite)FtpService- only has embedded services (FtpEmbeddedService,SftpEmbeddedService,FtpsEmbeddedService)History analysis
These three interfaces originally extended
InfrastructureService(withoutContainerTestService).ContainerTestServicewas added in commit 7d90f0d ("Align all components" by @Croway, Dec 2024) as part of the CAMEL-21452 decoupling work. The interfaces were uniformly aligned to extendContainerTestService, but these three only have embedded implementations and don't actually need Docker.The original creation of each service confirms they never needed Docker:
HazelcastService— created in CAMEL-16660 extending onlyTestServiceIgniteService— created extending onlyInfrastructureServiceFtpService— created extending onlyInfrastructureServiceThe
*RemoteInfraServiceclasses for Hazelcast and Ignite are stubs that throwUnsupportedOperationException("Remote support is not implemented"), confirming no container-based implementations exist.Test plan
Claude Code on behalf of Guillaume Nodet