Sha256: 8106120c0de15e50ef4db7a68803180505337ac53795f6ecc06b1123c413996f

Contents?: true

Size: 886 Bytes

Versions: 3

Compression:

Stored size: 886 Bytes

Contents

require 'spec_helper'

describe 'Reply' do
  let(:freddy) { Freddy.build(logger, **config) }

  let(:destination) { random_destination }
  let(:request_payload) { { req: 'load' } }
  let(:response_payload) { { res: 'load' } }

  after { freddy.close }

  context 'when a synchronized request' do
    before do
      freddy.respond_to(destination) do |_payload, msg_handler|
        msg_handler.success(response_payload)
      end
    end

    it 'sends reply' do
      response = freddy.deliver_with_response(destination, request_payload)
      expect(response).to eq(response_payload)
    end

    it 'does not send the reply to the topic queue' do
      freddy.tap_into 'amq.*' do |_payload|
        @message_received = true
      end

      freddy.deliver_with_response(destination, request_payload)
      default_sleep

      expect(@message_received).to be_falsy
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
freddy-2.8.0 spec/integration/reply_spec.rb
freddy-2.7.0 spec/integration/reply_spec.rb
freddy-2.6.0 spec/integration/reply_spec.rb