Add directory_select to NoninteractiveDisplay

This commit is contained in:
Brad Warren
2016-03-23 15:29:02 -07:00
parent 9d70c4acfb
commit 294ea4d1a6
2 changed files with 26 additions and 0 deletions
+17
View File
@@ -555,6 +555,23 @@ class NoninteractiveDisplay(object):
else:
return OK, default
def directory_select(self, message, default=None, cli_flag=None):
"""Simulate prompting the user for a directory.
This function returns default if it is not ``None``, otherwise,
an exception is raised.
:param str message: prompt to give the user
:param default: default value to return (if one exists)
:param str cli_flag: option used to set this value with the CLI
:returns: tuple of the form (`code`, `string`) where
`code` - int display exit code
`string` - input entered by the user
"""
return self.input(message, default, cli_flag)
def separate_list_input(input_):
"""Separate a comma or space separated list.
+9
View File
@@ -335,6 +335,15 @@ class NoninteractiveDisplayTest(unittest.TestCase):
self.assertEqual(ret, (display_util.OK, d))
self.assertRaises(errors.MissingCommandlineFlag, self.displayer.checklist, "message", TAGS)
def test_directory_select(self):
default = "/var/www/html"
expected = (display_util.OK, default)
actual = self.displayer.directory_select("msg", default)
self.assertEqual(expected, actual)
self.assertRaises(
errors.MissingCommandlineFlag, self.displayer.directory_select, "msg")
class SeparateListInputTest(unittest.TestCase):
"""Test Module functions."""