diff options
author | Kevin L. Mitchell <kevin.mitchell@rackspace.com> | 2012-05-11 15:30:14 -0500 |
---|---|---|
committer | Kevin L. Mitchell <kevin.mitchell@rackspace.com> | 2012-05-23 10:17:41 -0500 |
commit | b7f0946bbd071bc76809eca440ab7d21a03eb1a3 (patch) | |
tree | 4f46ad3896cb89c8747bdf09e3f33a476eccbf16 /nova/tests/scheduler | |
parent | 7e15d4e28f98e13f0ea7399787c50839139d8492 (diff) | |
download | nova-b7f0946bbd071bc76809eca440ab7d21a03eb1a3.tar.gz nova-b7f0946bbd071bc76809eca440ab7d21a03eb1a3.tar.xz nova-b7f0946bbd071bc76809eca440ab7d21a03eb1a3.zip |
Finish quota refactor.
Finishes quota refactoring by making use of the new quota infrastructure.
Partially implements blueprint quota-refactor (the final piece is to
remove the old quota architecture).
This change is fairly substantial. To make it easier to review, it has been
broken up into 3 parts. This is the second part.
Change-Id: I1c8b43198f0d44e9e13a45575361aa043fd0639e
Diffstat (limited to 'nova/tests/scheduler')
-rw-r--r-- | nova/tests/scheduler/test_chance_scheduler.py | 23 | ||||
-rw-r--r-- | nova/tests/scheduler/test_filter_scheduler.py | 12 | ||||
-rw-r--r-- | nova/tests/scheduler/test_rpcapi.py | 6 | ||||
-rw-r--r-- | nova/tests/scheduler/test_scheduler.py | 6 |
4 files changed, 26 insertions, 21 deletions
diff --git a/nova/tests/scheduler/test_chance_scheduler.py b/nova/tests/scheduler/test_chance_scheduler.py index a9bb7a08e..ec853594b 100644 --- a/nova/tests/scheduler/test_chance_scheduler.py +++ b/nova/tests/scheduler/test_chance_scheduler.py @@ -71,13 +71,14 @@ class ChanceSchedulerTestCase(test_scheduler.SchedulerTestCase): instance2 = {'uuid': 'fake-uuid2'} instance1_encoded = {'uuid': 'fake-uuid1', '_is_precooked': False} instance2_encoded = {'uuid': 'fake-uuid2', '_is_precooked': False} + reservations = ['resv1', 'resv2'] # create_instance_db_entry() usually does this, but we're # stubbing it. - def _add_uuid1(ctxt, request_spec): + def _add_uuid1(ctxt, request_spec, reservations): request_spec['instance_properties']['uuid'] = 'fake-uuid1' - def _add_uuid2(ctxt, request_spec): + def _add_uuid2(ctxt, request_spec, reservations): request_spec['instance_properties']['uuid'] = 'fake-uuid2' self.mox.StubOutWithMock(ctxt, 'elevated') @@ -92,8 +93,8 @@ class ChanceSchedulerTestCase(test_scheduler.SchedulerTestCase): self.driver.hosts_up(ctxt_elevated, 'compute').AndReturn( ['host1', 'host2', 'host3', 'host4']) random.random().AndReturn(.5) - self.driver.create_instance_db_entry(ctxt, - request_spec).WithSideEffects(_add_uuid1).AndReturn( + self.driver.create_instance_db_entry(ctxt, request_spec, + reservations).WithSideEffects(_add_uuid1).AndReturn( instance1) driver.cast_to_compute_host(ctxt, 'host3', 'run_instance', instance_uuid=instance1['uuid'], **fake_kwargs) @@ -103,8 +104,8 @@ class ChanceSchedulerTestCase(test_scheduler.SchedulerTestCase): self.driver.hosts_up(ctxt_elevated, 'compute').AndReturn( ['host1', 'host2', 'host3', 'host4']) random.random().AndReturn(.2) - self.driver.create_instance_db_entry(ctxt, - request_spec).WithSideEffects(_add_uuid2).AndReturn( + self.driver.create_instance_db_entry(ctxt, request_spec, + reservations).WithSideEffects(_add_uuid2).AndReturn( instance2) driver.cast_to_compute_host(ctxt, 'host1', 'run_instance', instance_uuid=instance2['uuid'], **fake_kwargs) @@ -112,7 +113,7 @@ class ChanceSchedulerTestCase(test_scheduler.SchedulerTestCase): self.mox.ReplayAll() result = self.driver.schedule_run_instance(ctxt, request_spec, - *fake_args, **fake_kwargs) + reservations, *fake_args, **fake_kwargs) expected = [instance1_encoded, instance2_encoded] self.assertEqual(result, expected) @@ -128,7 +129,7 @@ class ChanceSchedulerTestCase(test_scheduler.SchedulerTestCase): # stubbing it. def _add_uuid(num): """Return a function that adds the provided uuid number.""" - def _add_uuid_num(_, spec): + def _add_uuid_num(_, spec, reservations): spec['instance_properties']['uuid'] = 'fake-uuid%d' % num return _add_uuid_num @@ -150,7 +151,7 @@ class ChanceSchedulerTestCase(test_scheduler.SchedulerTestCase): # instance 1 self.driver._schedule(ctxt, 'compute', request_spec).AndReturn('host') self.driver.create_instance_db_entry( - ctxt, mox.Func(_has_launch_index(0)) + ctxt, mox.Func(_has_launch_index(0)), None ).WithSideEffects(_add_uuid(1)).AndReturn(instance1) driver.cast_to_compute_host(ctxt, 'host', 'run_instance', instance_uuid=instance1['uuid']) @@ -158,14 +159,14 @@ class ChanceSchedulerTestCase(test_scheduler.SchedulerTestCase): # instance 2 self.driver._schedule(ctxt, 'compute', request_spec).AndReturn('host') self.driver.create_instance_db_entry( - ctxt, mox.Func(_has_launch_index(1)) + ctxt, mox.Func(_has_launch_index(1)), None ).WithSideEffects(_add_uuid(2)).AndReturn(instance2) driver.cast_to_compute_host(ctxt, 'host', 'run_instance', instance_uuid=instance2['uuid']) driver.encode_instance(instance2).AndReturn(instance2) self.mox.ReplayAll() - self.driver.schedule_run_instance(ctxt, request_spec) + self.driver.schedule_run_instance(ctxt, request_spec, None) def test_basic_schedule_run_instance_no_hosts(self): ctxt = context.RequestContext('fake', 'fake', False) diff --git a/nova/tests/scheduler/test_filter_scheduler.py b/nova/tests/scheduler/test_filter_scheduler.py index 0256f2aa3..168906bdf 100644 --- a/nova/tests/scheduler/test_filter_scheduler.py +++ b/nova/tests/scheduler/test_filter_scheduler.py @@ -51,7 +51,7 @@ class FilterSchedulerTestCase(test_scheduler.SchedulerTestCase): 'ephemeral_gb': 0}, 'instance_properties': {'project_id': 1}} self.assertRaises(exception.NoValidHost, sched.schedule_run_instance, - fake_context, request_spec) + fake_context, request_spec, None) def test_run_instance_non_admin(self): """Test creating an instance locally using run_instance, passing @@ -72,7 +72,7 @@ class FilterSchedulerTestCase(test_scheduler.SchedulerTestCase): request_spec = {'instance_type': {'memory_mb': 1, 'local_gb': 1}, 'instance_properties': {'project_id': 1}} self.assertRaises(exception.NoValidHost, sched.schedule_run_instance, - fake_context, request_spec) + fake_context, request_spec, None) self.assertTrue(self.was_admin) def test_schedule_bad_topic(self): @@ -117,14 +117,16 @@ class FilterSchedulerTestCase(test_scheduler.SchedulerTestCase): # instance 1 self.driver._provision_resource( ctxt, 'host1', - mox.Func(_has_launch_index(0)), fake_kwargs).AndReturn(instance1) + mox.Func(_has_launch_index(0)), None, + fake_kwargs).AndReturn(instance1) # instance 2 self.driver._provision_resource( ctxt, 'host2', - mox.Func(_has_launch_index(1)), fake_kwargs).AndReturn(instance2) + mox.Func(_has_launch_index(1)), None, + fake_kwargs).AndReturn(instance2) self.mox.ReplayAll() - self.driver.schedule_run_instance(context_fake, request_spec, + self.driver.schedule_run_instance(context_fake, request_spec, None, **fake_kwargs) def test_schedule_happy_day(self): diff --git a/nova/tests/scheduler/test_rpcapi.py b/nova/tests/scheduler/test_rpcapi.py index 3f5a77fac..3617cecdf 100644 --- a/nova/tests/scheduler/test_rpcapi.py +++ b/nova/tests/scheduler/test_rpcapi.py @@ -68,14 +68,16 @@ class SchedulerRpcAPITestCase(test.TestCase): topic='fake_topic', request_spec='fake_request_spec', admin_password='pw', injected_files='fake_injected_files', requested_networks='fake_requested_networks', - is_first_time=True, filter_properties='fake_filter_properties') + is_first_time=True, filter_properties='fake_filter_properties', + reservations=None) def test_run_instance_cast(self): self._test_scheduler_api('run_instance', rpc_method='cast', topic='fake_topic', request_spec='fake_request_spec', admin_password='pw', injected_files='fake_injected_files', requested_networks='fake_requested_networks', - is_first_time=True, filter_properties='fake_filter_properties') + is_first_time=True, filter_properties='fake_filter_properties', + reservations=None) def test_prep_resize(self): self._test_scheduler_api('prep_resize', rpc_method='cast', diff --git a/nova/tests/scheduler/test_scheduler.py b/nova/tests/scheduler/test_scheduler.py index a662d6930..23b553d64 100644 --- a/nova/tests/scheduler/test_scheduler.py +++ b/nova/tests/scheduler/test_scheduler.py @@ -389,10 +389,10 @@ class SchedulerTestCase(test.TestCase): self.driver.compute_api.create_db_entry_for_new_instance( self.context, instance_type, image, base_options, security_group, - block_device_mapping).AndReturn(fake_instance) + block_device_mapping, None).AndReturn(fake_instance) self.mox.ReplayAll() instance = self.driver.create_instance_db_entry(self.context, - request_spec) + request_spec, None) self.mox.VerifyAll() self.assertEqual(instance, fake_instance) @@ -407,7 +407,7 @@ class SchedulerTestCase(test.TestCase): self.mox.ReplayAll() instance = self.driver.create_instance_db_entry(self.context, - request_spec) + request_spec, None) self.assertEqual(instance, fake_instance) def _live_migration_instance(self): |