diff --git a/mistralclient/commands/v2/actions.py b/mistralclient/commands/v2/actions.py index 3daa4c13..44d62b9c 100644 --- a/mistralclient/commands/v2/actions.py +++ b/mistralclient/commands/v2/actions.py @@ -26,13 +26,6 @@ from mistralclient.commands.v2 import base LOG = logging.getLogger(__name__) -def _cut(string, length=25): - if string and len(string) > length: - return "%s..." % string[:length] - else: - return string - - def format_list(action=None): return format(action, lister=True) @@ -50,8 +43,9 @@ def format(action=None, lister=False): if action: tags = getattr(action, 'tags', None) or [] - input = action.input if not lister else _cut(action.input) - desc = action.description if not lister else _cut(action.description) + input = action.input if not lister else base.cut(action.input) + desc = (action.description if not lister + else base.cut(action.description)) data = ( action.name, diff --git a/mistralclient/commands/v2/base.py b/mistralclient/commands/v2/base.py index 7425eeb1..d38cde8d 100644 --- a/mistralclient/commands/v2/base.py +++ b/mistralclient/commands/v2/base.py @@ -46,3 +46,10 @@ class MistralLister(lister.Lister): return f()[0], data else: return f() + + +def cut(string, length=25): + if string and len(string) > length: + return "%s..." % string[:length] + else: + return string diff --git a/mistralclient/commands/v2/workflows.py b/mistralclient/commands/v2/workflows.py index abaf1470..4044ca27 100644 --- a/mistralclient/commands/v2/workflows.py +++ b/mistralclient/commands/v2/workflows.py @@ -26,10 +26,15 @@ from mistralclient.commands.v2 import base LOG = logging.getLogger(__name__) -def format(workflow=None): +def format_list(workflow=None): + return format(workflow, lister=True) + + +def format(workflow=None, lister=False): columns = ( 'Name', 'Tags', + 'Input', 'Created at', 'Updated at' ) @@ -40,6 +45,7 @@ def format(workflow=None): data = ( workflow.name, ', '.join(tags) or '', + workflow.input if not lister else base.cut(workflow.input), workflow.created_at ) @@ -57,7 +63,7 @@ class List(base.MistralLister): """List all workflows.""" def _get_format_function(self): - return format + return format_list def _get_resources(self, parsed_args): return workflows.WorkflowManager(self.app.client).list() diff --git a/mistralclient/tests/unit/v2/test_cli_workflows.py b/mistralclient/tests/unit/v2/test_cli_workflows.py index 760840ac..c931242c 100644 --- a/mistralclient/tests/unit/v2/test_cli_workflows.py +++ b/mistralclient/tests/unit/v2/test_cli_workflows.py @@ -25,6 +25,7 @@ from mistralclient.api.v2 import workflows WORKFLOW_DICT = { 'name': 'a', 'tags': ['a', 'b'], + 'input': 'param', 'created_at': '1', 'updated_at': '1' } @@ -52,7 +53,7 @@ class TestCLIWorkflowsV2(base.BaseCommandTest): result = self.call(workflow_cmd.Create, app_args=['1.txt']) - self.assertEqual([('a', 'a, b', '1', '1')], result[1]) + self.assertEqual([('a', 'a, b', 'param', '1', '1')], result[1]) @mock.patch('argparse.open', create=True) @mock.patch('mistralclient.api.v2.workflows.WorkflowManager.update') @@ -61,7 +62,7 @@ class TestCLIWorkflowsV2(base.BaseCommandTest): result = self.call(workflow_cmd.Update, app_args=['1.txt']) - self.assertEqual([('a', 'a, b', '1', '1')], result[1]) + self.assertEqual([('a', 'a, b', 'param', '1', '1')], result[1]) @mock.patch('mistralclient.api.v2.workflows.WorkflowManager.list') def test_list(self, mock): @@ -69,7 +70,7 @@ class TestCLIWorkflowsV2(base.BaseCommandTest): result = self.call(workflow_cmd.List) - self.assertEqual([('a', 'a, b', '1', '1')], result[1]) + self.assertEqual([('a', 'a, b', 'param', '1', '1')], result[1]) @mock.patch('mistralclient.api.v2.workflows.WorkflowManager.get') def test_get(self, mock): @@ -77,7 +78,7 @@ class TestCLIWorkflowsV2(base.BaseCommandTest): result = self.call(workflow_cmd.Get, app_args=['name']) - self.assertEqual(('a', 'a, b', '1', '1'), result[1]) + self.assertEqual(('a', 'a, b', 'param', '1', '1'), result[1]) @mock.patch('mistralclient.api.v2.workflows.WorkflowManager.delete') def test_delete(self, mock):