Class: Gem::MockGemUi
Overview
This Gem::StreamUI subclass records input and output to StringIO for retrieval during tests.
Defined Under Namespace
Modules: TTY
Classes: SystemExitException, TermError
Instance Attribute Summary
Attributes inherited from StreamUI
#errs, #ins, #outs
Instance Method Summary
collapse
Methods inherited from StreamUI
#alert, #alert_error, #alert_warning, #ask, #ask_for_password, #ask_for_password_on_unix, #ask_for_password_on_windows, #ask_yes_no, #choose_from_list, #debug, #download_reporter, #progress_reporter, #say, #tty?
Constructor Details
#initialize(input = "") ⇒ MockGemUi
Returns a new instance of MockGemUi.
33
34
35
36
37
38
39
40
41
42
43
44
45
|
# File 'lib/rubygems/mock_gem_ui.rb', line 33
def initialize(input = "")
ins = StringIO.new input
outs = StringIO.new
errs = StringIO.new
ins.extend TTY
outs.extend TTY
errs.extend TTY
super ins, outs, errs, true
@terminated = false
end
|
Instance Method Details
#error ⇒ Object
55
56
57
|
# File 'lib/rubygems/mock_gem_ui.rb', line 55
def error
@errs.string
end
|
47
48
49
|
# File 'lib/rubygems/mock_gem_ui.rb', line 47
def input
@ins.string
end
|
#output ⇒ Object
51
52
53
|
# File 'lib/rubygems/mock_gem_ui.rb', line 51
def output
@outs.string
end
|
#terminate_interaction(status = 0) ⇒ Object
63
64
65
66
67
68
|
# File 'lib/rubygems/mock_gem_ui.rb', line 63
def terminate_interaction(status=0)
@terminated = true
raise TermError, status if status != 0
raise SystemExitException
end
|
#terminated? ⇒ Boolean
59
60
61
|
# File 'lib/rubygems/mock_gem_ui.rb', line 59
def terminated?
@terminated
end
|