Skip to content

Migrate common broker integration tests to DSL - #217

Merged
rajp152k merged 5 commits into
mainfrom
integration-tests
May 22, 2026
Merged

Migrate common broker integration tests to DSL#217
rajp152k merged 5 commits into
mainfrom
integration-tests

Conversation

@rajp152k

Copy link
Copy Markdown
Contributor

Summary

Ports the common Redis/RabbitMQ broker integration scenarios into the new integration test DSL introduced in #214.

Common scenarios now covered through goose.integration.goose-test:

  • async execution
  • absolute scheduling
  • relative scheduling
  • middleware execution
  • retry flow with custom retry queue
  • death handling after retry exhaustion

The older broker-specific integration namespaces have been pruned to retain only broker-specific coverage:

  • Redis: orphan recovery and batch jobs
  • RabbitMQ: ACK behavior, quorum queues, max-delay scheduling guard, publisher confirms, RMQ metadata, graceful shutdown

This continues the migration tracked in #216 and follows the common abstraction direction discussed in #202. It also leans further into the execution promise/delivery semantics from #214 for middleware/retry/death assertions.

Validation

  • clj-kondo --lint bb.edn deps.edn src test --fail-level error
    • no errors; only existing warnings/info
  • clj -X:test :nses '[goose.integration.goose-test goose.brokers.redis.integration-test goose.brokers.rmq.integration-test]'
    • Ran 14 tests containing 75 assertions. 0 failures, 0 errors.

@ashutoshgngwr ashutoshgngwr left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Comment thread test/goose/integration/goose_test.clj Outdated
@rajp152k
rajp152k merged commit 03ac94c into main May 22, 2026
2 checks passed
@rajp152k
rajp152k deleted the integration-tests branch May 22, 2026 12:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants