Commit 38bc9db9 authored by Quinten Yearsley's avatar Quinten Yearsley Committed by Commit Bot

Style: Don't use builtin name as arg name in User

This CL changes an argument name from raw_input, which conflicts a
builtin name. This is a minor clean-up CL.

Bug: 643937
Change-Id: I88821d6537f9d24b3f78de9b21e0ff690f9c3491
Reviewed-on: https://chromium-review.googlesource.com/564699Reviewed-by: default avatarJeff Carpenter <jeffcarp@chromium.org>
Commit-Queue: Quinten Yearsley <qyearsley@chromium.org>
Cr-Commit-Position: refs/heads/master@{#485481}
parent d30c3532
......@@ -50,19 +50,19 @@ class User(object):
# FIXME: These are @classmethods because bugzilla.py doesn't have a Tool object (thus no User instance).
@classmethod
def prompt(cls, message, repeat=1, raw_input=raw_input):
def prompt(cls, message, repeat=1, input_func=raw_input):
response = None
while repeat and not response:
repeat -= 1
response = raw_input(message)
response = input_func(message)
return response
@classmethod
def _wait_on_list_response(cls, list_items, can_choose_multiple, raw_input):
def _wait_on_list_response(cls, list_items, can_choose_multiple, input_func):
while True:
if can_choose_multiple:
response = cls.prompt(
'Enter one or more numbers (comma-separated) or ranges (e.g. 3-7), or \'all\': ', raw_input=raw_input)
'Enter one or more numbers (comma-separated) or ranges (e.g. 3-7), or \'all\': ', input_func=input_func)
if not response.strip() or response == 'all':
return list_items
......@@ -80,25 +80,25 @@ class User(object):
return [list_items[i] for i in indices]
else:
try:
result = int(cls.prompt('Enter a number: ', raw_input=raw_input)) - 1
result = int(cls.prompt('Enter a number: ', input_func=input_func)) - 1
except ValueError:
continue
return list_items[result]
@classmethod
def prompt_with_list(cls, list_title, list_items, can_choose_multiple=False, raw_input=raw_input):
def prompt_with_list(cls, list_title, list_items, can_choose_multiple=False, input_func=raw_input):
print list_title
i = 0
for item in list_items:
i += 1
print '%2d. %s' % (i, item)
return cls._wait_on_list_response(list_items, can_choose_multiple, raw_input)
return cls._wait_on_list_response(list_items, can_choose_multiple, input_func)
def confirm(self, message=None, default=DEFAULT_YES, raw_input=raw_input):
def confirm(self, message=None, default=DEFAULT_YES, input_func=raw_input):
if not message:
message = 'Continue?'
choice = {'y': 'Y/n', 'n': 'y/N'}[default]
response = raw_input('%s [%s]: ' % (message, choice))
response = input_func('%s [%s]: ' % (message, choice))
response = response.strip().lower()
if not response:
response = default
......
......@@ -47,7 +47,7 @@ class UserTest(unittest.TestCase):
return None
self.assertEqual(User.prompt('input', repeat=self.repeats_remaining,
raw_input=mock_raw_input), 'example user response')
input_func=mock_raw_input), 'example user response')
def test_prompt_when_exceeded_repeats(self):
self.repeats_remaining = 2
......@@ -55,7 +55,7 @@ class UserTest(unittest.TestCase):
def mock_raw_input(_):
self.repeats_remaining -= 1
return None
self.assertIsNone(User.prompt('input', repeat=self.repeats_remaining, raw_input=mock_raw_input))
self.assertIsNone(User.prompt('input', repeat=self.repeats_remaining, input_func=mock_raw_input))
def test_prompt_with_list(self):
def run_prompt_test(inputs, expected_result, can_choose_multiple=False):
......@@ -66,7 +66,7 @@ class UserTest(unittest.TestCase):
self,
User.prompt_with_list,
args=['title', ['foo', 'bar']],
kwargs={'can_choose_multiple': can_choose_multiple, 'raw_input': mock_raw_input},
kwargs={'can_choose_multiple': can_choose_multiple, 'input_func': mock_raw_input},
expected_stdout='title\n 1. foo\n 2. bar\n')
self.assertEqual(actual_result, expected_result)
self.assertEqual(len(inputs), 0)
......@@ -87,7 +87,7 @@ class UserTest(unittest.TestCase):
self.assertEqual(expected_message, message)
return user_input
out = User().confirm(default=default, raw_input=mock_raw_input)
out = User().confirm(default=default, input_func=mock_raw_input)
self.assertEqual(expected_out, out)
def test_confirm_input_yes(self):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment