1describe :syslog_reopen, shared: true do 2 platform_is_not :windows do 3 before :each do 4 Syslog.opened?.should be_false 5 end 6 7 after :each do 8 Syslog.opened?.should be_false 9 end 10 11 it "reopens the log" do 12 Syslog.open 13 lambda { Syslog.send(@method)}.should_not raise_error 14 Syslog.opened?.should be_true 15 Syslog.close 16 end 17 18 it "fails with RuntimeError if the log is closed" do 19 lambda { Syslog.send(@method)}.should raise_error(RuntimeError) 20 end 21 22 it "receives the same parameters as Syslog.open" do 23 Syslog.open 24 Syslog.send(@method, "rubyspec", 3, 8) do |s| 25 s.should == Syslog 26 s.ident.should == "rubyspec" 27 s.options.should == 3 28 s.facility.should == Syslog::LOG_USER 29 s.opened?.should be_true 30 end 31 Syslog.opened?.should be_false 32 end 33 34 it "returns the module" do 35 Syslog.open 36 Syslog.send(@method).should == Syslog 37 Syslog.close 38 end 39 end 40end 41