spec/inputs/exec_spec.rb in logstash-input-exec-2.0.2 vs spec/inputs/exec_spec.rb in logstash-input-exec-2.0.3

- old
+ new

@@ -2,23 +2,48 @@ require_relative "../spec_helper" describe LogStash::Inputs::Exec do it "should register" do - input = LogStash::Plugin.lookup("input", "exec").new("command" => "uptime", "interval" => 0) + input = LogStash::Plugin.lookup("input", "exec").new("command" => "ls", "interval" => 0) # register will try to load jars and raise if it cannot find jars or if org.apache.log4j.spi.LoggingEvent class is not present expect {input.register}.to_not raise_error end + context "when operating normally" do + let(:input) { LogStash::Plugin.lookup("input", "exec").new("command" => "ls", "interval" => 0) } + let(:queue) { [] } + let(:loggr) { double('loggr') } + + before do + allow(loggr).to receive(:info) + allow(loggr).to receive(:info?) + allow(loggr).to receive(:warn) + allow(loggr).to receive(:warn?) + allow(loggr).to receive(:debug) + allow(loggr).to receive(:debug?) + end + + it "enqueues some events" do + input.logger = loggr + input.register + expect(loggr).not_to receive(:error) + + input.inner_run(queue) + + expect(queue.size).not_to be_zero + end + end + context "when interrupting the plugin" do it_behaves_like "an interruptible input plugin" do - let(:config) { { "command" => "uptime", "interval" => 0 } } + let(:config) { { "command" => "ls", "interval" => 0 } } end it_behaves_like "an interruptible input plugin" do - let(:config) { { "command" => "uptime", "interval" => 100 } } + let(:config) { { "command" => "ls", "interval" => 100 } } end end end