def _get_alternate_link(self, request, identifier): """Create an alternate link for a specific flavor id.""" tank_url = utils.generate_tank_url() return os.path.join(tank_url, request.environ["engine.context"].project_id, self._collection_name, str(identifier))
def test_notify_usage_exists(self): """Ensure 'exists' notification generates apropriate usage data.""" instance_id = self._create_instance() instance = db.instance_get(self.context, instance_id) compute_utils.notify_usage_exists(instance) self.assertEquals(len(test_notifier.NOTIFICATIONS), 1) msg = test_notifier.NOTIFICATIONS[0] self.assertEquals(msg['priority'], 'INFO') self.assertEquals(msg['event_type'], 'compute.instance.exists') payload = msg['payload'] self.assertEquals(payload['tenant_id'], self.project_id) self.assertEquals(payload['user_id'], self.user_id) self.assertEquals(payload['instance_id'], instance.uuid) self.assertEquals(payload['instance_type'], 'm1.tiny') type_id = instance_types.get_instance_type_by_name('m1.tiny')['id'] self.assertEquals(str(payload['instance_type_id']), str(type_id)) for attr in ('display_name', 'created_at', 'launched_at', 'state', 'state_description', 'fixed_ips', 'bandwidth', 'audit_period_beginning', 'audit_period_ending'): self.assertTrue(attr in payload, msg="Key %s not in payload" % attr) image_ref_url = "%s/images/1" % utils.generate_tank_url() self.assertEquals(payload['image_ref_url'], image_ref_url) self.compute.terminate_instance(self.context, instance['uuid'])
def test_generate_tank_url(self): generated_url = utils.generate_tank_url() actual_url = "http://%s:%d" % (FLAGS.tank_host, FLAGS.tank_port) self.assertEqual(generated_url, actual_url)