From 757f06fdc75263b16cb041e003de968e63c285ce Mon Sep 17 00:00:00 2001 From: matz Date: Mon, 12 Sep 2005 15:12:52 +0000 Subject: * test/dbm/test_dbm.rb: remove locking test, which may not be supported on some platforms. [ruby-dev:27030] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/dbm/test_dbm.rb | 77 ---------------------------------------------------- 1 file changed, 77 deletions(-) (limited to 'test/dbm') diff --git a/test/dbm/test_dbm.rb b/test/dbm/test_dbm.rb index c7ca50cd09..0a604e50e5 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 - pid = 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 pid - 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 - - pid = 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 pid - dbm2.close if dbm2 - end - - p Dir.glob("tmptest_dbm*") if $DEBUG - - pid = 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 pid - dbm2.close if dbm2 - end - end def test_s_open_error assert_instance_of(DBM, dbm = DBM.open("tmptest_dbm", 0)) -- cgit v1.2.3