diff options
Diffstat (limited to 'nova/tests/unit/scheduler/test_host_manager.py')
-rw-r--r-- | nova/tests/unit/scheduler/test_host_manager.py | 85 |
1 files changed, 63 insertions, 22 deletions
diff --git a/nova/tests/unit/scheduler/test_host_manager.py b/nova/tests/unit/scheduler/test_host_manager.py index 99146352fc..b3bfa8dcde 100644 --- a/nova/tests/unit/scheduler/test_host_manager.py +++ b/nova/tests/unit/scheduler/test_host_manager.py @@ -207,7 +207,10 @@ class HostManagerTestCase(test.NoDBTestCase): self.assertEqual(set(info['expected_objs']), set(result)) def test_get_filtered_hosts(self): - fake_properties = {'moo': 1, 'cow': 2} + fake_properties = objects.RequestSpec(ignore_hosts=[], + instance_uuid='fake-uuid1', + force_hosts=[], + force_nodes=[]) info = {'expected_objs': self.fake_hosts, 'expected_fprops': fake_properties} @@ -220,7 +223,10 @@ class HostManagerTestCase(test.NoDBTestCase): @mock.patch.object(FakeFilterClass2, '_filter_one', return_value=True) def test_get_filtered_hosts_with_specified_filters(self, mock_filter_one): - fake_properties = {'moo': 1, 'cow': 2} + fake_properties = objects.RequestSpec(ignore_hosts=[], + instance_uuid='fake-uuid1', + force_hosts=[], + force_nodes=[]) specified_filters = ['FakeFilterClass1', 'FakeFilterClass2'] info = {'expected_objs': self.fake_hosts, @@ -232,8 +238,12 @@ class HostManagerTestCase(test.NoDBTestCase): self._verify_result(info, result) def test_get_filtered_hosts_with_ignore(self): - fake_properties = {'ignore_hosts': ['fake_host1', 'fake_host3', - 'fake_host5', 'fake_multihost']} + fake_properties = objects.RequestSpec( + instance_uuid='fake-uuid1', + ignore_hosts=['fake_host1', 'fake_host3', + 'fake_host5', 'fake_multihost'], + force_hosts=[], + force_nodes=[]) # [1] and [3] are host2 and host4 info = {'expected_objs': [self.fake_hosts[1], self.fake_hosts[3]], @@ -245,8 +255,11 @@ class HostManagerTestCase(test.NoDBTestCase): self._verify_result(info, result) def test_get_filtered_hosts_with_force_hosts(self): - fake_properties = {'force_hosts': ['fake_host1', 'fake_host3', - 'fake_host5']} + fake_properties = objects.RequestSpec( + instance_uuid='fake-uuid1', + ignore_hosts=[], + force_hosts=['fake_host1', 'fake_host3', 'fake_host5'], + force_nodes=[]) # [0] and [2] are host1 and host3 info = {'expected_objs': [self.fake_hosts[0], self.fake_hosts[2]], @@ -258,7 +271,11 @@ class HostManagerTestCase(test.NoDBTestCase): self._verify_result(info, result, False) def test_get_filtered_hosts_with_no_matching_force_hosts(self): - fake_properties = {'force_hosts': ['fake_host5', 'fake_host6']} + fake_properties = objects.RequestSpec( + instance_uuid='fake-uuid1', + ignore_hosts=[], + force_hosts=['fake_host5', 'fake_host6'], + force_nodes=[]) info = {'expected_objs': [], 'expected_fprops': fake_properties} @@ -270,8 +287,11 @@ class HostManagerTestCase(test.NoDBTestCase): def test_get_filtered_hosts_with_ignore_and_force_hosts(self): # Ensure ignore_hosts processed before force_hosts in host filters. - fake_properties = {'force_hosts': ['fake_host3', 'fake_host1'], - 'ignore_hosts': ['fake_host1']} + fake_properties = objects.RequestSpec( + instance_uuid='fake-uuid1', + ignore_hosts=['fake_host1'], + force_hosts=['fake_host3', 'fake_host1'], + force_nodes=[]) # only fake_host3 should be left. info = {'expected_objs': [self.fake_hosts[2]], @@ -284,7 +304,11 @@ class HostManagerTestCase(test.NoDBTestCase): def test_get_filtered_hosts_with_force_host_and_many_nodes(self): # Ensure all nodes returned for a host with many nodes - fake_properties = {'force_hosts': ['fake_multihost']} + fake_properties = objects.RequestSpec( + instance_uuid='fake-uuid1', + ignore_hosts=[], + force_hosts=['fake_multihost'], + force_nodes=[]) info = {'expected_objs': [self.fake_hosts[4], self.fake_hosts[5], self.fake_hosts[6], self.fake_hosts[7]], @@ -296,8 +320,11 @@ class HostManagerTestCase(test.NoDBTestCase): self._verify_result(info, result, False) def test_get_filtered_hosts_with_force_nodes(self): - fake_properties = {'force_nodes': ['fake-node2', 'fake-node4', - 'fake-node9']} + fake_properties = objects.RequestSpec( + instance_uuid='fake-uuid1', + ignore_hosts=[], + force_hosts=[], + force_nodes=['fake-node2', 'fake-node4', 'fake-node9']) # [5] is fake-node2, [7] is fake-node4 info = {'expected_objs': [self.fake_hosts[5], self.fake_hosts[7]], @@ -310,8 +337,11 @@ class HostManagerTestCase(test.NoDBTestCase): def test_get_filtered_hosts_with_force_hosts_and_nodes(self): # Ensure only overlapping results if both force host and node - fake_properties = {'force_hosts': ['fake_host1', 'fake_multihost'], - 'force_nodes': ['fake-node2', 'fake-node9']} + fake_properties = objects.RequestSpec( + instance_uuid='fake-uuid1', + ignore_hosts=[], + force_hosts=['fake-host1', 'fake_multihost'], + force_nodes=['fake-node2', 'fake-node9']) # [5] is fake-node2 info = {'expected_objs': [self.fake_hosts[5]], @@ -324,8 +354,11 @@ class HostManagerTestCase(test.NoDBTestCase): def test_get_filtered_hosts_with_force_hosts_and_wrong_nodes(self): # Ensure non-overlapping force_node and force_host yield no result - fake_properties = {'force_hosts': ['fake_multihost'], - 'force_nodes': ['fake-node']} + fake_properties = objects.RequestSpec( + instance_uuid='fake-uuid1', + ignore_hosts=[], + force_hosts=['fake_multihost'], + force_nodes=['fake-node']) info = {'expected_objs': [], 'expected_fprops': fake_properties} @@ -337,8 +370,11 @@ class HostManagerTestCase(test.NoDBTestCase): def test_get_filtered_hosts_with_ignore_hosts_and_force_nodes(self): # Ensure ignore_hosts can coexist with force_nodes - fake_properties = {'force_nodes': ['fake-node4', 'fake-node2'], - 'ignore_hosts': ['fake_host1', 'fake_host2']} + fake_properties = objects.RequestSpec( + instance_uuid='fake-uuid1', + ignore_hosts=['fake_host1', 'fake_host2'], + force_hosts=[], + force_nodes=['fake-node4', 'fake-node2']) info = {'expected_objs': [self.fake_hosts[5], self.fake_hosts[7]], 'expected_fprops': fake_properties} @@ -350,8 +386,11 @@ class HostManagerTestCase(test.NoDBTestCase): def test_get_filtered_hosts_with_ignore_hosts_and_force_same_nodes(self): # Ensure ignore_hosts is processed before force_nodes - fake_properties = {'force_nodes': ['fake_node4', 'fake_node2'], - 'ignore_hosts': ['fake_multihost']} + fake_properties = objects.RequestSpec( + instance_uuid='fake-uuid1', + ignore_hosts=['fake_multihost'], + force_hosts=[], + force_nodes=['fake_node4', 'fake_node2']) info = {'expected_objs': [], 'expected_fprops': fake_properties} @@ -885,9 +924,9 @@ class HostStateTestCase(test.NoDBTestCase): numa_fit_mock.return_value = fake_numa_topology instance_init_mock.return_value = fake_instance spec_obj = objects.RequestSpec( + instance_uuid='fake-uuid', flavor=objects.Flavor(root_gb=0, ephemeral_gb=0, memory_mb=0, vcpus=0), - uuid='fake-uuid', numa_topology=fake_numa_topology, pci_requests=objects.InstancePCIRequests(requests=[])) host = host_manager.HostState("fakehost", "fakenode") @@ -905,9 +944,9 @@ class HostStateTestCase(test.NoDBTestCase): second_numa_topology = objects.InstanceNUMATopology( cells=[objects.InstanceNUMACell()]) spec_obj = objects.RequestSpec( + instance_uuid='fake-uuid', flavor=objects.Flavor(root_gb=0, ephemeral_gb=0, memory_mb=0, vcpus=0), - uuid='fake-uuid', numa_topology=second_numa_topology, pci_requests=objects.InstancePCIRequests(requests=[])) second_host_numa_topology = mock.Mock() @@ -936,6 +975,7 @@ class HostStateTestCase(test.NoDBTestCase): for r in fake_requests], instance_uuid='fake-uuid') req_spec = objects.RequestSpec( + instance_uuid='fake-uuid', project_id='12345', numa_topology=inst_topology, pci_requests=fake_requests_obj, @@ -968,6 +1008,7 @@ class HostStateTestCase(test.NoDBTestCase): for r in fake_requests], instance_uuid='fake-uuid') req_spec = objects.RequestSpec( + instance_uuid='fake-uuid', project_id='12345', numa_topology=None, pci_requests=fake_requests_obj, |