Add a test for invalid task input expression
* In fact, the bug does not exist. This patch only add a test to validate that the behavior in case of invalid task input Change-Id: If5dd3486114bf03ec98c251070e8613d1acee8ce Closes-Bug: 1527173
This commit is contained in:
parent
f86fd956fb
commit
9ddc32e9f7
@ -658,3 +658,38 @@ class ErrorHandlingEngineTest(base.EngineTestCase):
|
|||||||
self.assertEqual(states.ERROR, task_ex.state)
|
self.assertEqual(states.ERROR, task_ex.state)
|
||||||
self.assertIsNotNone(task_ex.state_info)
|
self.assertIsNotNone(task_ex.state_info)
|
||||||
self.assertEqual(states.ERROR, wf_ex.state)
|
self.assertEqual(states.ERROR, wf_ex.state)
|
||||||
|
|
||||||
|
def test_invalid_task_input(self):
|
||||||
|
wf_text = """---
|
||||||
|
version: '2.0'
|
||||||
|
|
||||||
|
wf:
|
||||||
|
tasks:
|
||||||
|
task1:
|
||||||
|
action: std.noop
|
||||||
|
on-success: task2
|
||||||
|
|
||||||
|
task2:
|
||||||
|
action: std.echo output=<% $.non_existing_function_AAA() %>
|
||||||
|
"""
|
||||||
|
|
||||||
|
wf_service.create_workflows(wf_text)
|
||||||
|
|
||||||
|
wf_ex = self.engine.start_workflow('wf', {})
|
||||||
|
|
||||||
|
self.await_workflow_error(wf_ex.id)
|
||||||
|
|
||||||
|
with db_api.transaction():
|
||||||
|
wf_ex = db_api.get_workflow_execution(wf_ex.id)
|
||||||
|
|
||||||
|
tasks = wf_ex.task_executions
|
||||||
|
|
||||||
|
self.assertEqual(2, len(tasks))
|
||||||
|
|
||||||
|
self._assert_single_item(tasks, name='task1', state=states.SUCCESS)
|
||||||
|
t2 = self._assert_single_item(tasks, name='task2', state=states.ERROR)
|
||||||
|
|
||||||
|
self.assertIsNotNone(t2.state_info)
|
||||||
|
self.assertIn('Can not evaluate YAQL expression', t2.state_info)
|
||||||
|
self.assertIsNotNone(wf_ex.state_info)
|
||||||
|
self.assertIn('Can not evaluate YAQL expression', wf_ex.state_info)
|
||||||
|
Loading…
Reference in New Issue
Block a user