1
0
Fork 0
mirror of https://github.com/pry/pry.git synced 2022-11-09 12:35:05 -05:00
pry--pry/spec/commands/wtf_spec.rb
Aleksandar Kostadinov 30cca64e5a commands/wtf,pry: add support for Exception#cause
Fixes #1449 (support exceptions with cause)
Replaces #1525
2018-10-10 00:19:45 +08:00

39 lines
755 B
Ruby

require_relative '../helper'
describe "wtf?!" do
let(:tester) do
pry_tester do
def last_exception=(ex)
@pry.last_exception = ex
end
def last_exception
@pry.last_exception
end
end
end
it "unwinds nested exceptions" do
if Gem::Version.new(RUBY_VERSION) <= Gem::Version.new('2.0.0')
skip('Exception#cause is not supported')
end
begin
begin
begin
raise 'inner'
rescue RuntimeError
raise 'outer'
end
end
rescue RuntimeError => ex
tester.last_exception = ex
end
expect(tester.eval('wtf -v')).to match(/
Exception:\sRuntimeError:\souter
.+
Caused\sby:\sRuntimeError:\sinner
/xm)
end
end