diff options
Diffstat (limited to 'spec/ruby/library/syslog')
22 files changed, 543 insertions, 612 deletions
diff --git a/spec/ruby/library/syslog/alert_spec.rb b/spec/ruby/library/syslog/alert_spec.rb index a3a616bd6d..edff789dc9 100644 --- a/spec/ruby/library/syslog/alert_spec.rb +++ b/spec/ruby/library/syslog/alert_spec.rb @@ -1,13 +1,10 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require_relative 'shared/log' + require 'syslog' - platform_is_not :windows do - require_relative 'shared/log' - require 'syslog' - - describe "Syslog.alert" do - it_behaves_like :syslog_log, :alert - end + describe "Syslog.alert" do + it_behaves_like :syslog_log, :alert end end diff --git a/spec/ruby/library/syslog/close_spec.rb b/spec/ruby/library/syslog/close_spec.rb index 60866de971..713ef701d2 100644 --- a/spec/ruby/library/syslog/close_spec.rb +++ b/spec/ruby/library/syslog/close_spec.rb @@ -1,60 +1,57 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do - - platform_is_not :windows do - require 'syslog' - - describe "Syslog.close" do - platform_is_not :windows do - - before :each do - Syslog.opened?.should be_false - end - - after :each do - Syslog.opened?.should be_false - end - - it "closes the log" do - Syslog.opened?.should be_false - Syslog.open - Syslog.opened?.should be_true - Syslog.close - Syslog.opened?.should be_false - end - - it "raises a RuntimeError if the log's already closed" do - -> { Syslog.close }.should raise_error(RuntimeError) - end - - it "it does not work inside blocks" do - -> { - Syslog.open { |s| s.close } - }.should raise_error(RuntimeError) - Syslog.should_not.opened? - end - - it "sets the identity to nil" do - Syslog.open("rubyspec") - Syslog.ident.should == "rubyspec" - Syslog.close - Syslog.ident.should be_nil - end - - it "sets the options to nil" do - Syslog.open("rubyspec", Syslog::LOG_PID) - Syslog.options.should == Syslog::LOG_PID - Syslog.close - Syslog.options.should == nil - end - - it "sets the facility to nil" do - Syslog.open - Syslog.facility.should == 8 - Syslog.close - Syslog.facility.should == nil - end +platform_is_not :windows do + require 'syslog' + + describe "Syslog.close" do + platform_is_not :windows do + + before :each do + Syslog.opened?.should == false + end + + after :each do + Syslog.opened?.should == false + end + + it "closes the log" do + Syslog.opened?.should == false + Syslog.open + Syslog.opened?.should == true + Syslog.close + Syslog.opened?.should == false + end + + it "raises a RuntimeError if the log's already closed" do + -> { Syslog.close }.should.raise(RuntimeError) + end + + it "it does not work inside blocks" do + -> { + Syslog.open { |s| s.close } + }.should.raise(RuntimeError) + Syslog.should_not.opened? + end + + it "sets the identity to nil" do + Syslog.open("rubyspec") + Syslog.ident.should == "rubyspec" + Syslog.close + Syslog.ident.should == nil + end + + it "sets the options to nil" do + Syslog.open("rubyspec", Syslog::LOG_PID) + Syslog.options.should == Syslog::LOG_PID + Syslog.close + Syslog.options.should == nil + end + + it "sets the facility to nil" do + Syslog.open + Syslog.facility.should == 8 + Syslog.close + Syslog.facility.should == nil end end end diff --git a/spec/ruby/library/syslog/constants_spec.rb b/spec/ruby/library/syslog/constants_spec.rb index d44d67e2de..a6ac355ddd 100644 --- a/spec/ruby/library/syslog/constants_spec.rb +++ b/spec/ruby/library/syslog/constants_spec.rb @@ -1,43 +1,40 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require 'syslog' - platform_is_not :windows do - require 'syslog' - - describe "Syslog::Constants" do - platform_is_not :windows, :solaris, :aix do - before :all do - @constants = %w(LOG_AUTHPRIV LOG_USER LOG_LOCAL2 LOG_NOTICE LOG_NDELAY - LOG_SYSLOG LOG_ALERT LOG_FTP LOG_LOCAL5 LOG_ERR LOG_AUTH - LOG_LOCAL1 LOG_ODELAY LOG_NEWS LOG_DAEMON LOG_LOCAL4 - LOG_CRIT LOG_INFO LOG_PERROR LOG_LOCAL0 LOG_CONS LOG_LPR - LOG_LOCAL7 LOG_WARNING LOG_CRON LOG_LOCAL3 LOG_EMERG - LOG_NOWAIT LOG_UUCP LOG_PID LOG_KERN LOG_MAIL LOG_LOCAL6 - LOG_DEBUG) - end + describe "Syslog::Constants" do + platform_is_not :windows, :aix do + before :all do + @constants = %w(LOG_AUTHPRIV LOG_USER LOG_LOCAL2 LOG_NOTICE LOG_NDELAY + LOG_SYSLOG LOG_ALERT LOG_FTP LOG_LOCAL5 LOG_ERR LOG_AUTH + LOG_LOCAL1 LOG_ODELAY LOG_NEWS LOG_DAEMON LOG_LOCAL4 + LOG_CRIT LOG_INFO LOG_PERROR LOG_LOCAL0 LOG_CONS LOG_LPR + LOG_LOCAL7 LOG_WARNING LOG_CRON LOG_LOCAL3 LOG_EMERG + LOG_NOWAIT LOG_UUCP LOG_PID LOG_KERN LOG_MAIL LOG_LOCAL6 + LOG_DEBUG) + end - it "includes the Syslog constants" do - @constants.each do |c| - Syslog::Constants.should have_constant(c) - end + it "includes the Syslog constants" do + @constants.each do |c| + Syslog::Constants.should.const_defined?(c, true) end end + end - # The masks are defined in <syslog.h> + # The masks are defined in <syslog.h> - describe "Syslog::Constants.LOG_MASK" do - it "returns the mask value for a priority" do - Syslog::Constants.LOG_MASK(Syslog::LOG_DEBUG).should == 128 - Syslog::Constants.LOG_MASK(Syslog::LOG_WARNING).should == 16 - end + describe "Syslog::Constants.LOG_MASK" do + it "returns the mask value for a priority" do + Syslog::Constants.LOG_MASK(Syslog::LOG_DEBUG).should == 128 + Syslog::Constants.LOG_MASK(Syslog::LOG_WARNING).should == 16 end + end - describe "Syslog::Constants.LOG_UPTO" do - it "returns a mask for the priorities up to a given argument" do - Syslog::Constants.LOG_UPTO(Syslog::LOG_ALERT).should == 3 - Syslog::Constants.LOG_UPTO(Syslog::LOG_DEBUG).should == 255 - end + describe "Syslog::Constants.LOG_UPTO" do + it "returns a mask for the priorities up to a given argument" do + Syslog::Constants.LOG_UPTO(Syslog::LOG_ALERT).should == 3 + Syslog::Constants.LOG_UPTO(Syslog::LOG_DEBUG).should == 255 end end end diff --git a/spec/ruby/library/syslog/crit_spec.rb b/spec/ruby/library/syslog/crit_spec.rb index d7841ac010..5d3904f719 100644 --- a/spec/ruby/library/syslog/crit_spec.rb +++ b/spec/ruby/library/syslog/crit_spec.rb @@ -1,13 +1,10 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require_relative 'shared/log' + require 'syslog' - platform_is_not :windows do - require_relative 'shared/log' - require 'syslog' - - describe "Syslog.crit" do - it_behaves_like :syslog_log, :crit - end + describe "Syslog.crit" do + it_behaves_like :syslog_log, :crit end end diff --git a/spec/ruby/library/syslog/debug_spec.rb b/spec/ruby/library/syslog/debug_spec.rb index 94e640c741..d03e8a88c9 100644 --- a/spec/ruby/library/syslog/debug_spec.rb +++ b/spec/ruby/library/syslog/debug_spec.rb @@ -1,13 +1,10 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require_relative 'shared/log' + require 'syslog' - platform_is_not :windows do - require_relative 'shared/log' - require 'syslog' - - describe "Syslog.debug" do - it_behaves_like :syslog_log, :debug - end + describe "Syslog.debug" do + it_behaves_like :syslog_log, :debug end end diff --git a/spec/ruby/library/syslog/emerg_spec.rb b/spec/ruby/library/syslog/emerg_spec.rb index 86938ce889..2ab4d60291 100644 --- a/spec/ruby/library/syslog/emerg_spec.rb +++ b/spec/ruby/library/syslog/emerg_spec.rb @@ -1,19 +1,16 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require_relative 'shared/log' + require 'syslog' - platform_is_not :windows do - require_relative 'shared/log' - require 'syslog' - - describe "Syslog.emerg" do - # Some way needs do be found to prevent this spec - # from causing output on all open terminals. If this - # is not possible, this spec may need a special guard - # that only runs when requested. - quarantine! do - it_behaves_like :syslog_log, :emerg - end + describe "Syslog.emerg" do + # Some way needs do be found to prevent this spec + # from causing output on all open terminals. If this + # is not possible, this spec may need a special guard + # that only runs when requested. + quarantine! do + it_behaves_like :syslog_log, :emerg end end end diff --git a/spec/ruby/library/syslog/err_spec.rb b/spec/ruby/library/syslog/err_spec.rb index a7b39ea5c0..43e876ed37 100644 --- a/spec/ruby/library/syslog/err_spec.rb +++ b/spec/ruby/library/syslog/err_spec.rb @@ -1,13 +1,10 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require_relative 'shared/log' + require 'syslog' - platform_is_not :windows do - require_relative 'shared/log' - require 'syslog' - - describe "Syslog.err" do - it_behaves_like :syslog_log, :err - end + describe "Syslog.err" do + it_behaves_like :syslog_log, :err end end diff --git a/spec/ruby/library/syslog/facility_spec.rb b/spec/ruby/library/syslog/facility_spec.rb index 1129dd9ee3..79a685c201 100644 --- a/spec/ruby/library/syslog/facility_spec.rb +++ b/spec/ruby/library/syslog/facility_spec.rb @@ -1,50 +1,47 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do - - platform_is_not :windows do - require 'syslog' - - describe "Syslog.facility" do - platform_is_not :windows do - - before :each do - Syslog.opened?.should be_false - end - - after :each do - Syslog.opened?.should be_false - end - - it "returns the logging facility" do - Syslog.open("rubyspec", 3, Syslog::LOG_MAIL) - Syslog.facility.should == Syslog::LOG_MAIL - Syslog.close - end - - it "returns nil if the log is closed" do - Syslog.opened?.should be_false - Syslog.facility.should == nil - end - - it "defaults to LOG_USER" do - Syslog.open - Syslog.facility.should == Syslog::LOG_USER - Syslog.close - end - - it "resets after each open call" do - Syslog.open - Syslog.facility.should == Syslog::LOG_USER - - Syslog.open!("rubyspec", 3, Syslog::LOG_MAIL) - Syslog.facility.should == Syslog::LOG_MAIL - Syslog.close - - Syslog.open - Syslog.facility.should == Syslog::LOG_USER - Syslog.close - end +platform_is_not :windows do + require 'syslog' + + describe "Syslog.facility" do + platform_is_not :windows do + + before :each do + Syslog.opened?.should == false + end + + after :each do + Syslog.opened?.should == false + end + + it "returns the logging facility" do + Syslog.open("rubyspec", 3, Syslog::LOG_MAIL) + Syslog.facility.should == Syslog::LOG_MAIL + Syslog.close + end + + it "returns nil if the log is closed" do + Syslog.opened?.should == false + Syslog.facility.should == nil + end + + it "defaults to LOG_USER" do + Syslog.open + Syslog.facility.should == Syslog::LOG_USER + Syslog.close + end + + it "resets after each open call" do + Syslog.open + Syslog.facility.should == Syslog::LOG_USER + + Syslog.open!("rubyspec", 3, Syslog::LOG_MAIL) + Syslog.facility.should == Syslog::LOG_MAIL + Syslog.close + + Syslog.open + Syslog.facility.should == Syslog::LOG_USER + Syslog.close end end end diff --git a/spec/ruby/library/syslog/ident_spec.rb b/spec/ruby/library/syslog/ident_spec.rb index 524e560373..80302a42b8 100644 --- a/spec/ruby/library/syslog/ident_spec.rb +++ b/spec/ruby/library/syslog/ident_spec.rb @@ -1,37 +1,34 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require 'syslog' - platform_is_not :windows do - require 'syslog' + describe "Syslog.ident" do + platform_is_not :windows do - describe "Syslog.ident" do - platform_is_not :windows do - - before :each do - Syslog.opened?.should be_false - end + before :each do + Syslog.opened?.should == false + end - after :each do - Syslog.opened?.should be_false - end + after :each do + Syslog.opened?.should == false + end - it "returns the logging identity" do - Syslog.open("rubyspec") - Syslog.ident.should == "rubyspec" - Syslog.close - end + it "returns the logging identity" do + Syslog.open("rubyspec") + Syslog.ident.should == "rubyspec" + Syslog.close + end - it "returns nil if the log is closed" do - Syslog.should_not.opened? - Syslog.ident.should == nil - end + it "returns nil if the log is closed" do + Syslog.should_not.opened? + Syslog.ident.should == nil + end - it "defaults to $0" do - Syslog.open - Syslog.ident.should == $0 - Syslog.close - end + it "defaults to $0" do + Syslog.open + Syslog.ident.should == $0 + Syslog.close end end end diff --git a/spec/ruby/library/syslog/info_spec.rb b/spec/ruby/library/syslog/info_spec.rb index 03bb6f6003..f2d535299c 100644 --- a/spec/ruby/library/syslog/info_spec.rb +++ b/spec/ruby/library/syslog/info_spec.rb @@ -1,13 +1,10 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require_relative 'shared/log' + require 'syslog' - platform_is_not :windows do - require_relative 'shared/log' - require 'syslog' - - describe "Syslog.info" do - it_behaves_like :syslog_log, :info - end + describe "Syslog.info" do + it_behaves_like :syslog_log, :info end end diff --git a/spec/ruby/library/syslog/inspect_spec.rb b/spec/ruby/library/syslog/inspect_spec.rb index 5e1e09e86f..6407423fd3 100644 --- a/spec/ruby/library/syslog/inspect_spec.rb +++ b/spec/ruby/library/syslog/inspect_spec.rb @@ -1,41 +1,38 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require 'syslog' - platform_is_not :windows do - require 'syslog' + describe "Syslog.inspect" do + platform_is_not :windows do - describe "Syslog.inspect" do - platform_is_not :windows do - - before :each do - Syslog.opened?.should be_false - end + before :each do + Syslog.opened?.should == false + end - after :each do - Syslog.opened?.should be_false - end + after :each do + Syslog.opened?.should == false + end - it "returns a string a closed log" do - Syslog.inspect.should =~ /opened=false/ - end + it "returns a string a closed log" do + Syslog.inspect.should =~ /opened=false/ + end - it "returns a string for an opened log" do - Syslog.open - Syslog.inspect.should =~ /opened=true.*/ - Syslog.close - end + it "returns a string for an opened log" do + Syslog.open + Syslog.inspect.should =~ /opened=true.*/ + Syslog.close + end - it "includes the ident, options, facility and mask" do - Syslog.open("rubyspec", Syslog::LOG_PID, Syslog::LOG_USER) - inspect_str = Syslog.inspect.split ", " - inspect_str[0].should =~ /opened=true/ - inspect_str[1].should == "ident=\"rubyspec\"" - inspect_str[2].should == "options=#{Syslog::LOG_PID}" - inspect_str[3].should == "facility=#{Syslog::LOG_USER}" - inspect_str[4].should == "mask=255>" - Syslog.close - end + it "includes the ident, options, facility and mask" do + Syslog.open("rubyspec", Syslog::LOG_PID, Syslog::LOG_USER) + inspect_str = Syslog.inspect.split ", " + inspect_str[0].should =~ /opened=true/ + inspect_str[1].should == "ident=\"rubyspec\"" + inspect_str[2].should == "options=#{Syslog::LOG_PID}" + inspect_str[3].should == "facility=#{Syslog::LOG_USER}" + inspect_str[4].should == "mask=255>" + Syslog.close end end end diff --git a/spec/ruby/library/syslog/instance_spec.rb b/spec/ruby/library/syslog/instance_spec.rb index b7a7d122f0..891296c52d 100644 --- a/spec/ruby/library/syslog/instance_spec.rb +++ b/spec/ruby/library/syslog/instance_spec.rb @@ -1,15 +1,12 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require 'syslog' - platform_is_not :windows do - require 'syslog' - - describe "Syslog.instance" do - platform_is_not :windows do - it "returns the module" do - Syslog.instance.should == Syslog - end + describe "Syslog.instance" do + platform_is_not :windows do + it "returns the module" do + Syslog.instance.should == Syslog end end end diff --git a/spec/ruby/library/syslog/log_spec.rb b/spec/ruby/library/syslog/log_spec.rb index 749d825c10..1650283371 100644 --- a/spec/ruby/library/syslog/log_spec.rb +++ b/spec/ruby/library/syslog/log_spec.rb @@ -1,58 +1,55 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require 'syslog' - platform_is_not :windows do - require 'syslog' + describe "Syslog.log" do + platform_is_not :windows, :darwin, :aix, :android do - describe "Syslog.log" do - platform_is_not :windows, :darwin, :solaris, :aix, :android do - - before :each do - Syslog.opened?.should be_false - end - - after :each do - Syslog.opened?.should be_false - end + before :each do + Syslog.opened?.should == false + end - it "receives a priority as first argument" do - -> { - Syslog.open("rubyspec", Syslog::LOG_PERROR) do |s| - s.log(Syslog::LOG_ALERT, "Hello") - s.log(Syslog::LOG_CRIT, "World") - end - }.should output_to_fd(/\Arubyspec(?::| \d+ - -) Hello\nrubyspec(?::| \d+ - -) World\n\z/, $stderr) - end + after :each do + Syslog.opened?.should == false + end - it "accepts undefined priorities" do - -> { - Syslog.open("rubyspec", Syslog::LOG_PERROR) do |s| - s.log(1337, "Hello") - end - # use a regex since it'll output unknown facility/priority messages - }.should output_to_fd(/rubyspec(?::| \d+ - -) Hello\n\z/, $stderr) - end + it "receives a priority as first argument" do + -> { + Syslog.open("rubyspec", Syslog::LOG_PERROR) do |s| + s.log(Syslog::LOG_ALERT, "Hello") + s.log(Syslog::LOG_CRIT, "World") + end + }.should output_to_fd(/\Arubyspec(?::| \d+ - -) Hello\nrubyspec(?::| \d+ - -) World\n\z/, $stderr) + end - it "fails with TypeError on nil log messages" do - Syslog.open do |s| - -> { s.log(1, nil) }.should raise_error(TypeError) + it "accepts undefined priorities" do + -> { + Syslog.open("rubyspec", Syslog::LOG_PERROR) do |s| + s.log(1337, "Hello") end - end + # use a regex since it'll output unknown facility/priority messages + }.should output_to_fd(/rubyspec(?::| \d+ - -) Hello\n\z/, $stderr) + end - it "fails if the log is closed" do - -> { - Syslog.log(Syslog::LOG_ALERT, "test") - }.should raise_error(RuntimeError) + it "fails with TypeError on nil log messages" do + Syslog.open do |s| + -> { s.log(1, nil) }.should.raise(TypeError) end + end - it "accepts printf parameters" do - -> { - Syslog.open("rubyspec", Syslog::LOG_PERROR) do |s| - s.log(Syslog::LOG_ALERT, "%s x %d", "chunky bacon", 2) - end - }.should output_to_fd(/rubyspec(?::| \d+ - -) chunky bacon x 2\n\z/, $stderr) - end + it "fails if the log is closed" do + -> { + Syslog.log(Syslog::LOG_ALERT, "test") + }.should.raise(RuntimeError) + end + + it "accepts printf parameters" do + -> { + Syslog.open("rubyspec", Syslog::LOG_PERROR) do |s| + s.log(Syslog::LOG_ALERT, "%s x %d", "chunky bacon", 2) + end + }.should output_to_fd(/rubyspec(?::| \d+ - -) chunky bacon x 2\n\z/, $stderr) end end end diff --git a/spec/ruby/library/syslog/mask_spec.rb b/spec/ruby/library/syslog/mask_spec.rb index 05c64ceec8..23cca6fa8d 100644 --- a/spec/ruby/library/syslog/mask_spec.rb +++ b/spec/ruby/library/syslog/mask_spec.rb @@ -1,114 +1,111 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require 'syslog' - platform_is_not :windows do - require 'syslog' + describe "Syslog.mask" do + platform_is_not :windows do - describe "Syslog.mask" do - platform_is_not :windows do + before :each do + Syslog.opened?.should == false + end - before :each do - Syslog.opened?.should be_false - end + after :each do + Syslog.opened?.should == false + # make sure we return the mask to the default value + Syslog.open { |s| s.mask = 255 } + end - after :each do - Syslog.opened?.should be_false - # make sure we return the mask to the default value - Syslog.open { |s| s.mask = 255 } + it "returns the log priority mask" do + Syslog.open("rubyspec") do + Syslog.mask.should == 255 + Syslog.mask = 3 + Syslog.mask.should == 3 + Syslog.mask = 255 end + end - it "returns the log priority mask" do - Syslog.open("rubyspec") do - Syslog.mask.should == 255 - Syslog.mask = 3 - Syslog.mask.should == 3 - Syslog.mask = 255 - end + it "defaults to 255" do + Syslog.open do |s| + s.mask.should == 255 end + end - it "defaults to 255" do - Syslog.open do |s| - s.mask.should == 255 - end - end + it "returns nil if the log is closed" do + Syslog.should_not.opened? + Syslog.mask.should == nil + end - it "returns nil if the log is closed" do - Syslog.should_not.opened? - Syslog.mask.should == nil - end + platform_is :darwin do + it "resets if the log is reopened" do + Syslog.open + Syslog.mask.should == 255 + Syslog.mask = 64 - platform_is :darwin do - it "resets if the log is reopened" do - Syslog.open + Syslog.reopen("rubyspec") do Syslog.mask.should == 255 - Syslog.mask = 64 - - Syslog.reopen("rubyspec") do - Syslog.mask.should == 255 - end + end - Syslog.open do - Syslog.mask.should == 255 - end + Syslog.open do + Syslog.mask.should == 255 end end + end - platform_is_not :darwin do - it "persists if the log is reopened" do - Syslog.open - Syslog.mask.should == 255 - Syslog.mask = 64 + platform_is_not :darwin do + it "persists if the log is reopened" do + Syslog.open + Syslog.mask.should == 255 + Syslog.mask = 64 - Syslog.reopen("rubyspec") do - Syslog.mask.should == 64 - end + Syslog.reopen("rubyspec") do + Syslog.mask.should == 64 + end - Syslog.open do - Syslog.mask.should == 64 - end + Syslog.open do + Syslog.mask.should == 64 end end end end + end - describe "Syslog.mask=" do - platform_is_not :windows do + describe "Syslog.mask=" do + platform_is_not :windows do - before :each do - Syslog.opened?.should be_false - end + before :each do + Syslog.opened?.should == false + end - after :each do - Syslog.opened?.should be_false - # make sure we return the mask to the default value - Syslog.open { |s| s.mask = 255 } - end + after :each do + Syslog.opened?.should == false + # make sure we return the mask to the default value + Syslog.open { |s| s.mask = 255 } + end - it "sets the log priority mask" do - Syslog.open do - Syslog.mask = 64 - Syslog.mask.should == 64 - end + it "sets the log priority mask" do + Syslog.open do + Syslog.mask = 64 + Syslog.mask.should == 64 end + end - it "raises an error if the log is closed" do - -> { Syslog.mask = 1337 }.should raise_error(RuntimeError) - end + it "raises an error if the log is closed" do + -> { Syslog.mask = 1337 }.should.raise(RuntimeError) + end - it "only accepts numbers" do - Syslog.open do + it "only accepts numbers" do + Syslog.open do - Syslog.mask = 1337 - Syslog.mask.should == 1337 + Syslog.mask = 1337 + Syslog.mask.should == 1337 - Syslog.mask = 3.1416 - Syslog.mask.should == 3 + Syslog.mask = 3.1416 + Syslog.mask.should == 3 - -> { Syslog.mask = "oh hai" }.should raise_error(TypeError) - -> { Syslog.mask = "43" }.should raise_error(TypeError) + -> { Syslog.mask = "oh hai" }.should.raise(TypeError) + -> { Syslog.mask = "43" }.should.raise(TypeError) - end end end end diff --git a/spec/ruby/library/syslog/notice_spec.rb b/spec/ruby/library/syslog/notice_spec.rb index 41c175cb49..a2134e0140 100644 --- a/spec/ruby/library/syslog/notice_spec.rb +++ b/spec/ruby/library/syslog/notice_spec.rb @@ -1,13 +1,10 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require_relative 'shared/log' + require 'syslog' - platform_is_not :windows do - require_relative 'shared/log' - require 'syslog' - - describe "Syslog.notice" do - it_behaves_like :syslog_log, :notice - end + describe "Syslog.notice" do + it_behaves_like :syslog_log, :notice end end diff --git a/spec/ruby/library/syslog/open_spec.rb b/spec/ruby/library/syslog/open_spec.rb index 9cd65cda4a..3aceea007d 100644 --- a/spec/ruby/library/syslog/open_spec.rb +++ b/spec/ruby/library/syslog/open_spec.rb @@ -1,95 +1,126 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require 'syslog' - platform_is_not :windows do - require_relative 'shared/reopen' - require 'syslog' + describe "Syslog.open" do + platform_is_not :windows do - describe "Syslog.open" do - platform_is_not :windows do + before :each do + Syslog.opened?.should == false + end - before :each do - Syslog.opened?.should be_false - end + after :each do + Syslog.opened?.should == false + end - after :each do - Syslog.opened?.should be_false - end + it "returns the module" do + Syslog.open.should == Syslog + Syslog.close + Syslog.open("Test", 5, 9).should == Syslog + Syslog.close + end - it "returns the module" do - Syslog.open.should == Syslog - Syslog.close - Syslog.open("Test", 5, 9).should == Syslog - Syslog.close - end + it "receives an identity as first argument" do + Syslog.open("rubyspec") + Syslog.ident.should == "rubyspec" + Syslog.close + end - it "receives an identity as first argument" do - Syslog.open("rubyspec") - Syslog.ident.should == "rubyspec" - Syslog.close - end + it "defaults the identity to $0" do + Syslog.open + Syslog.ident.should == $0 + Syslog.close + end - it "defaults the identity to $0" do - Syslog.open - Syslog.ident.should == $0 - Syslog.close - end + it "receives the logging options as second argument" do + Syslog.open("rubyspec", Syslog::LOG_PID) + Syslog.options.should == Syslog::LOG_PID + Syslog.close + end - it "receives the logging options as second argument" do - Syslog.open("rubyspec", Syslog::LOG_PID) - Syslog.options.should == Syslog::LOG_PID - Syslog.close - end + it "defaults the logging options to LOG_PID | LOG_CONS" do + Syslog.open + Syslog.options.should == Syslog::LOG_PID | Syslog::LOG_CONS + Syslog.close + end - it "defaults the logging options to LOG_PID | LOG_CONS" do - Syslog.open - Syslog.options.should == Syslog::LOG_PID | Syslog::LOG_CONS - Syslog.close - end + it "receives a facility as third argument" do + Syslog.open("rubyspec", Syslog::LOG_PID, 0) + Syslog.facility.should == 0 + Syslog.close + end - it "receives a facility as third argument" do - Syslog.open("rubyspec", Syslog::LOG_PID, 0) - Syslog.facility.should == 0 - Syslog.close + it "defaults the facility to LOG_USER" do + Syslog.open + Syslog.facility.should == Syslog::LOG_USER + Syslog.close + end + + it "receives a block and calls it with the module" do + Syslog.open("rubyspec", 3, 8) do |s| + s.should == Syslog + s.ident.should == "rubyspec" + s.options.should == 3 + s.facility.should == Syslog::LOG_USER end + end + + it "closes the log if after it receives a block" do + Syslog.open{ } + Syslog.opened?.should == false + end - it "defaults the facility to LOG_USER" do + it "raises an error if the log is opened" do + Syslog.open + -> { Syslog.open - Syslog.facility.should == Syslog::LOG_USER + }.should.raise(RuntimeError, /syslog already open/) + -> { Syslog.close - end + Syslog.open + }.should_not.raise + Syslog.close + end + end + end - it "receives a block and calls it with the module" do - Syslog.open("rubyspec", 3, 8) do |s| - s.should == Syslog - s.ident.should == "rubyspec" - s.options.should == 3 - s.facility.should == Syslog::LOG_USER - end - end + describe "Syslog.open!" do + before :each do + Syslog.opened?.should == false + end - it "closes the log if after it receives a block" do - Syslog.open{ } - Syslog.opened?.should be_false - end + after :each do + Syslog.opened?.should == false + end - it "raises an error if the log is opened" do - Syslog.open - -> { - Syslog.open - }.should raise_error(RuntimeError, /syslog already open/) - -> { - Syslog.close - Syslog.open - }.should_not raise_error - Syslog.close - 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 - describe "Syslog.open!" do - it_behaves_like :syslog_reopen, :open! + it "returns the module" do + Syslog.open + Syslog.open!.should == Syslog + Syslog.close end end end diff --git a/spec/ruby/library/syslog/opened_spec.rb b/spec/ruby/library/syslog/opened_spec.rb index ee7a884a50..ad4311d15a 100644 --- a/spec/ruby/library/syslog/opened_spec.rb +++ b/spec/ruby/library/syslog/opened_spec.rb @@ -1,41 +1,38 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require 'syslog' - platform_is_not :windows do - require 'syslog' + describe "Syslog.opened?" do + platform_is_not :windows do - describe "Syslog.opened?" do - platform_is_not :windows do - - before :each do - Syslog.opened?.should be_false - end + before :each do + Syslog.opened?.should == false + end - after :each do - Syslog.opened?.should be_false - end + after :each do + Syslog.opened?.should == false + end - it "returns true if the log is opened" do - Syslog.open - Syslog.opened?.should be_true - Syslog.close - end + it "returns true if the log is opened" do + Syslog.open + Syslog.opened?.should == true + Syslog.close + end - it "returns false otherwise" do - Syslog.opened?.should be_false - Syslog.open - Syslog.close - Syslog.opened?.should be_false - end + it "returns false otherwise" do + Syslog.opened?.should == false + Syslog.open + Syslog.close + Syslog.opened?.should == false + end - it "works inside a block" do - Syslog.open do |s| - s.opened?.should be_true - Syslog.opened?.should be_true - end - Syslog.opened?.should be_false + it "works inside a block" do + Syslog.open do |s| + s.opened?.should == true + Syslog.opened?.should == true end + Syslog.opened?.should == false end end end diff --git a/spec/ruby/library/syslog/options_spec.rb b/spec/ruby/library/syslog/options_spec.rb index 814f7daee6..2035272f70 100644 --- a/spec/ruby/library/syslog/options_spec.rb +++ b/spec/ruby/library/syslog/options_spec.rb @@ -1,50 +1,47 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do - - platform_is_not :windows do - require 'syslog' - - describe "Syslog.options" do - platform_is_not :windows do - - before :each do - Syslog.opened?.should be_false - end - - after :each do - Syslog.opened?.should be_false - end - - it "returns the logging options" do - Syslog.open("rubyspec", Syslog::LOG_PID) - Syslog.options.should == Syslog::LOG_PID - Syslog.close - end - - it "returns nil when the log is closed" do - Syslog.opened?.should be_false - Syslog.options.should == nil - end - - it "defaults to LOG_PID | LOG_CONS" do - Syslog.open - Syslog.options.should == Syslog::LOG_PID | Syslog::LOG_CONS - Syslog.close - end - - it "resets after each open call" do - Syslog.open - Syslog.options.should == Syslog::LOG_PID | Syslog::LOG_CONS - - Syslog.open!("rubyspec", Syslog::LOG_PID) - Syslog.options.should == Syslog::LOG_PID - Syslog.close - - Syslog.open - Syslog.options.should == Syslog::LOG_PID | Syslog::LOG_CONS - Syslog.close - end +platform_is_not :windows do + require 'syslog' + + describe "Syslog.options" do + platform_is_not :windows do + + before :each do + Syslog.opened?.should == false + end + + after :each do + Syslog.opened?.should == false + end + + it "returns the logging options" do + Syslog.open("rubyspec", Syslog::LOG_PID) + Syslog.options.should == Syslog::LOG_PID + Syslog.close + end + + it "returns nil when the log is closed" do + Syslog.opened?.should == false + Syslog.options.should == nil + end + + it "defaults to LOG_PID | LOG_CONS" do + Syslog.open + Syslog.options.should == Syslog::LOG_PID | Syslog::LOG_CONS + Syslog.close + end + + it "resets after each open call" do + Syslog.open + Syslog.options.should == Syslog::LOG_PID | Syslog::LOG_CONS + + Syslog.open!("rubyspec", Syslog::LOG_PID) + Syslog.options.should == Syslog::LOG_PID + Syslog.close + + Syslog.open + Syslog.options.should == Syslog::LOG_PID | Syslog::LOG_CONS + Syslog.close end end end diff --git a/spec/ruby/library/syslog/reopen_spec.rb b/spec/ruby/library/syslog/reopen_spec.rb index 47861bc1c0..ef32d13a87 100644 --- a/spec/ruby/library/syslog/reopen_spec.rb +++ b/spec/ruby/library/syslog/reopen_spec.rb @@ -1,13 +1,11 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require 'syslog' - platform_is_not :windows do - require_relative 'shared/reopen' - require 'syslog' - - describe "Syslog.reopen" do - it_behaves_like :syslog_reopen, :reopen + describe "Syslog.reopen" do + it "is an alias of Syslog.open!" do + Syslog.method(:reopen).should == Syslog.method(:open!) end end end diff --git a/spec/ruby/library/syslog/shared/log.rb b/spec/ruby/library/syslog/shared/log.rb index d6daf3cc67..98ce4f54b2 100644 --- a/spec/ruby/library/syslog/shared/log.rb +++ b/spec/ruby/library/syslog/shared/log.rb @@ -1,41 +1,39 @@ -ruby_version_is ""..."3.4" do - describe :syslog_log, shared: true do - platform_is_not :windows, :darwin, :solaris, :aix, :android do - before :each do - Syslog.opened?.should be_false - end +describe :syslog_log, shared: true do + platform_is_not :windows, :darwin, :aix, :android do + before :each do + Syslog.opened?.should == false + end - after :each do - Syslog.opened?.should be_false - end + after :each do + Syslog.opened?.should == false + end - it "logs a message" do - -> { - Syslog.open("rubyspec", Syslog::LOG_PERROR) do - Syslog.send(@method, "Hello") - end - }.should output_to_fd(/\Arubyspec(?::| \d+ - -) Hello\n\z/, $stderr) - end + it "logs a message" do + -> { + Syslog.open("rubyspec", Syslog::LOG_PERROR) do + Syslog.send(@method, "Hello") + end + }.should output_to_fd(/\Arubyspec(?::| \d+ - -) Hello\n\z/, $stderr) + end - it "accepts sprintf arguments" do - -> { - Syslog.open("rubyspec", Syslog::LOG_PERROR) do - Syslog.send(@method, "Hello %s", "world") - Syslog.send(@method, "%d dogs", 2) - end - }.should output_to_fd(/\Arubyspec(?::| \d+ - -) Hello world\nrubyspec(?::| \d+ - -) 2 dogs\n\z/, $stderr) - end + it "accepts sprintf arguments" do + -> { + Syslog.open("rubyspec", Syslog::LOG_PERROR) do + Syslog.send(@method, "Hello %s", "world") + Syslog.send(@method, "%d dogs", 2) + end + }.should output_to_fd(/\Arubyspec(?::| \d+ - -) Hello world\nrubyspec(?::| \d+ - -) 2 dogs\n\z/, $stderr) + end - it "works as an alias for Syslog.log" do - level = Syslog.const_get "LOG_#{@method.to_s.upcase}" - -> { - Syslog.open("rubyspec", Syslog::LOG_PERROR) do - Syslog.send(@method, "Hello") - Syslog.log(level, "Hello") - end - # make sure the same thing is written to $stderr. - }.should output_to_fd(/\A(?:rubyspec(?::| \d+ - -) Hello\n){2}\z/, $stderr) - end + it "works as an alias for Syslog.log" do + level = Syslog.const_get "LOG_#{@method.to_s.upcase}" + -> { + Syslog.open("rubyspec", Syslog::LOG_PERROR) do + Syslog.send(@method, "Hello") + Syslog.log(level, "Hello") + end + # make sure the same thing is written to $stderr. + }.should output_to_fd(/\A(?:rubyspec(?::| \d+ - -) Hello\n){2}\z/, $stderr) end end end diff --git a/spec/ruby/library/syslog/shared/reopen.rb b/spec/ruby/library/syslog/shared/reopen.rb deleted file mode 100644 index 935349010b..0000000000 --- a/spec/ruby/library/syslog/shared/reopen.rb +++ /dev/null @@ -1,42 +0,0 @@ -ruby_version_is ""..."3.4" do - describe :syslog_reopen, shared: true do - platform_is_not :windows do - before :each do - Syslog.opened?.should be_false - end - - after :each do - Syslog.opened?.should be_false - end - - it "reopens the log" do - Syslog.open - -> { Syslog.send(@method)}.should_not raise_error - Syslog.opened?.should be_true - Syslog.close - end - - it "fails with RuntimeError if the log is closed" do - -> { Syslog.send(@method)}.should raise_error(RuntimeError) - end - - it "receives the same parameters as Syslog.open" do - Syslog.open - Syslog.send(@method, "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 be_true - end - Syslog.opened?.should be_false - end - - it "returns the module" do - Syslog.open - Syslog.send(@method).should == Syslog - Syslog.close - end - end - end -end diff --git a/spec/ruby/library/syslog/warning_spec.rb b/spec/ruby/library/syslog/warning_spec.rb index cf0f7d0dc2..eeca603136 100644 --- a/spec/ruby/library/syslog/warning_spec.rb +++ b/spec/ruby/library/syslog/warning_spec.rb @@ -1,13 +1,10 @@ require_relative '../../spec_helper' -ruby_version_is ""..."3.4" do +platform_is_not :windows do + require_relative 'shared/log' + require 'syslog' - platform_is_not :windows do - require_relative 'shared/log' - require 'syslog' - - describe "Syslog.warning" do - it_behaves_like :syslog_log, :warning - end + describe "Syslog.warning" do + it_behaves_like :syslog_log, :warning end end |
