allthingssecurity opened a new pull request, #28138: URL: https://github.com/apache/camel/pull/28138
# Description [CAMEL-25821](https://issues.apache.org/jira/browse/CAMEL-25821) Docs only: the guide "Writing a fake world" of `camel-test-dst` (CAMEL-25738) gets the pitfalls seen when writing worlds for IMAP, JMS, NATS JetStream and Azure Service Bus with the merged harness. The module page `test-dst.adoc` and its catalog copy change the same way (byte-identical). Changes: - *No end to the run* (extended): a consumer task that never returns sits above the test thread on the one stack, so `dst.runFor` / `dst.runUntil` in the test body do not return while it loops. The phases of the run are scheduled tasks, and the run ends by having the fake close the subscription, then `runUntil(closed)`. - New pitfalls, one or two sentences each: a fake that answers at once with nothing (give it a round-trip latency); a `Proxy` fake and an undeclared checked exception (`UndeclaredThrowableException`; do what the library does); objects of an earlier connection (model the client library, not only the server); one excuse record per kind of operator stop; a synchronous consumer over `DstCamel.asyncStep` (`DefaultAsyncProcessorAwaitManager` in `alsoRewrite`, and let in-flight asynchronous exchanges finish before `dropPending()`). - *Running the tests*: a `camel-test-infra-*` module the component's tests depend on goes into `-pl` when it is not in the local repository. - *Limits*: a world in a module with parallel tests can be run alone with `-Dcamel.surefire.parallel=false` but cannot be committed there (the existing check is unchanged); locks do not exclude on the one stack, so races between two lock-holding code paths cannot be explored. Each statement was checked against the harness code on `main` (`Dst`, `DstExtension`, `DstInstrumentation`, `DstCamel`, the parent pom's JUnit parallel setting). # Target - [x] I checked that the commit is targeting the correct branch (Camel 4 uses the `main` branch) # Tracking - [x] If this is a large change, bug fix, or code improvement, I checked there is a [JIRA issue](https://issues.apache.org/jira/browse/CAMEL) filed for the change (usually before you start working on it): [CAMEL-25821](https://issues.apache.org/jira/browse/CAMEL-25821). # Apache Camel coding standards and style - [x] I checked that each commit in the pull request has a meaningful subject line and body. - [ ] I have run `mvn clean install -DskipTests` locally from root folder and I have committed all auto-generated changes. (Docs only: the catalog copy of the page is updated by hand and is byte-identical to the module page. I did not run the full root build.) # AI-assisted contributions - [x] If this PR includes AI-generated code, commits have proper co-authorship attribution (e.g., `Co-authored-by` trailers) and the PR description identifies the AI tool used. This PR was prepared with Claude Code (Claude Opus 5.5). The commit carries a `Co-Authored-By` trailer. _Claude Code on behalf of allthingssecurity_ 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
