diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | test/dbm/test_dbm.rb | 77 | ||||
-rw-r--r-- | test/ruby/test_env.rb | 10 |
3 files changed, 9 insertions, 83 deletions
@@ -1,3 +1,8 @@ +Mon Sep 12 14:03:33 2005 Yukihiro Matsumoto <matz@ruby-lang.org> + + * test/dbm/test_dbm.rb: remove locking test, which may not be + supported on some platforms. [ruby-dev:27030] + Mon Sep 12 10:45:58 2005 Yukihiro Matsumoto <matz@ruby-lang.org> * ext/dl/dl.c (rb_io_to_ptr): merged a patch for DragonFly BSD diff --git a/test/dbm/test_dbm.rb b/test/dbm/test_dbm.rb index 4f49da3f68..d566015df8 100644 --- a/test/dbm/test_dbm.rb +++ b/test/dbm/test_dbm.rb @@ -85,83 +85,6 @@ if defined? DBM def test_s_open_with_block assert_equal(DBM.open("tmptest_dbm") { :foo }, :foo) end - def test_s_open_lock - return unless have_fork? # snip this test - fork() { - assert_instance_of(DBM, dbm = DBM.open("tmptest_dbm", 0644)) - sleep 2 - } - begin - sleep 1 - assert_raise(Errno::EWOULDBLOCK, "NEVER MIND IF YOU USE Berkeley DB3") { - begin - assert_instance_of(DBM, dbm2 = DBM.open("tmptest_dbm", 0644)) - rescue Errno::EAGAIN, Errno::EACCES, Errno::EINVAL - raise Errno::EWOULDBLOCK - end - } - ensure - Process.wait - end - end - -=begin - # Is it guaranteed on many OS? - def test_s_open_lock_one_process - # locking on one process - assert_instance_of(DBM, dbm = DBM.open("tmptest_dbm", 0644)) - assert_raise(Errno::EWOULDBLOCK) { - begin - DBM.open("tmptest_dbm", 0644) - rescue Errno::EAGAIN - raise Errno::EWOULDBLOCK - end - } - end -=end - - def test_s_open_nolock - # dbm 1.8.0 specific - if not defined? DBM::NOLOCK - return - end - return unless have_fork? # snip this test - - fork() { - assert_instance_of(DBM, dbm = DBM.open("tmptest_dbm", 0644, - DBM::NOLOCK)) - sleep 2 - } - sleep 1 - begin - dbm2 = nil - assert_no_exception(Errno::EWOULDBLOCK, Errno::EAGAIN, Errno::EACCES) { - assert_instance_of(DBM, dbm2 = DBM.open("tmptest_dbm", 0644)) - } - ensure - Process.wait - dbm2.close if dbm2 - end - - p Dir.glob("tmptest_dbm*") if $DEBUG - - fork() { - assert_instance_of(DBM, dbm = DBM.open("tmptest_dbm", 0644)) - sleep 2 - } - begin - sleep 1 - dbm2 = nil - assert_no_exception(Errno::EWOULDBLOCK, Errno::EAGAIN, Errno::EACCES) { - # this test is failed on Cygwin98 (???) - assert_instance_of(DBM, dbm2 = DBM.open("tmptest_dbm", 0644, - DBM::NOLOCK)) - } - ensure - Process.wait - dbm2.close if dbm2 - end - end def test_s_open_error assert_instance_of(DBM, dbm = DBM.open("tmptest_dbm", 0)) diff --git a/test/ruby/test_env.rb b/test/ruby/test_env.rb index edc7dcaf61..3a65f91fa4 100644 --- a/test/ruby/test_env.rb +++ b/test/ruby/test_env.rb @@ -4,15 +4,13 @@ class TestEnv < Test::Unit::TestCase IGNORE_CASE = /djgpp|bccwin|mswin|mingw/ =~ RUBY_PLATFORM def setup - @backup = ENV['test'] - @BACKUP = ENV['TEST'] - ENV['test'] = nil - ENV['TEST'] = nil + @backup = ENV.delete('test') + @BACKUP = ENV.delete('TEST') end def teardown - ENV['test'] = @backup - ENV['TEST'] = @BACKUP + ENV['test'] = @backup if @backup + ENV['TEST'] = @BACKUP if @BACKUP end def test_bracket |