2017-05-07 08:04:49 -04:00
|
|
|
module RescueSpecs
|
|
|
|
def self.begin_else(raise_exception)
|
|
|
|
begin
|
|
|
|
ScratchPad << :one
|
|
|
|
raise "an error occurred" if raise_exception
|
|
|
|
rescue
|
|
|
|
ScratchPad << :rescue_ran
|
|
|
|
:rescue_val
|
|
|
|
else
|
|
|
|
ScratchPad << :else_ran
|
|
|
|
:val
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
def self.begin_else_ensure(raise_exception)
|
|
|
|
begin
|
|
|
|
ScratchPad << :one
|
|
|
|
raise "an error occurred" if raise_exception
|
|
|
|
rescue
|
|
|
|
ScratchPad << :rescue_ran
|
|
|
|
:rescue_val
|
|
|
|
else
|
|
|
|
ScratchPad << :else_ran
|
|
|
|
:val
|
|
|
|
ensure
|
|
|
|
ScratchPad << :ensure_ran
|
|
|
|
:ensure_val
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
def self.begin_else_return(raise_exception)
|
|
|
|
begin
|
|
|
|
ScratchPad << :one
|
|
|
|
raise "an error occurred" if raise_exception
|
|
|
|
rescue
|
|
|
|
ScratchPad << :rescue_ran
|
|
|
|
:rescue_val
|
|
|
|
else
|
|
|
|
ScratchPad << :else_ran
|
|
|
|
:val
|
|
|
|
end
|
|
|
|
ScratchPad << :outside_begin
|
|
|
|
:return_val
|
|
|
|
end
|
|
|
|
|
|
|
|
def self.begin_else_return_ensure(raise_exception)
|
|
|
|
begin
|
|
|
|
ScratchPad << :one
|
|
|
|
raise "an error occurred" if raise_exception
|
|
|
|
rescue
|
|
|
|
ScratchPad << :rescue_ran
|
|
|
|
:rescue_val
|
|
|
|
else
|
|
|
|
ScratchPad << :else_ran
|
|
|
|
:val
|
|
|
|
ensure
|
|
|
|
ScratchPad << :ensure_ran
|
|
|
|
:ensure_val
|
|
|
|
end
|
|
|
|
ScratchPad << :outside_begin
|
|
|
|
:return_val
|
|
|
|
end
|
2018-09-25 06:41:16 -04:00
|
|
|
|
|
|
|
def self.raise_standard_error
|
|
|
|
raise StandardError, "an error occurred"
|
|
|
|
end
|
2017-05-07 08:04:49 -04:00
|
|
|
end
|