def test_notify_usage_exists(self): """Ensure 'exists' notification generates appropriate usage data.""" volume_id = self._create_volume() volume = db.volume_get(self.context, volume_id) volume_utils.notify_usage_exists(self.context, volume) LOG.info("%r" % test_notifier.NOTIFICATIONS) self.assertEquals(len(test_notifier.NOTIFICATIONS), 1) msg = test_notifier.NOTIFICATIONS[0] self.assertEquals(msg["priority"], "INFO") self.assertEquals(msg["event_type"], "volume.exists") payload = msg["payload"] self.assertEquals(payload["tenant_id"], self.project_id) self.assertEquals(payload["user_id"], self.user_id) self.assertEquals(payload["snapshot_id"], self.snapshot_id) self.assertEquals(payload["volume_id"], volume.id) self.assertEquals(payload["size"], self.volume_size) for attr in ( "display_name", "created_at", "launched_at", "status", "audit_period_beginning", "audit_period_ending", ): self.assertTrue(attr in payload, msg="Key %s not in payload" % attr) db.volume_destroy(context.get_admin_context(), volume["id"])
def test_notify_usage_exists(self): """Ensure 'exists' notification generates appropriate usage data.""" volume_id = self._create_volume() volume = db.volume_get(self.context, volume_id) volume_utils.notify_usage_exists(self.context, volume) LOG.info("%r" % test_notifier.NOTIFICATIONS) self.assertEquals(len(test_notifier.NOTIFICATIONS), 1) msg = test_notifier.NOTIFICATIONS[0] self.assertEquals(msg['priority'], 'INFO') self.assertEquals(msg['event_type'], 'volume.exists') payload = msg['payload'] self.assertEquals(payload['tenant_id'], self.project_id) self.assertEquals(payload['user_id'], self.user_id) self.assertEquals(payload['snapshot_id'], self.snapshot_id) self.assertEquals(payload['volume_id'], volume.id) self.assertEquals(payload['size'], self.volume_size) for attr in ('display_name', 'created_at', 'launched_at', 'status', 'audit_period_beginning', 'audit_period_ending'): self.assertIn(attr, payload) db.volume_destroy(context.get_admin_context(), volume['id'])
def test_notify_usage_exists(self): """Ensure 'exists' notification generates appropriate usage data.""" volume_id = self._create_volume() volume = db.volume_get(self.context, volume_id) volume_utils.notify_usage_exists(self.context, volume) LOG.info("%r" % test_notifier.NOTIFICATIONS) self.assertEqual(len(test_notifier.NOTIFICATIONS), 1) msg = test_notifier.NOTIFICATIONS[0] self.assertEqual(msg['priority'], 'INFO') self.assertEqual(msg['event_type'], 'volume.exists') payload = msg['payload'] self.assertEqual(payload['tenant_id'], self.project_id) self.assertEqual(payload['user_id'], self.user_id) self.assertEqual(payload['snapshot_id'], self.snapshot_id) self.assertEqual(payload['volume_id'], volume.id) self.assertEqual(payload['size'], self.volume_size) for attr in ('display_name', 'created_at', 'launched_at', 'status', 'audit_period_beginning', 'audit_period_ending'): self.assertIn(attr, payload) db.volume_destroy(context.get_admin_context(), volume['id'])