Sha256: c97766f84959d0e4f71ce661c27874fece962cc552d3efc08016c4ebe24e3577

Contents?: true

Size: 953 Bytes

Versions: 1

Compression:

Stored size: 953 Bytes

Contents

require "logstash/devutils/rspec/spec_helper"
require_relative '../../lib/logstash/inputs/perfmon'

describe 'IntegrationTests' do
  describe 'Perfmon' do
  
    subject(:plugin) do
	  LogStash::Inputs::Perfmon.new(
		  "interval" => 1,
		  "counters" => ["\\processor(_total)\\% processor time"]
		)
	end
  
    describe 'initialize' do
      it 'assigns counters and interval' do
		expect(plugin.counters).to eq ["\\processor(_total)\\% processor time"]
		expect(plugin.interval).to eq 1
	  end
    end
	
	describe 'run' do
	  it 'starts listening for perf metrics' do
	    my_queue = Queue.new
		
		plugin.register
		
		Thread.new do
		  plugin.run(my_queue)
		end
		
		# It can take a few seconds for it to start collecting metrics
		# Wait up to 60 seconds
		60.times do
		  break unless my_queue.empty?
		  sleep 1
		end
		
		expect(my_queue).not_to be_empty
		
		plugin.teardown
	  end
	end
	
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
logstash-input-perfmon-0.1.1 spec/inputs/perfmon_spec.rb