1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/spec/ruby/core/thread/backtrace_spec.rb
eregon 401b64c4e8 Update to ruby/spec@c1b568b
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-03-04 15:09:32 +00:00

35 lines
738 B
Ruby

require_relative '../../spec_helper'
describe "Thread#backtrace" do
it "returns the current backtrace of a thread" do
t = Thread.new do
begin
sleep
rescue
end
end
Thread.pass while t.status && t.status != 'sleep'
backtrace = t.backtrace
backtrace.should be_kind_of(Array)
backtrace.first.should =~ /`sleep'/
t.raise 'finish the thread'
t.join
end
it "returns nil for dead thread" do
t = Thread.new {}
t.join
t.backtrace.should == nil
end
it "returns an array (which may be empty) immediately after the thread is created" do
t = Thread.new { sleep }
backtrace = t.backtrace
t.kill
t.join
backtrace.should be_kind_of(Array)
end
end