diff --git a/spec/lib/listen/adapter/linux_spec.rb b/spec/lib/listen/adapter/linux_spec.rb index d87b65ff..a96fcec0 100644 --- a/spec/lib/listen/adapter/linux_spec.rb +++ b/spec/lib/listen/adapter/linux_spec.rb @@ -15,6 +15,7 @@ before(:all) do require 'rb-inotify' end + let(:dir1) { Pathname.new("/foo/dir1") } let(:config) { instance_double(Listen::Adapter::Config, "config") } @@ -26,6 +27,14 @@ # TODO: fix other adapters too! subject { described_class.new(config) } + before do + allow(queue).to receive(:close) + end + + after do + subject.stop + end + describe 'watch events' do let(:directories) { [Pathname.pwd] } let(:adapter_options) { {} } @@ -40,6 +49,11 @@ allow(config).to receive(:adapter_options).and_return(adapter_options) allow(config).to receive(:queue).and_return(queue) allow(config).to receive(:silencer).and_return(silencer) + allow(fake_worker).to receive(:close) + end + + after do + subject.stop end it 'starts by calling watch with default events' do @@ -55,6 +69,7 @@ before do fake_worker = double(:fake_worker_for_inotify_limit_message) allow(fake_worker).to receive(:watch).and_raise(Errno::ENOSPC) + allow(fake_worker).to receive(:close) fake_notifier = double(:fake_notifier, new: fake_worker) stub_const('INotify::Notifier', fake_notifier) @@ -78,6 +93,7 @@ fake_worker = double(:fake_worker_for_callback) events = [:recursive, :close_write] allow(fake_worker).to receive(:watch).with('/foo/dir1', *events) + allow(fake_worker).to receive(:close) fake_notifier = double(:fake_notifier, new: fake_worker) stub_const('INotify::Notifier', fake_notifier) @@ -160,7 +176,6 @@ stub_const('INotify::Notifier', fake_notifier) allow(config).to receive(:queue).and_return(queue) - allow(queue).to receive(:close) allow(config).to receive(:silencer).and_return(silencer) allow(subject).to receive(:require).with('rb-inotify') @@ -168,7 +183,6 @@ end it 'stops the worker' do - expect(fake_worker).to receive(:close) subject.stop end end