def test_instance_type_create_then_delete(self): # Ensure instance types can be created. name = "Small Flavor" flavorid = "flavor1" original_list = flavors.get_all_types() # create new type and make sure values stick inst_type = flavors.create(name, 256, 1, 120, 100, flavorid) inst_type_id = inst_type["id"] self.assertEqual(inst_type["flavorid"], flavorid) self.assertEqual(inst_type["name"], name) self.assertEqual(inst_type["memory_mb"], 256) self.assertEqual(inst_type["vcpus"], 1) self.assertEqual(inst_type["root_gb"], 120) self.assertEqual(inst_type["ephemeral_gb"], 100) self.assertEqual(inst_type["swap"], 0) self.assertEqual(inst_type["rxtx_factor"], 1.0) # make sure new type shows up in list new_list = flavors.get_all_types() self.assertNotEqual(len(original_list), len(new_list), "instance type was not created") flavors.destroy(name) self.assertRaises(exception.InstanceTypeNotFound, flavors.get_instance_type, inst_type_id) # deleted instance should not be in list anymoer new_list = flavors.get_all_types() self.assertEqual(original_list, new_list)
def test_basic_create(self): # Ensure instance types can be created. original_list = flavors.get_all_types() # Create new type and make sure values stick flavor = flavors.create("flavor", 64, 1, 120) self.assertEqual(flavor["name"], "flavor") self.assertEqual(flavor["memory_mb"], 64) self.assertEqual(flavor["vcpus"], 1) self.assertEqual(flavor["root_gb"], 120) # Ensure new type shows up in list new_list = flavors.get_all_types() self.assertNotEqual(len(original_list), len(new_list), "flavor was not created")
def test_basic_create(self): # Ensure instance types can be created. original_list = flavors.get_all_types() # Create new type and make sure values stick flavor = flavors.create('flavor', 64, 1, 120) self.assertEqual(flavor['name'], 'flavor') self.assertEqual(flavor['memory_mb'], 64) self.assertEqual(flavor['vcpus'], 1) self.assertEqual(flavor['root_gb'], 120) # Ensure new type shows up in list new_list = flavors.get_all_types() self.assertNotEqual(len(original_list), len(new_list), 'flavor was not created')
def test_create_then_delete(self): original_list = flavors.get_all_types() flavor = flavors.create("flavor", 64, 1, 120) # Ensure new type shows up in list new_list = flavors.get_all_types() self.assertNotEqual(len(original_list), len(new_list), "instance type was not created") flavors.destroy("flavor") self.assertRaises(exception.InstanceTypeNotFound, flavors.get_instance_type, flavor["id"]) # Deleted instance should not be in list anymore new_list = flavors.get_all_types() self.assertEqual(original_list, new_list)
def test_basic_create(self): # Ensure instance types can be created. original_list = flavors.get_all_types() # Create new type and make sure values stick flavor = flavors.create('flavor', 64, 1, 120) self.assertEqual(flavor['name'], 'flavor') self.assertEqual(flavor['memory_mb'], 64) self.assertEqual(flavor['vcpus'], 1) self.assertEqual(flavor['root_gb'], 120) # Ensure new type shows up in list new_list = flavors.get_all_types() self.assertNotEqual(len(original_list), len(new_list), 'flavor was not created')
def _get_flavors(self, req): """Helper function that returns a list of flavor dicts.""" filters = {} context = req.environ['nova.context'] if context.is_admin: # Only admin has query access to all flavor types filters['is_public'] = self._parse_is_public( req.params.get('is_public', None)) else: filters['is_public'] = True filters['disabled'] = False if 'minRam' in req.params: try: filters['min_memory_mb'] = int(req.params['minRam']) except ValueError: msg = _('Invalid minRam filter [%s]') % req.params['minRam'] raise webob.exc.HTTPBadRequest(explanation=msg) if 'minDisk' in req.params: try: filters['min_root_gb'] = int(req.params['minDisk']) except ValueError: msg = _('Invalid minDisk filter [%s]') % req.params['minDisk'] raise webob.exc.HTTPBadRequest(explanation=msg) limited_flavors = flavors.get_all_types(context, filters=filters) flavors_list = limited_flavors.values() sorted_flavors = sorted(flavors_list, key=lambda item: item['flavorid']) limited_flavors = common.limited_by_marker(sorted_flavors, req) return limited_flavors
def _get_flavors(self, req): """Helper function that returns a list of flavor dicts.""" filters = {} context = req.environ['nova.context'] if context.is_admin: # Only admin has query access to all flavor types filters['is_public'] = self._get_is_public(req) else: filters['is_public'] = True filters['disabled'] = False if 'minRam' in req.params: try: filters['min_memory_mb'] = int(req.params['minRam']) except ValueError: msg = _('Invalid minRam filter [%s]') % req.params['minRam'] raise webob.exc.HTTPBadRequest(explanation=msg) if 'minDisk' in req.params: try: filters['min_root_gb'] = int(req.params['minDisk']) except ValueError: msg = _('Invalid minDisk filter [%s]') % req.params['minDisk'] raise webob.exc.HTTPBadRequest(explanation=msg) limited_flavors = flavors.get_all_types(context, filters=filters) flavors_list = limited_flavors.values() sorted_flavors = sorted(flavors_list, key=lambda item: item['flavorid']) limited_flavors = common.limited_by_marker(sorted_flavors, req) return limited_flavors
def _generate_name(self): """return a name not in the DB.""" nonexistent_flavor = str(int(time.time())) all_flavors = flavors.get_all_types() while nonexistent_flavor in all_flavors: nonexistent_flavor += "z" else: return nonexistent_flavor
def _get_flavor_refs(self, context): """Return a dictionary mapping flavorid to flavor_ref.""" flavor_refs = flavors.get_all_types(context) rval = {} for name, obj in flavor_refs.iteritems(): rval[obj['flavorid']] = obj return rval
def _generate_name(self): """return a name not in the DB.""" nonexistent_flavor = str(int(time.time())) all_flavors = flavors.get_all_types() while nonexistent_flavor in all_flavors: nonexistent_flavor += "z" else: return nonexistent_flavor
def _generate_flavorid(self): """return a flavorid not in the DB.""" nonexistent_flavor = 2700 flavor_ids = [value["id"] for key, value in flavors.get_all_types().iteritems()] while nonexistent_flavor in flavor_ids: nonexistent_flavor += 1 else: return nonexistent_flavor
def test_create_then_delete(self): original_list = flavors.get_all_types() flavor = flavors.create('flavor', 64, 1, 120) # Ensure new type shows up in list new_list = flavors.get_all_types() self.assertNotEqual(len(original_list), len(new_list), 'instance type was not created') flavors.destroy('flavor') self.assertRaises(exception.InstanceTypeNotFound, flavors.get_instance_type, flavor['id']) # Deleted instance should not be in list anymore new_list = flavors.get_all_types() self.assertEqual(original_list, new_list)
def _generate_flavorid(self): """return a flavorid not in the DB.""" nonexistent_flavor = 2700 flavor_ids = [ value["id"] for key, value in flavors.get_all_types().iteritems() ] while nonexistent_flavor in flavor_ids: nonexistent_flavor += 1 else: return nonexistent_flavor
def test_instance_type_create(self): # Ensure instance types can be created. name = "Instance create test" flavor_id = "512" original_list = flavors.get_all_types() # create new type and make sure values stick inst_type = flavors.create(name, 256, 1, 120, flavorid=flavor_id) self.assertEqual(inst_type["flavorid"], flavor_id) self.assertEqual(inst_type["name"], name) self.assertEqual(inst_type["memory_mb"], 256) self.assertEqual(inst_type["vcpus"], 1) self.assertEqual(inst_type["root_gb"], 120) self.assertEqual(inst_type["ephemeral_gb"], 0) self.assertEqual(inst_type["swap"], 0) self.assertEqual(inst_type["rxtx_factor"], 1.0) # make sure new type shows up in list new_list = flavors.get_all_types() self.assertNotEqual(len(original_list), len(new_list), "instance type was not created")
def list(self, name=None): """Lists all active or specific instance types / flavors.""" try: if name is None: inst_types = flavors.get_all_types() else: inst_types = flavors.get_instance_type_by_name(name) except db_exc.DBError as e: _db_error(e) if isinstance(inst_types.values()[0], dict): for k, v in inst_types.iteritems(): self._print_instance_types(k, v) else: self._print_instance_types(name, inst_types)
def test_get_all_instance_types(self): # Ensures that all instance types can be retrieved. session = sql_session.get_session() total_instance_types = session.query(models.InstanceTypes).count() inst_types = flavors.get_all_types() self.assertEqual(total_instance_types, len(inst_types))
def _existing_flavor(self): """return first instance type name.""" return flavors.get_all_types().keys()[0]
def _existing_flavor(self): """return first instance type name.""" return flavors.get_all_types().keys()[0]
def test_get_all_instance_types(self): # Ensures that all instance types can be retrieved. session = sql_session.get_session() total_instance_types = session.query(models.InstanceTypes).count() inst_types = flavors.get_all_types() self.assertEqual(total_instance_types, len(inst_types))