diff options
author | hsbt <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-07-31 03:49:38 +0000 |
---|---|---|
committer | hsbt <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-07-31 03:49:38 +0000 |
commit | 8bcf27527cbc84622e522ed587a175ada4809360 (patch) | |
tree | 8ac048555c9ce88a3a26413b0b470e5bf3807d0c /test/thread/test_sync.rb | |
parent | e52a9b593f9ecdb9a64b5a8a330d5a67b1e0926d (diff) |
Move obsoleted test/thread/test_*.rb with the current implementation.
* test/ruby/test_thread_{cv,queue}.rb: Move under the test/ruby directory.
and rename TestThread* from Test*.
* test/test_sync.rb: Move toplevel of test diretory because sync is still
standard library.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64137 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/thread/test_sync.rb')
-rw-r--r-- | test/thread/test_sync.rb | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/test/thread/test_sync.rb b/test/thread/test_sync.rb deleted file mode 100644 index e3294ff824..0000000000 --- a/test/thread/test_sync.rb +++ /dev/null @@ -1,69 +0,0 @@ -# frozen_string_literal: false -require 'test/unit' -require 'sync' -require 'timeout' - -class SyncTest < Test::Unit::TestCase - class Tester - include Sync_m - end - - def test_sync_lock_and_wakeup - tester = Tester.new - - tester.sync_lock(:EX) - - t = Thread.new { tester.sync_lock(:EX) } - - sleep 0.1 until t.stop? - t.wakeup - sleep 0.1 until t.stop? - - assert_equal(tester.sync_waiting.uniq, tester.sync_waiting) - ensure - t.kill - t.join - end - - def test_sync_upgrade_and_wakeup - tester = Tester.new - tester.sync_lock(:SH) - - t = Thread.new do - tester.sync_lock(:SH) - tester.sync_lock(:EX) - end - - sleep 0.1 until t.stop? - t.wakeup - sleep 0.1 until t.stop? - - tester.sync_upgrade_waiting.each { |ary| - assert(!tester.sync_waiting.include?(ary[0])) - } - assert_equal(tester.sync_waiting.uniq, tester.sync_waiting) - assert_equal(tester.sync_waiting, []) - ensure - t.kill - t.join - end - - def test_sync_lock_and_raise - tester= Tester.new - tester.sync_lock(:EX) - - t = Thread.new { - assert_raise(RuntimeError) { - tester.sync_lock(:EX) - } - } - - sleep 0.1 until t.stop? - sleep 1 if RubyVM::MJIT.enabled? # t.stop? behaves unexpectedly with --jit-wait - t.raise - t.join - - assert_equal(tester.sync_waiting.uniq, tester.sync_waiting) - assert_equal(tester.sync_waiting, []) - end -end |