shanejansen / touchstone

Touchstone is a testing framework for your services that focuses on component, end-to-end, and exploratory testing.
16 stars 2 forks source link

Cannot route multiple keys to same queue #24

Closed ScottFreeCode closed 2 years ago

ScottFreeCode commented 3 years ago

I have an app that has a queue "all" on which it receives from multiple routing keys, "route.a", "route.b", "route.c". (This helps with ordering of different messages that affect the same object, when the app comes back up after downtime. Arguably the root problem is the app's structure but it's a legacy app we're hoping to first get Touchstone tests for then use those tests when refactoring or replacing. Then again: Rabbit plainly allows different sources to use their own routing keys and one recipient to route them into the same queue.) This gives me Touchstone failures, 'This exchange "my.exchange", routing-key "route.b" combination is not defined. Check your "rabbit.yml" defaults.' (and same for route.c) even though I have this in my.exchange:

- name: all
  routingKey: route.a
- name: all
  routingKey: route.b
- name: all
  routingKey: route.c
shanejansen commented 3 years ago

@ScottFreeCode Does this error occur when the Touchstone is starting or when a Touchstone test is ran?

ScottFreeCode commented 3 years ago

When each test is run that uses the queue (except the tests with the first routing key).