def test_cpuset_filter_fail_dedicated_2(self): self.filt_cls = cpuset_filter.CpuSetFilter() container = objects.Container(self.context) container.cpu_policy = 'dedicated' container.cpu = 2.0 container.memory = '1024' host = fakes.FakeHostState('testhost') host.cpus = 6 host.cpu_used = 0.0 host.numa_topology = objects.NUMATopology(nodes=[ objects.NUMANode(id=0, cpuset=set([1, 2, 3]), pinned_cpus=set([]), mem_total=32739, mem_available=32739), objects.NUMANode(id=1, cpuset=set([4, 5, 6]), pinned_cpus=set([]), mem_total=32739, mem_available=32739) ]) host.enable_cpu_pinning = False extra_spec = {} self.assertFalse(self.filt_cls.host_passes(host, container, extra_spec))
def test_runtime_filter_specificed(self): self.filt_cls = runtime_filter.RuntimeFilter() container = objects.Container(self.context) container.runtime = 'runc' host = fakes.FakeHostState('testhost') host.runtimes = ['runc'] extra_spec = {} self.assertTrue(self.filt_cls.host_passes(host, container, extra_spec))
def test_ram_filter_pass(self): self.filt_cls = ram_filter.RamFilter() container = objects.Container(self.context) container.memory = '1024' host = fakes.FakeHostState('testhost') host.mem_total = 1024 * 128 host.mem_used = 1024 extra_spec = {} self.assertTrue(self.filt_cls.host_passes(host, container, extra_spec))
def test_disk_filter_pass_capsule(self): self.filt_cls = disk_filter.DiskFilter() capsule = objects.Capsule(self.context) host = fakes.FakeHostState('testhost') host.disk_total = 80 host.disk_used = 40 host.disk_quota_supported = True extra_spec = {} self.assertTrue(self.filt_cls.host_passes(host, capsule, extra_spec))
def test_cpu_filter_pass(self): self.filt_cls = cpu_filter.CPUFilter() container = objects.Container(self.context) container.cpu = 5.0 host = fakes.FakeHostState('testhost') host.cpus = 8 host.cpu_used = 0.0 extra_spec = {} self.assertTrue(self.filt_cls.host_passes(host, container, extra_spec))
def test_runtime_filter_not_supported(self): self.filt_cls = runtime_filter.RuntimeFilter() container = objects.Container(self.context) container.runtime = 'runc' host = fakes.FakeHostState('testhost') host.runtimes = ['kata-runtime'] extra_spec = {} self.assertFalse(self.filt_cls.host_passes(host, container, extra_spec))
def test_compute_filter_sgapi_passes(self, service_up_mock): filt_cls = compute_filter.ComputeFilter() container = objects.Container(self.context) service = objects.ZunService(self.context) service.disabled = False extra_spec = {} host = fakes.FakeHostState('host2', {'service': service}) service_up_mock.return_value = True self.assertTrue(filt_cls.host_passes(host, container, extra_spec)) service_up_mock.assert_called_once_with(service)
def test_compute_filter_manual_disable(self, service_up_mock): filt_cls = compute_filter.ComputeFilter() container = objects.Container(self.context) extra_spec = {} service = objects.ZunService(self.context) service.disabled = True service.disabled_reason = 'This is a reason!' host = fakes.FakeHostState('host1', {'service': service}) self.assertFalse(filt_cls.host_passes(host, container, extra_spec)) self.assertFalse(service_up_mock.called)
def test_disk_filter_fail_not_supported(self): self.filt_cls = disk_filter.DiskFilter() container = objects.Container(self.context) container.disk = 20 host = fakes.FakeHostState('testhost') host.disk_total = 80 host.disk_used = 40 host.disk_quota_supported = False extra_spec = {} self.assertFalse(self.filt_cls.host_passes(host, container, extra_spec))
def test_compute_filter_sgapi_fails(self, service_up_mock): filts_cls = compute_filter.ComputeFilter() container = objects.Container(self.context) service = objects.ZunService(self.context) service.disabled = False service.updated_at = timeutils.utcnow() extra_spec = {} host = fakes.FakeHostState('host3', {'service': service}) service_up_mock.return_value = False self.assertFalse(filts_cls.host_passes(host, container, extra_spec)) service_up_mock.assert_called_once_with(service)
def _test_az_filter(self, request_az, node_az): filt_cls = az_filter.AvailabilityZoneFilter() container = objects.Container(self.context) service = objects.ZunService(self.context) service.availability_zone = node_az extra_spec = {} if request_az: extra_spec = {'availability_zone': request_az} host = fakes.FakeHostState('fake-host', {'service': service}) return filt_cls.host_passes(host, container, extra_spec)