Accept code as block in ActionsHandler#evaluate
This commit is contained in:
parent
e8dacfa4ac
commit
cc66b6a760
@ -10,8 +10,12 @@ module Uh
|
||||
@env, @events = env, events
|
||||
end
|
||||
|
||||
def evaluate code
|
||||
instance_eval &code
|
||||
def evaluate code = nil, &block
|
||||
if code
|
||||
instance_exec &code
|
||||
else
|
||||
instance_exec &block
|
||||
end
|
||||
end
|
||||
|
||||
def quit
|
||||
|
@ -6,10 +6,15 @@ module Uh
|
||||
subject(:actions) { described_class.new env, events }
|
||||
|
||||
describe '#evaluate' do
|
||||
it 'evaluates given code' do
|
||||
it 'evaluates code given as Proc argument' do
|
||||
expect { actions.evaluate proc { throw :action_code } }
|
||||
.to throw_symbol :action_code
|
||||
end
|
||||
|
||||
it 'evaluates code given as block' do
|
||||
expect { actions.evaluate { throw :action_code } }
|
||||
.to throw_symbol :action_code
|
||||
end
|
||||
end
|
||||
|
||||
describe '#quit' do
|
||||
|
Loading…
x
Reference in New Issue
Block a user