summaryrefslogtreecommitdiff
path: root/spec/ruby/language/throw_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/language/throw_spec.rb')
-rw-r--r--spec/ruby/language/throw_spec.rb15
1 files changed, 8 insertions, 7 deletions
diff --git a/spec/ruby/language/throw_spec.rb b/spec/ruby/language/throw_spec.rb
index d78c137708..92f699350c 100644
--- a/spec/ruby/language/throw_spec.rb
+++ b/spec/ruby/language/throw_spec.rb
@@ -68,13 +68,14 @@ describe "The throw keyword" do
lambda { catch(:different) { throw :test, 5 } }.should raise_error(ArgumentError)
end
- it "raises an ArgumentError if used to exit a thread" do
- lambda {
- catch(:what) do
- Thread.new {
+ it "raises an UncaughtThrowError if used to exit a thread" do
+ catch(:what) do
+ t = Thread.new {
+ -> {
throw :what
- }.join
- end
- }.should raise_error(ArgumentError)
+ }.should raise_error(UncaughtThrowError)
+ }
+ t.join
+ end
end
end