summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2017-09-28 09:02:31 +0000
committerGerrit Code Review <review@openstack.org>2017-09-28 09:02:31 +0000
commit082f728d179dc2bba64e9821eaec18f429aa15fd (patch)
treeeeaa2bc69899f8c47ac3874f88e0ec57f13571d2
parentfc3763288c34d1c33db2e31744a6bf4f8c33f330 (diff)
parent4d295fe8b4a8619f9bca09420ab5f9216c737f51 (diff)
downloadpython-heatclient-082f728d179dc2bba64e9821eaec18f429aa15fd.tar.gz
Merge "Fixing read before prompt bug" into stable/ocataocata-em1.8.2
-rw-r--r--heatclient/osc/v1/stack.py6
-rw-r--r--heatclient/tests/unit/test_shell.py4
-rw-r--r--heatclient/v1/shell.py6
3 files changed, 9 insertions, 7 deletions
diff --git a/heatclient/osc/v1/stack.py b/heatclient/osc/v1/stack.py
index cf03cec..c92683a 100644
--- a/heatclient/osc/v1/stack.py
+++ b/heatclient/osc/v1/stack.py
@@ -674,9 +674,9 @@ class DeleteStack(command.Command):
try:
if not parsed_args.yes and sys.stdin.isatty():
- sys.stdout.write(
- _("Are you sure you want to delete this stack(s) [y/N]? "))
- prompt_response = sys.stdin.readline().lower()
+ prompt_response = six.moves.input(
+ _("Are you sure you want to delete this stack(s) [y/N]? ")
+ ).lower()
if not prompt_response.startswith('y'):
self.log.info(_LI('User did not confirm stack delete so '
'taking no action.'))
diff --git a/heatclient/tests/unit/test_shell.py b/heatclient/tests/unit/test_shell.py
index 18173de..a97ac3f 100644
--- a/heatclient/tests/unit/test_shell.py
+++ b/heatclient/tests/unit/test_shell.py
@@ -2064,6 +2064,7 @@ class ShellTestUserPass(ShellBase):
mock_stdin.isatty.return_value = True
mock_stdin.readline = mock.Mock()
mock_stdin.readline.return_value = 'n'
+ mock_stdin.fileno.return_value = 0
sys.stdin = mock_stdin
self.mock_request_delete('/stacks/teststack2/2', None)
@@ -2075,7 +2076,7 @@ class ShellTestUserPass(ShellBase):
self.assertEqual(resp_text, resp)
self.m.ReplayAll()
- mock_stdin.readline.return_value = 'Y'
+ mock_stdin.readline.return_value = 'y'
resp = self.shell('stack-delete teststack2/2')
msg = 'Request to delete stack teststack2/2 has been accepted.'
self.assertRegex(resp, msg)
@@ -2090,6 +2091,7 @@ class ShellTestUserPass(ShellBase):
mock_stdin.isatty.return_value = True
mock_stdin.readline = mock.Mock()
mock_stdin.readline.return_value = ''
+ mock_stdin.fileno.return_value = 0
sys.stdin = mock_stdin
self.mock_request_delete('/stacks/teststack2/2')
diff --git a/heatclient/v1/shell.py b/heatclient/v1/shell.py
index a3179b3..27f8c1e 100644
--- a/heatclient/v1/shell.py
+++ b/heatclient/v1/shell.py
@@ -304,9 +304,9 @@ def do_stack_delete(hc, args):
try:
if not args.yes and sys.stdin.isatty():
- sys.stdout.write(
- _("Are you sure you want to delete this stack(s) [y/N]? "))
- prompt_response = sys.stdin.readline().lower()
+ prompt_response = six.moves.input(
+ _("Are you sure you want to delete this stack(s) [y/N]? ")
+ ).lower()
if not prompt_response.startswith('y'):
logger.info(_LI(
'User did not confirm stack delete so taking no action.'))