diff options
author | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-05-29 22:48:42 +0000 |
---|---|---|
committer | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-05-29 22:48:42 +0000 |
commit | 5b66b692dde7cf64e06216aefdb76748d5f33377 (patch) | |
tree | 48187f28fbbc974d7704501926d107a637299a27 | |
parent | a7fb5151464fddaad13c9fae922ba534ac9b125a (diff) |
merges r31177,r31178 and r31179 from trunk into ruby_1_9_2.
--
Use LOG_PID instead of LOG_PERROR in Syslog.open test
LOG_PERROR isn't a POSIX option for syslog, so it fails on platforms
that don't define it. Solaris 9 and 10 are examples of this.
Use LOG_PID instead.
Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca>
Signed-off-by: URABE, Shyouhei <shyouhei@ruby-lang.org>
--
Skip syslog tests that rely on LOG_PERROR unless it's defined
Instead of checking looking at the platform to determine if the tests
relying on LOG_PERROR should be run, look for the definition of the
constant as this will be robust against all platforms as long as the
underlying syslog.c code sets it up correctly.
This specifically addresses failures on Solaris 9.
Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca>
Signed-off-by: URABE, Shyouhei <shyouhei@ruby-lang.org>
--
ChangeLog for it
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_2@31793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 19 | ||||
-rw-r--r-- | test/test_syslog.rb | 10 | ||||
-rw-r--r-- | version.h | 2 |
3 files changed, 26 insertions, 5 deletions
@@ -1,3 +1,22 @@ +Fri Mar 25 19:39:40 2011 Ben Walton <bwalton@artsci.utoronto.ca> + + * test/test_syslog.rb: + Skip syslog tests that rely on LOG_PERROR unless it's defined + + Instead of checking looking at the platform to determine if the tests + relying on LOG_PERROR should be run, look for the definition of the + constant as this will be robust against all platforms as long as the + underlying syslog.c code sets it up correctly. + + This specifically addresses failures on Solaris 9. + + Use LOG_PID instead of LOG_PERROR in Syslog.open test + + LOG_PERROR isn't a POSIX option for syslog, so it fails on platforms + that don't define it. Solaris 9 and 10 are examples of this. + + Use LOG_PID instead. + Thu Mar 24 11:36:55 2011 NARUSE, Yui <naruse@ruby-lang.org> * ext/openssl/ossl_x509name.c: id_aref's type is ID. diff --git a/test/test_syslog.rb b/test/test_syslog.rb index e9fc375c90..375ff2fe30 100644 --- a/test/test_syslog.rb +++ b/test/test_syslog.rb @@ -43,10 +43,11 @@ class TestSyslog < Test::Unit::TestCase Syslog.close # given parameters - Syslog.open("foo", Syslog::LOG_NDELAY | Syslog::LOG_PERROR, Syslog::LOG_DAEMON) + options = Syslog::LOG_NDELAY | Syslog::LOG_PID + Syslog.open("foo", options, Syslog::LOG_DAEMON) assert_equal('foo', Syslog.ident) - assert_equal(Syslog::LOG_NDELAY | Syslog::LOG_PERROR, Syslog.options) + assert_equal(options, Syslog.options) assert_equal(Syslog::LOG_DAEMON, Syslog.facility) Syslog.close @@ -134,8 +135,9 @@ class TestSyslog < Test::Unit::TestCase stderr[1].close Process.waitpid(pid) - # LOG_PERROR is not yet implemented on Cygwin. - return if RUBY_PLATFORM =~ /cygwin/ + # LOG_PERROR is not implemented on Cygwin or Solaris. Only test + # these on systems that define it. + return unless Syslog.const_defined?(:LOG_PERROR) 2.times { assert_equal("syslog_test: test1 - hello, world!\n", stderr[0].gets) @@ -1,5 +1,5 @@ #define RUBY_VERSION "1.9.2" -#define RUBY_PATCHLEVEL 220 +#define RUBY_PATCHLEVEL 221 #define RUBY_VERSION_MAJOR 1 #define RUBY_VERSION_MINOR 9 #define RUBY_VERSION_TEENY 1 |