diff options
Diffstat (limited to 'spec/ruby/library/syslog/open_spec.rb')
| -rw-r--r-- | spec/ruby/library/syslog/open_spec.rb | 56 |
1 files changed, 48 insertions, 8 deletions
diff --git a/spec/ruby/library/syslog/open_spec.rb b/spec/ruby/library/syslog/open_spec.rb index 18e7f0c80e..3aceea007d 100644 --- a/spec/ruby/library/syslog/open_spec.rb +++ b/spec/ruby/library/syslog/open_spec.rb @@ -1,17 +1,17 @@ +require_relative '../../spec_helper' + platform_is_not :windows do - require File.expand_path('../../../spec_helper', __FILE__) - require File.expand_path('../shared/reopen', __FILE__) require 'syslog' describe "Syslog.open" do platform_is_not :windows do before :each do - Syslog.opened?.should be_false + Syslog.opened?.should == false end after :each do - Syslog.opened?.should be_false + Syslog.opened?.should == false end it "returns the module" do @@ -68,19 +68,59 @@ platform_is_not :windows do it "closes the log if after it receives a block" do Syslog.open{ } - Syslog.opened?.should be_false + Syslog.opened?.should == false end it "raises an error if the log is opened" do Syslog.open - lambda { Syslog.open}.should raise_error - lambda { Syslog.close; Syslog.open }.should_not raise_error + -> { + Syslog.open + }.should.raise(RuntimeError, /syslog already open/) + -> { + Syslog.close + Syslog.open + }.should_not.raise Syslog.close end end end describe "Syslog.open!" do - it_behaves_like :syslog_reopen, :open! + before :each do + Syslog.opened?.should == false + end + + after :each do + Syslog.opened?.should == false + end + + it "reopens the log" do + Syslog.open + -> { Syslog.open! }.should_not.raise + Syslog.opened?.should == true + Syslog.close + end + + it "fails with RuntimeError if the log is closed" do + -> { Syslog.open! }.should.raise(RuntimeError) + end + + it "receives the same parameters as Syslog.open" do + Syslog.open + Syslog.open!("rubyspec", 3, 8) do |s| + s.should == Syslog + s.ident.should == "rubyspec" + s.options.should == 3 + s.facility.should == Syslog::LOG_USER + s.opened?.should == true + end + Syslog.opened?.should == false + end + + it "returns the module" do + Syslog.open + Syslog.open!.should == Syslog + Syslog.close + end end end |
