spec/routine_spec.rb in lev-7.0.3 vs spec/routine_spec.rb in lev-7.1.0
- old
+ new
@@ -1,12 +1,12 @@
require 'spec_helper'
describe Lev::Routine do
before do
- stub_const 'RaiseError', Class.new
- RaiseError.class_eval {
+ stub_const 'RaiseRuntimeError', Class.new
+ RaiseRuntimeError.class_eval {
lev_routine
def exec
raise 'error message'
end
}
@@ -16,16 +16,24 @@
lev_routine
def exec
unknown_method_call
end
}
+
+ stub_const 'RaiseArgumentError', Class.new
+ RaiseArgumentError.class_eval {
+ lev_routine
+ def exec
+ raise ArgumentError, 'your argument is invalid', caller
+ end
+ }
end
it "raised errors should propagate" do
expect{
RaiseArgumentError.call
- }.to raise_error
+ }.to raise_error(ArgumentError)
end
it "raised StandardErrors should propagate" do
expect {
RaiseStandardError.call
@@ -57,11 +65,11 @@
Lev.configure { |c| c.raise_fatal_errors = false }
expect {
SpecialFatalErrorOption.call
- }.to raise_error
+ }.to raise_error(Lev::FatalError)
expect {
NoFatalErrorOption.call
}.not_to raise_error
end
@@ -104,10 +112,10 @@
end
it 'raises an exception on fatal_error if configured' do
expect {
RaiseFatalError.call
- }.to raise_error
+ }.to raise_error(Lev::FatalError)
begin
RaiseFatalError.call
rescue => e
expect(e.message).to eq('code broken - such disaster - kind lev')