Sha256: 9cfcf5b12ee63a17b6db7af2e71e6a42f6a05182603f52b10ee8cdf64a759d12

Contents?: true

Size: 901 Bytes

Versions: 4

Compression:

Stored size: 901 Bytes

Contents

# encoding: utf-8
require "logstash/devutils/rspec/spec_helper"
require "logstash/inputs/zeromq"
require_relative "support/client"

module ZeroMQHelpers

  def setup_clients(number_of_clients, port)
    number_of_clients.times.inject([]) do |clients|
      clients << ZeroMQClient.new(localhost, port)
    end
  end

  def input(config, size, &block)
    plugin = LogStash::Plugin.lookup("input", "zeromq").new(config)
    plugin.register
    queue  = Queue.new

    pipeline_thread = Thread.new { plugin.run(queue) }
    sleep 0.3
    block.call
    sleep 0.1 while queue.size != size
    result = size.times.inject([]) do |acc|
      acc << queue.pop
    end
    plugin.do_stop
    pipeline_thread.join
    result
  end # def input

end

RSpec.configure do |config|
  config.include ZeroMQHelpers
  config.filter_run_excluding({ :zeromq => true, :integration => true })
  config.order = :random
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
logstash-input-zeromq-2.0.4 spec/spec_helper.rb
logstash-input-zeromq-2.0.2 spec/spec_helper.rb
logstash-input-zeromq-2.0.1 spec/spec_helper.rb
logstash-input-zeromq-2.0.0 spec/spec_helper.rb