2010-12-21 14:03:52 +00:00
|
|
|
class Object
|
|
|
|
def test_method
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
class InputTester
|
2010-12-24 08:30:51 +00:00
|
|
|
def initialize(*actions)
|
|
|
|
@orig_actions = actions.dup
|
|
|
|
@actions = actions
|
2010-12-21 14:03:52 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
def read(*)
|
|
|
|
@actions.shift
|
|
|
|
end
|
|
|
|
|
|
|
|
def rewind
|
|
|
|
@actions = @orig_actions
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
class OutputTester
|
|
|
|
attr_reader :output_buffer
|
|
|
|
|
|
|
|
def initialize
|
|
|
|
@output_buffer = ""
|
|
|
|
end
|
|
|
|
|
|
|
|
def print(val)
|
|
|
|
@output_buffer = val
|
|
|
|
end
|
|
|
|
|
|
|
|
def method_missing(meth_name, *args, &block)
|
2010-12-25 03:21:16 +00:00
|
|
|
class << self; self; end.send(:define_method, "#{meth_name}_invoked") { true }
|
2010-12-21 14:03:52 +00:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|