def test_event_get_diff_project(self): event = self.create_event(self.ctx) new_ctx = utils.dummy_context(project='a-different-project') res = db_api.event_get(new_ctx, event.id) self.assertIsNone(res) res = db_api.event_get(new_ctx, event.id, project_safe=False) self.assertIsNotNone(res) self.assertEqual(event.id, res.id)
def test_event_get_admin_context(self): event = self.create_event(self.ctx) admin_ctx = utils.dummy_context(project='a-different-project', is_admin=True) res = db_api.event_get(admin_ctx, event.id, project_safe=True) self.assertIsNone(res) res = db_api.event_get(admin_ctx, event.id, project_safe=False) self.assertIsNotNone(res)
def test_event_create_get(self): event = self.create_event(self.ctx) ret_event = db_api.event_get(self.ctx, event.id) self.assertIsNotNone(ret_event) tst_timestamp = tu.parse_strtime('2014-12-19 11:51:54.670244', '%Y-%m-%d %H:%M:%S.%f') self.assertEqual(tst_timestamp, ret_event.timestamp) self.assertEqual(logging.INFO, ret_event.level) self.assertEqual('', ret_event.obj_id) self.assertEqual('', ret_event.obj_type) self.assertEqual('', ret_event.obj_name) self.assertEqual('', ret_event.action) self.assertEqual('', ret_event.status) self.assertEqual('', ret_event.status_reason) self.assertEqual(self.ctx.user, ret_event.user) self.assertEqual(self.ctx.project, ret_event.project)
def test_event_create_get(self): event = self.create_event(self.ctx) ret_event = db_api.event_get(self.ctx, event.id) self.assertIsNotNone(ret_event) tst_timestamp = tu.parse_strtime('2014-12-19 11:51:54.670244', '%Y-%m-%d %H:%M:%S.%f') self.assertEqual(common_utils.isotime(tst_timestamp), common_utils.isotime(ret_event.timestamp)) self.assertEqual('20', ret_event.level) self.assertEqual('', ret_event.oid) self.assertEqual('', ret_event.otype) self.assertEqual('', ret_event.oname) self.assertEqual('', ret_event.action) self.assertEqual('', ret_event.status) self.assertEqual('', ret_event.status_reason) self.assertEqual(self.ctx.user, ret_event.user) self.assertEqual(self.ctx.project, ret_event.project)
def test_event_store(self): timestamp = timeutils.utcnow() kwargs = { 'user': self.context.user, 'project': self.context.project, 'action': 'fake-action', 'status': 'ACTIVE', 'status_reason': 'Weather is clear', 'obj_id': 'FAKE-CLUSTER-ID', 'obj_type': 'CLUSTER TYPE', 'obj_name': 'fake-cluster', 'cluster_id': 'FAKE-CLUSTER-ID', 'metadata': { 'foo': 'bar' }, } event = EVENT.Event(timestamp, logging.CRITICAL, **kwargs) self.assertIsNone(event.id) event_id = event.store(self.context) self.assertIsNotNone(event_id) self.assertEqual(event_id, event.id) result = db_api.event_get(self.context, event_id) self.assertIsNotNone(result) self.assertEqual(event_id, result.id) self.assertEqual(timestamp, result.timestamp) self.assertEqual(event.level, int(result.level)) self.assertEqual(event.user, result.user) self.assertEqual(event.project, result.project) self.assertEqual(event.action, result.action) self.assertEqual(event.status, result.status) self.assertEqual(event.status_reason, result.status_reason) self.assertEqual(event.obj_id, result.obj_id) self.assertEqual(event.obj_type, result.obj_type) self.assertEqual(event.obj_name, result.obj_name) self.assertEqual(event.cluster_id, result.cluster_id) self.assertEqual(event.metadata, result.meta_data)
def test_event_store(self): timestamp = timeutils.utcnow() kwargs = { 'user': self.context.user, 'project': self.context.project, 'action': 'fake-action', 'status': 'ACTIVE', 'status_reason': 'Weather is clear', 'obj_id': 'FAKE-CLUSTER-ID', 'obj_type': 'CLUSTER TYPE', 'obj_name': 'fake-cluster', 'cluster_id': 'FAKE-CLUSTER-ID', 'metadata': {'foo': 'bar'}, } event = EVENT.Event(timestamp, logging.CRITICAL, **kwargs) self.assertIsNone(event.id) event_id = event.store(self.context) self.assertIsNotNone(event_id) self.assertEqual(event_id, event.id) result = db_api.event_get(self.context, event_id) self.assertIsNotNone(result) self.assertEqual(event_id, result.id) self.assertEqual(timestamp, result.timestamp) self.assertEqual(event.level, int(result.level)) self.assertEqual(event.user, result.user) self.assertEqual(event.project, result.project) self.assertEqual(event.action, result.action) self.assertEqual(event.status, result.status) self.assertEqual(event.status_reason, result.status_reason) self.assertEqual(event.obj_id, result.obj_id) self.assertEqual(event.obj_type, result.obj_type) self.assertEqual(event.obj_name, result.obj_name) self.assertEqual(event.cluster_id, result.cluster_id) self.assertEqual(event.metadata, result.meta_data)
def test_event_get_admin_context(self): event = self.create_event(self.ctx) admin_ctx = utils.dummy_context(project='a-different-project', is_admin=True) res = db_api.event_get(admin_ctx, event.id, project_safe=True) self.assertIsNotNone(res)
def test_event_node_status_reason_truncate(self): event = self.create_event(self.ctx, status_reason='a' * 1024) ret_event = db_api.event_get(self.ctx, event.id) self.assertEqual('a' * 255, ret_event.status_reason)