diff options
author | eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-09-20 20:18:52 +0000 |
---|---|---|
committer | eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-09-20 20:18:52 +0000 |
commit | 1d15d5f08032acf1b7bceacbb450d617ff6e0931 (patch) | |
tree | a3785a79899302bc149e4a6e72f624ac27dc1f10 /spec/rubyspec/core/mutex/sleep_spec.rb | |
parent | 75bfc6440d595bf339007f4fb280fd4d743e89c1 (diff) | |
download | ruby-1d15d5f08032acf1b7bceacbb450d617ff6e0931.tar.gz |
Move spec/rubyspec to spec/ruby for consistency
* Other ruby implementations use the spec/ruby directory.
[Misc #13792] [ruby-core:82287]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'spec/rubyspec/core/mutex/sleep_spec.rb')
-rw-r--r-- | spec/rubyspec/core/mutex/sleep_spec.rb | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/spec/rubyspec/core/mutex/sleep_spec.rb b/spec/rubyspec/core/mutex/sleep_spec.rb deleted file mode 100644 index a3fb86fba7..0000000000 --- a/spec/rubyspec/core/mutex/sleep_spec.rb +++ /dev/null @@ -1,74 +0,0 @@ -require File.expand_path('../../../spec_helper', __FILE__) - -describe "Mutex#sleep" do - describe "when not locked by the current thread" do - it "raises a ThreadError" do - m = Mutex.new - lambda { m.sleep }.should raise_error(ThreadError) - end - - it "raises an ArgumentError if passed a negative duration" do - m = Mutex.new - lambda { m.sleep(-0.1) }.should raise_error(ArgumentError) - lambda { m.sleep(-1) }.should raise_error(ArgumentError) - end - end - - it "raises an ArgumentError if passed a negative duration" do - m = Mutex.new - m.lock - lambda { m.sleep(-0.1) }.should raise_error(ArgumentError) - lambda { m.sleep(-1) }.should raise_error(ArgumentError) - end - - it "pauses execution for approximately the duration requested" do - m = Mutex.new - m.lock - duration = 0.1 - start = Time.now - m.sleep duration - (Time.now - start).should be_close(duration, 0.2) - end - - it "unlocks the mutex while sleeping" do - m = Mutex.new - locked = false - th = Thread.new { m.lock; locked = true; m.sleep } - Thread.pass until locked - Thread.pass while th.status and th.status != "sleep" - m.locked?.should be_false - th.run - th.join - end - - it "relocks the mutex when woken" do - m = Mutex.new - m.lock - m.sleep(0.01) - m.locked?.should be_true - end - - it "relocks the mutex when woken by an exception being raised" do - m = Mutex.new - locked = false - th = Thread.new do - m.lock - locked = true - begin - m.sleep - rescue Exception - m.locked? - end - end - Thread.pass until locked - Thread.pass while th.status and th.status != "sleep" - th.raise(Exception) - th.value.should be_true - end - - it "returns the rounded number of seconds asleep" do - m = Mutex.new - m.lock - m.sleep(0.01).should be_kind_of(Integer) - end -end |