Updated RubySpec submodule to 9f66d0b1.
[rbx.git] / test / rubygems / mockgemui.rb
blob95a95fbf98b1b562acc636f3be1d0f6451a6ef13
1 #!/usr/bin/env ruby
2 #--
3 # Copyright 2006 by Chad Fowler, Rich Kilmer, Jim Weirich and others.
4 # All rights reserved.
5 # See LICENSE.txt for permissions.
6 #++
9 require 'stringio'
10 require 'rubygems/user_interaction'
12 class MockGemUi < Gem::StreamUI
13   class TermError < RuntimeError; end
15   def initialize(input="")
16     super(StringIO.new(input), StringIO.new, StringIO.new)
17     @terminated = false
18   end
20   def input
21     @ins.string
22   end
24   def output
25     @outs.string
26   end
28   def error
29     @errs.string
30   end
32   def terminated?
33     @terminated
34   end
36   def terminate_interaction(status=0)
37     @terminated = true
39     raise TermError
40   end
42 end