spec/solaris/service_spec.rb in serverspec-0.6.24 vs spec/solaris/service_spec.rb in serverspec-0.6.25

- old
+ new

@@ -1,13 +1,94 @@ require 'spec_helper' include Serverspec::Helper::Solaris -describe 'Serverspec service matchers of Solaris' do - it_behaves_like 'support service enabled matcher', 'sshd' - it_behaves_like 'support service enabled with level matcher', 'sshd', 3 - it_behaves_like 'support service running matcher', 'sshd' - it_behaves_like 'support service running under supervisor matcher', 'sshd' - it_behaves_like 'support service running under unimplemented matcher', 'sshd' - it_behaves_like 'support service monitored by monit matcher', 'unicorn' - it_behaves_like 'support service monitored by unimplemented matcher', 'unicorn' +describe service('sshd') do + it { should be_enabled } + its(:command) { should eq "svcs -l sshd 2> /dev/null | egrep '^enabled *true$'" } +end + +describe service('invalid-service') do + it { should_not be_enabled } +end + +describe service('sshd') do + it { should be_enabled.with_level(4) } + its(:command) { should eq "svcs -l sshd 2> /dev/null | egrep '^enabled *true$'" } +end + +describe service('invalid-service') do + it { should_not be_enabled.with_level(4) } +end + +describe service('sshd') do + it { should be_running } + its(:command) { should eq "svcs -l sshd status 2> /dev/null | egrep '^state *online$'" } +end + +describe service('invalid-daemon') do + it { should_not be_running } +end + +describe service('sshd') do + let(:stdout) { "sshd is stopped\r\n" } + it { should be_running } +end + +describe service('sshd') do + let(:stdout) { "sshd RUNNING\r\n" } + it { should be_running.under('supervisor') } +end + +describe service('sshd') do + let(:stdout) { "sshd STOPPED\r\n" } + it { should_not be_running.under('supervisor') } +end + +describe service('invalid-daemon') do + it { should_not be_running.under('supervisor') } +end + +describe service('sshd') do + let(:stdout) { "sshd running\r\n" } + it { should be_running.under('upstart') } +end + +describe service('sshd') do + let(:stdout) { "sshd waiting\r\n" } + it { should_not be_running.under('upstart') } +end + +describe service('invalid-daemon') do + it { should_not be_running.under('upstart') } +end + +describe service('sshd') do + it { + expect { + should be_running.under('not implemented') + }.to raise_error(ArgumentError, %r/\A`be_running` matcher doesn\'t support/) + } +end + +describe service('sshd') do + let(:stdout) { "Process 'sshd'\r\n status running\r\n monitoring status monitored" } + it { should be_monitored_by('monit') } + its(:command) { should eq "monit status" } +end + +describe service('sshd') do + let(:stdout) { "Process 'sshd'\r\n status not monitored\r\n monitoring status not monitored" } + it { should_not be_monitored_by('monit') } +end + +describe service('invalid-daemon') do + it { should_not be_monitored_by('monit') } +end + +describe service('sshd') do + it { + expect { + should be_monitored_by('not implemented') + }.to raise_error(ArgumentError, %r/\A`be_monitored_by` matcher doesn\'t support/) + } end