1
0
Fork 0
mirror of https://github.com/pry/pry.git synced 2022-11-09 12:35:05 -05:00
pry--pry/lib/pry/testable/mockable.rb
2018-10-13 03:09:29 +08:00

14 lines
433 B
Ruby

module Pry::Testable::Mockable
def mock_command(cmd, args=[], opts={})
output = StringIO.new
pry = Pry.new(output: output)
ret = cmd.new(opts.merge(pry_instance: pry, output: output)).call_safely(*args)
Struct.new(:output, :return).new(output.string, ret)
end
def mock_exception(*mock_backtrace)
StandardError.new.tap do |e|
e.define_singleton_method(:backtrace) { mock_backtrace }
end
end
end