summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/rubygems/gemcutter_utilities.rb8
-rw-r--r--test/rubygems/test_gem_commands_signin_command.rb60
2 files changed, 34 insertions, 34 deletions
diff --git a/lib/rubygems/gemcutter_utilities.rb b/lib/rubygems/gemcutter_utilities.rb
index 53351fc13a..7cb5fe9448 100644
--- a/lib/rubygems/gemcutter_utilities.rb
+++ b/lib/rubygems/gemcutter_utilities.rb
@@ -260,8 +260,8 @@ module Gem::GemcutterUtilities
else
say "Please select scopes you want to enable for the API key (y/n)"
API_SCOPES.each do |scope|
- selected = ask "#{scope} [y/N]: "
- scope_params[scope] = true if selected =~ /^[yY](es)?$/
+ selected = ask_yes_no("#{scope}", false)
+ scope_params[scope] = true if selected
end
say "\n"
end
@@ -279,8 +279,8 @@ module Gem::GemcutterUtilities
mfa_level = get_user_mfa_level(email, password)
params = {}
if mfa_level == "ui_only" || mfa_level == "ui_and_gem_signin"
- selected = ask "Would you like to enable MFA for this key? [Y/n]"
- params["mfa"] = true unless selected =~ /^[nN](o)?$/
+ selected = ask_yes_no("Would you like to enable MFA for this key? (strongly recommended)")
+ params["mfa"] = true if selected
end
params
end
diff --git a/test/rubygems/test_gem_commands_signin_command.rb b/test/rubygems/test_gem_commands_signin_command.rb
index 0c92b22718..cfc0b570e3 100644
--- a/test/rubygems/test_gem_commands_signin_command.rb
+++ b/test/rubygems/test_gem_commands_signin_command.rb
@@ -92,13 +92,13 @@ class TestGemCommandsSigninCommand < Gem::TestCase
user = ENV["USER"] || ENV["USERNAME"]
assert_match "API Key name [#{Socket.gethostname}-#{user}", key_name_ui.output
- assert_match "index_rubygems [y/N]", key_name_ui.output
- assert_match "push_rubygem [y/N]", key_name_ui.output
- assert_match "yank_rubygem [y/N]", key_name_ui.output
- assert_match "add_owner [y/N]", key_name_ui.output
- assert_match "remove_owner [y/N]", key_name_ui.output
- assert_match "access_webhooks [y/N]", key_name_ui.output
- assert_match "show_dashboard [y/N]", key_name_ui.output
+ assert_match "index_rubygems [yN]", key_name_ui.output
+ assert_match "push_rubygem [yN]", key_name_ui.output
+ assert_match "yank_rubygem [yN]", key_name_ui.output
+ assert_match "add_owner [yN]", key_name_ui.output
+ assert_match "remove_owner [yN]", key_name_ui.output
+ assert_match "access_webhooks [yN]", key_name_ui.output
+ assert_match "show_dashboard [yN]", key_name_ui.output
assert_equal "name=test-key&push_rubygem=true", fetcher.last_request.body
credentials = load_yaml_file Gem.configuration.credentials_path
@@ -118,14 +118,14 @@ class TestGemCommandsSigninCommand < Gem::TestCase
user = ENV["USER"] || ENV["USERNAME"]
assert_match "API Key name [#{Socket.gethostname}-#{user}", key_name_ui.output
- assert_match "index_rubygems [y/N]", key_name_ui.output
- assert_match "push_rubygem [y/N]", key_name_ui.output
- assert_match "yank_rubygem [y/N]", key_name_ui.output
- assert_match "add_owner [y/N]", key_name_ui.output
- assert_match "remove_owner [y/N]", key_name_ui.output
- assert_match "access_webhooks [y/N]", key_name_ui.output
- assert_match "show_dashboard [y/N]", key_name_ui.output
- assert_match "Would you like to enable MFA for this key? [Y/n]", key_name_ui.output
+ assert_match "index_rubygems [yN]", key_name_ui.output
+ assert_match "push_rubygem [yN]", key_name_ui.output
+ assert_match "yank_rubygem [yN]", key_name_ui.output
+ assert_match "add_owner [yN]", key_name_ui.output
+ assert_match "remove_owner [yN]", key_name_ui.output
+ assert_match "access_webhooks [yN]", key_name_ui.output
+ assert_match "show_dashboard [yN]", key_name_ui.output
+ assert_match "Would you like to enable MFA for this key? (strongly recommended) [yn]", key_name_ui.output
assert_equal "name=test-key&push_rubygem=true&mfa=true", fetcher.last_request.body
credentials = load_yaml_file Gem.configuration.credentials_path
@@ -145,14 +145,14 @@ class TestGemCommandsSigninCommand < Gem::TestCase
user = ENV["USER"] || ENV["USERNAME"]
assert_match "API Key name [#{Socket.gethostname}-#{user}", key_name_ui.output
- assert_match "index_rubygems [y/N]", key_name_ui.output
- assert_match "push_rubygem [y/N]", key_name_ui.output
- assert_match "yank_rubygem [y/N]", key_name_ui.output
- assert_match "add_owner [y/N]", key_name_ui.output
- assert_match "remove_owner [y/N]", key_name_ui.output
- assert_match "access_webhooks [y/N]", key_name_ui.output
- assert_match "show_dashboard [y/N]", key_name_ui.output
- assert_match "Would you like to enable MFA for this key? [Y/n]", key_name_ui.output
+ assert_match "index_rubygems [yN]", key_name_ui.output
+ assert_match "push_rubygem [yN]", key_name_ui.output
+ assert_match "yank_rubygem [yN]", key_name_ui.output
+ assert_match "add_owner [yN]", key_name_ui.output
+ assert_match "remove_owner [yN]", key_name_ui.output
+ assert_match "access_webhooks [yN]", key_name_ui.output
+ assert_match "show_dashboard [yN]", key_name_ui.output
+ assert_match "Would you like to enable MFA for this key? (strongly recommended) [yn]", key_name_ui.output
assert_equal "name=test-key&push_rubygem=true&mfa=true", fetcher.last_request.body
credentials = load_yaml_file Gem.configuration.credentials_path
@@ -181,13 +181,13 @@ class TestGemCommandsSigninCommand < Gem::TestCase
user = ENV["USER"] || ENV["USERNAME"]
assert_match "API Key name [#{Socket.gethostname}-#{user}", key_name_ui.output
- assert_match "index_rubygems [y/N]", key_name_ui.output
- assert_match "push_rubygem [y/N]", key_name_ui.output
- assert_match "yank_rubygem [y/N]", key_name_ui.output
- assert_match "add_owner [y/N]", key_name_ui.output
- assert_match "remove_owner [y/N]", key_name_ui.output
- assert_match "access_webhooks [y/N]", key_name_ui.output
- assert_match "show_dashboard [y/N]", key_name_ui.output
+ assert_match "index_rubygems [yN]", key_name_ui.output
+ assert_match "push_rubygem [yN]", key_name_ui.output
+ assert_match "yank_rubygem [yN]", key_name_ui.output
+ assert_match "add_owner [yN]", key_name_ui.output
+ assert_match "remove_owner [yN]", key_name_ui.output
+ assert_match "access_webhooks [yN]", key_name_ui.output
+ assert_match "show_dashboard [yN]", key_name_ui.output
assert_equal "name=test-key&push_rubygem=true", fetcher.last_request.body
end