diff options
| author | Jenkins <jenkins@review.openstack.org> | 2012-08-15 12:54:50 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2012-08-15 12:54:50 +0000 |
| commit | 1ef3607239c4bce8a276e420f2b70137b1a1fe2f (patch) | |
| tree | cef87ca4447c9922ff6e0b9ab8d251083e7a63d4 /nova/tests | |
| parent | ca950e7ea3909110fe05e3239975b7545423670a (diff) | |
| parent | 90f77d71fe5815f08fe12e77e7645c6025ee0191 (diff) | |
Merge "Added several operators on instance_type_extra_specs."
Diffstat (limited to 'nova/tests')
| -rw-r--r-- | nova/tests/scheduler/test_host_filters.py | 384 |
1 files changed, 379 insertions, 5 deletions
diff --git a/nova/tests/scheduler/test_host_filters.py b/nova/tests/scheduler/test_host_filters.py index 57827ac19..ca5ca5366 100644 --- a/nova/tests/scheduler/test_host_filters.py +++ b/nova/tests/scheduler/test_host_filters.py @@ -394,11 +394,11 @@ class HostFiltersTestCase(test.TestCase): 'service': service}) self.assertTrue(filt_cls.host_passes(host, filter_properties)) - def test_compute_filter_passes_extra_specs(self): + def test_compute_filter_passes_extra_specs_noop(self): self._stub_service_is_up(True) filt_cls = self.class_map['ComputeCapabilitiesFilter']() - extra_specs = {'opt1': 1, 'opt2': 2} - capabilities = {'enabled': True, 'opt1': 1, 'opt2': 2} + extra_specs = {'opt1': '1111', 'opt2': '222'} + capabilities = {'enabled': True, 'opt1': '1', 'opt2': '2'} service = {'disabled': False} filter_properties = {'instance_type': {'memory_mb': 1024, 'extra_specs': extra_specs}} @@ -407,10 +407,384 @@ class HostFiltersTestCase(test.TestCase): 'service': service}) self.assertTrue(filt_cls.host_passes(host, filter_properties)) - def test_compute_filter_fails_extra_specs(self): + def test_compute_filter_passes_extra_specs_noop2(self): self._stub_service_is_up(True) filt_cls = self.class_map['ComputeCapabilitiesFilter']() - extra_specs = {'opt1': 1, 'opt2': 3} + extra_specs = {'opt1': '1111', 'opt2': '222'} + capabilities = {'enabled': True, 'opt3': '1', 'opt4': '2'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_noop3(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '', 'opt2': ''} + capabilities = {'enabled': True, 'opt1': '1', 'opt2': '2'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_noop4(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '> 4', 'opt2': '< 3'} + capabilities = {'enabled': True, 'opt1': '2', 'opt2': '5'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_eq(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '= 123'} + capabilities = {'enabled': True, 'opt1': '123'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_eq2(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '= 123'} + capabilities = {'enabled': True, 'opt1': '124'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_eq3(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '= 123', 'opt2': '= 456'} + capabilities = {'enabled': True, 'opt1': '124', 'opt2': '456'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_eq(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt2': '= 234'} + capabilities = {'enabled': True, 'opt2': '34'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_eq2(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '= 123', 'opt2': '= 456'} + capabilities = {'enabled': True, 'opt1': '124', 'opt2': '4567'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_eq3(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '='} + capabilities = {'enabled': True, 'opt1': '124'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_eq4(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt11': '= 124', 'opt12': '= 456'} + capabilities = {'enabled': True, 'opt3': '124', 'opt4': '456'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_seq(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': 's== 123'} + capabilities = {'enabled': True, 'opt1': '123'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_seq(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt2': 's== 234'} + capabilities = {'enabled': True, 'opt2': '2345'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_sneq(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': 's!= 123'} + capabilities = {'enabled': True, 'opt1': '11'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_sneq(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt2': 's!= 234'} + capabilities = {'enabled': True, 'opt2': '234'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_sgle(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': 's<= 123', 'opt2': 's>= 43'} + capabilities = {'enabled': True, 'opt1': '11', 'opt2': '543'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_sge(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt2': 's>= 234'} + capabilities = {'enabled': True, 'opt2': '1000'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_sle(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt2': 's<= 1000'} + capabilities = {'enabled': True, 'opt2': '234'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_sgl(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': 's< 123', 'opt2': 's> 43'} + capabilities = {'enabled': True, 'opt1': '11', 'opt2': '543'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_sl(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt2': 's< 12'} + capabilities = {'enabled': True, 'opt2': '2'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_sg(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt2': 's> 2'} + capabilities = {'enabled': True, 'opt2': '12'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_in(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '<in> 11'} + capabilities = {'enabled': True, 'opt1': '12311321'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_in2(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '<in> 12311321'} + capabilities = {'enabled': True, 'opt1': '12311321'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_in(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '<in> 11'} + capabilities = {'enabled': True, 'opt1': '12310321'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_or(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '<or> 11 <or> 12'} + capabilities = {'enabled': True, 'opt1': '12'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_or(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '<or> 11 <or> 12'} + capabilities = {'enabled': True, 'opt1': '13'} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_le(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '<= 10', 'opt2': '<= 20'} + capabilities = {'enabled': True, 'opt1': 2, 'opt2': 2} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_le(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '<= 2', 'opt2': '<= 2'} + capabilities = {'enabled': True, 'opt1': 1, 'opt2': 3} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + + self.assertFalse(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_passes_extra_specs_with_op_ge(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '>= 1', 'opt2': '>= 2'} + capabilities = {'enabled': True, 'opt1': 2, 'opt2': 2} + service = {'disabled': False} + filter_properties = {'instance_type': {'memory_mb': 1024, + 'extra_specs': extra_specs}} + host = fakes.FakeHostState('host1', 'compute', + {'free_ram_mb': 1024, 'capabilities': capabilities, + 'service': service}) + self.assertTrue(filt_cls.host_passes(host, filter_properties)) + + def test_compute_filter_fails_extra_specs_with_op_ge(self): + self._stub_service_is_up(True) + filt_cls = self.class_map['ComputeCapabilitiesFilter']() + extra_specs = {'opt1': '>= 2', 'opt2': '>= 2'} capabilities = {'enabled': True, 'opt1': 1, 'opt2': 2} service = {'disabled': False} filter_properties = {'instance_type': {'memory_mb': 1024, |
