aboutsummaryrefslogtreecommitdiffstats
path: root/test/rubygems/test_gem_stream_ui.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/rubygems/test_gem_stream_ui.rb')
-rw-r--r--test/rubygems/test_gem_stream_ui.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/rubygems/test_gem_stream_ui.rb b/test/rubygems/test_gem_stream_ui.rb
index 886f53a60d..395dbda9e1 100644
--- a/test/rubygems/test_gem_stream_ui.rb
+++ b/test/rubygems/test_gem_stream_ui.rb
@@ -46,6 +46,26 @@ class TestGemStreamUI < RubyGemTestCase
end
end
+ def test_ask_for_password
+ skip 'Always uses $stdin on windows' if Gem.win_platform?
+
+ timeout(1) do
+ expected_answer = "Arthur, King of the Britons"
+ @in.string = "#{expected_answer}\n"
+ actual_answer = @sui.ask_for_password("What is your name?")
+ assert_equal expected_answer, actual_answer
+ end
+ end
+
+ def test_ask_for_password_no_tty
+ @in.tty = false
+
+ timeout(0.1) do
+ answer = @sui.ask_for_password("what is the airspeed velocity of an unladen swallow?")
+ assert_equal nil, answer
+ end
+ end
+
def test_ask_yes_no_no_tty_with_default
@in.tty = false