summaryrefslogtreecommitdiffstats
path: root/nova/tests/scheduler/test_host_filters.py
diff options
context:
space:
mode:
authorBrian Elliott <brian.elliott@rackspace.com>2012-09-28 03:43:33 +0000
committerBrian Elliott <brian.elliott@rackspace.com>2012-09-28 16:52:00 +0000
commitb68da99b22614f0207645b3df2566f6187c571d2 (patch)
tree546e78a2020d7c14fb6baeb35b8d6914a2fba1e9 /nova/tests/scheduler/test_host_filters.py
parent522e122b13c8a33ce4c4436ccc35e3109acb90ec (diff)
downloadnova-b68da99b22614f0207645b3df2566f6187c571d2.tar.gz
nova-b68da99b22614f0207645b3df2566f6187c571d2.tar.xz
nova-b68da99b22614f0207645b3df2566f6187c571d2.zip
Num instances scheduler filter
Allow for scheduler filtering based on number of instances already assigned to that host. FLAGS.max_instances_per_host controls the maximum number of instances allowed per host. Change-Id: Id3e8973311ea5ac8db2d9e4e594a5288a9e3f94d
Diffstat (limited to 'nova/tests/scheduler/test_host_filters.py')
-rw-r--r--nova/tests/scheduler/test_host_filters.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/nova/tests/scheduler/test_host_filters.py b/nova/tests/scheduler/test_host_filters.py
index b1e1ec897..bc62ad6f1 100644
--- a/nova/tests/scheduler/test_host_filters.py
+++ b/nova/tests/scheduler/test_host_filters.py
@@ -1292,5 +1292,19 @@ class HostFiltersTestCase(test.TestCase):
filt_cls = self.class_map['IoOpsFilter']()
host = fakes.FakeHostState('host1', 'compute',
{'num_io_ops': 8})
+
+ def test_filter_num_instances_passes(self):
+ self.flags(max_instances_per_host=5)
+ filt_cls = self.class_map['NumInstancesFilter']()
+ host = fakes.FakeHostState('host1', 'compute',
+ {'num_instances': 4})
+ filter_properties = {}
+ self.assertTrue(filt_cls.host_passes(host, filter_properties))
+
+ def test_filter_num_instances_fails(self):
+ self.flags(max_instances_per_host=5)
+ filt_cls = self.class_map['NumInstancesFilter']()
+ host = fakes.FakeHostState('host1', 'compute',
+ {'num_instances': 5})
filter_properties = {}
self.assertFalse(filt_cls.host_passes(host, filter_properties))