diff --git a/mistraldashboard/cron_triggers/tests.py b/mistraldashboard/cron_triggers/tests.py index dd00f88..b7013c8 100644 --- a/mistraldashboard/cron_triggers/tests.py +++ b/mistraldashboard/cron_triggers/tests.py @@ -34,6 +34,38 @@ class CronTriggersTest(test.TestCase): self.mock_cron_trigger_list.assert_called_once_with( helpers.IsHttpRequest()) + @helpers.create_mocks({api: ('cron_trigger_create', + 'workflow_list')}) + def test_create_post(self): + cron_trigger = self.mistralclient_cron_triggers.first() + workflows = self.mistralclient_workflows.list() + self.mock_cron_trigger_create.return_value = cron_trigger + self.mock_workflow_list.return_value = workflows + url = reverse("horizon:mistral:cron_triggers:create") + form_data = { + 'name': cron_trigger.name, + 'workflow_id': '1', + 'input_source': 'raw', + 'input_data': '{"a":"b"}', + 'params_source': 'raw', + 'params_data': '{"a":"b"}', + 'schedule_pattern': cron_trigger.pattern, + 'first_time': cron_trigger.first_execution_time, + 'schedule_count': '1' + } + res = self.client.post(url, form_data) + + self.assertNoFormErrors(res) + self.mock_cron_trigger_create.assert_called_once_with( + helpers.IsHttpRequest(), + cron_trigger.name, form_data["workflow_id"], + {u'a': u'b'}, {u'a': u'b'}, + None, None, + form_data["schedule_count"] + ) + self.mock_workflow_list.assert_called_once_with( + helpers.IsHttpRequest()) + @helpers.create_mocks({api: ('cron_trigger_get',)}) def test_detail(self): cron_trigger = self.mistralclient_cron_triggers.list()[0] diff --git a/mistraldashboard/test/test_data/mistral_data.py b/mistraldashboard/test/test_data/mistral_data.py index 35cb86f..f72b13e 100644 --- a/mistraldashboard/test/test_data/mistral_data.py +++ b/mistraldashboard/test/test_data/mistral_data.py @@ -122,6 +122,7 @@ def data(TEST): workflow_1 = workflows.Workflow( workflows.WorkflowManager(None), {'name': 'a', + 'id': '1', 'tags': ['a', 'b'], 'input': 'param', 'created_at': '1',