def test_duplicate_obj_code(self): exc = exceptions.DBDuplicateEntryException() self.assertIn("Database object already exists", six.text_type(exc)) self.assertEqual( 409, exc.http_code, )
def create_cron_trigger(values, session=None): cron_trigger = models.CronTrigger() cron_trigger.update(values) try: cron_trigger.save(session=session) except db_exc.DBDuplicateEntry as e: raise exc.DBDuplicateEntryException( "Duplicate entry for cron trigger %s: %s" % (cron_trigger.name, e.columns)) # TODO(nmakhotkin): Remove this 'except' after fixing # https://bugs.launchpad.net/oslo.db/+bug/1458583. except db_exc.DBError as e: raise exc.DBDuplicateEntryException( "Duplicate entry for cron trigger: %s" % e) return cron_trigger
def create_delayed_call(values, session=None): delayed_call = models.DelayedCall() delayed_call.update(values.copy()) try: delayed_call.save(session) except db_exc.DBDuplicateEntry as e: raise exc.DBDuplicateEntryException( "Duplicate entry for DelayedCall: %s" % e.columns) return delayed_call
def create_task_execution(values, session=None): task_ex = models.TaskExecution() task_ex.update(values) try: task_ex.save(session=session) except db_exc.DBDuplicateEntry as e: raise exc.DBDuplicateEntryException( "Duplicate entry for TaskExecution: %s" % e.columns) return task_ex
def create_workflow_execution(values, session=None): wf_ex = models.WorkflowExecution() wf_ex.update(values.copy()) try: wf_ex.save(session=session) except db_exc.DBDuplicateEntry as e: raise exc.DBDuplicateEntryException( "Duplicate entry for WorkflowExecution: %s" % e.columns) return wf_ex
def create_action_execution(values, session=None): a_ex = models.ActionExecution() a_ex.update(values.copy()) try: a_ex.save(session=session) except db_exc.DBDuplicateEntry as e: raise exc.DBDuplicateEntryException( "Duplicate entry for ActionExecution: %s" % e.columns) return a_ex
def create_action_definition(values, session=None): a_def = models.ActionDefinition() a_def.update(values) try: a_def.save(session=session) except db_exc.DBDuplicateEntry as e: raise exc.DBDuplicateEntryException( "Duplicate entry for action %s: %s" % (a_def.name, e.columns)) return a_def
def create_workbook(values, session=None): wb = models.Workbook() wb.update(values.copy()) try: wb.save(session=session) except db_exc.DBDuplicateEntry as e: raise exc.DBDuplicateEntryException( "Duplicate entry for WorkbookDefinition: %s" % e.columns) return wb
def create_resource_member(values, session=None): res_member = models.ResourceMember() res_member.update(values.copy()) try: res_member.save(session=session) except db_exc.DBDuplicateEntry as e: raise exc.DBDuplicateEntryException( "Duplicate entry for ResourceMember: %s" % e.columns) return res_member
def create_environment(values, session=None): env = models.Environment() env.update(values) try: env.save(session=session) except db_exc.DBDuplicateEntry as e: raise exc.DBDuplicateEntryException( "Duplicate entry for Environment: %s" % e.columns) return env
output: "{$.str1}{$.str2}{$.str3}" """ UPDATED_ACTION_DB = copy.copy(ACTION_DB) UPDATED_ACTION_DB['definition'] = UPDATED_ACTION_DEFINITION UPDATED_ACTION = copy.deepcopy(ACTION) UPDATED_ACTION['definition'] = UPDATED_ACTION_DEFINITION MOCK_ACTION = mock.MagicMock(return_value=ACTION_DB) MOCK_SYSTEM_ACTION = mock.MagicMock(return_value=SYSTEM_ACTION_DB) MOCK_ACTIONS = mock.MagicMock(return_value=[ACTION_DB]) MOCK_UPDATED_ACTION = mock.MagicMock(return_value=UPDATED_ACTION_DB) MOCK_DELETE = mock.MagicMock(return_value=None) MOCK_EMPTY = mock.MagicMock(return_value=[]) MOCK_NOT_FOUND = mock.MagicMock(side_effect=exc.DBEntityNotFoundException()) MOCK_DUPLICATE = mock.MagicMock(side_effect=exc.DBDuplicateEntryException()) class TestActionsController(base.APITest): @mock.patch.object(db_api, "get_action_definition", MOCK_ACTION) def test_get(self): resp = self.app.get('/v2/actions/my_action') self.assertEqual(200, resp.status_int) self.assertDictEqual(ACTION, resp.json) @mock.patch.object(db_api, "get_action_definition", MOCK_NOT_FOUND) def test_get_not_found(self): resp = self.app.get('/v2/actions/my_action', expect_errors=True) self.assertEqual(404, resp.status_int)