Sha256: fcf807489e35f5e4c0e0b34db3fec706c5fbb1a7e5b06eb8a83a4e6e8fe9d99c

Contents?: true

Size: 1.7 KB

Versions: 1

Compression:

Stored size: 1.7 KB

Contents

@bunny
Feature: Binding AMQP destinations to exchanges
  Background:
    Given the following broker configuration:
    """ruby
    MessageDriver::Broker.define do |b|
      b.destination :direct_exchange, "amq.direct", type: :exchange
    end
    """

  Scenario: Binding a queue to an exchange
    When I execute the following code:
    """ruby
    MessageDriver::Broker.define do |b|
      b.destination :my_queue, "my_queue", exclusive: true, bindings: [
        {source: "amq.direct", args: {routing_key: "test_binding"}},
        {source: "amq.direct", args: {routing_key: "spec_binding"}}
      ]
    end

    publish(:direct_exchange, "Test Message", {}, {routing_key: "test_binding"})
    publish(:direct_exchange, "Spec Message", {}, {routing_key: "spec_binding"})
    """

    Then I expect to find 2 messages on :my_queue with:
      | body         |
      | Test Message |
      | Spec Message |

  Scenario: Binding an exchange to an exchange
    RabbitMQ's AMQP 0.9 extenstions support binding exchanges to exchanges

    When I execute the following code:
    """ruby
    MessageDriver::Broker.define do |b|
      b.destination :fanout, "amq.fanout", type: :exchange, bindings: [
        {source: "amq.direct", args: {routing_key: "test_binding"}},
        {source: "amq.direct", args: {routing_key: "spec_binding"}}
      ]
      b.destination :my_queue, "my_queue", exclusive: true, bindings: [{source: "amq.fanout"}]
    end

    publish(:direct_exchange, "Test Message", {}, {routing_key: "test_binding"})
    publish(:direct_exchange, "Spec Message", {}, {routing_key: "spec_binding"})
    """

    Then I expect to find 2 messages on :my_queue with:
      | body         |
      | Test Message |
      | Spec Message |

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
message-driver-0.1.0 features/amqp_specific_features/binding_amqp_destinations.feature