From b27447d55dbe6660eae7283ff7c32259d31967c7 Mon Sep 17 00:00:00 2001 From: Artem Vasilyev Date: Thu, 12 Dec 2024 14:59:50 +0300 Subject: [PATCH] Fix unit tests on macOS * Libvirt tests: Mocked the platform check to prevent failures during class initialization on macOS. * test_get_available_resource: Mocked filesystem access to handle the absence of /proc/meminfo on macOS. Change-Id: I04e1197d9f77c1acd6a7f63120446615c3fd133e --- nova/tests/fixtures/libvirt.py | 2 ++ nova/tests/unit/virt/libvirt/test_driver.py | 3 +++ nova/tests/unit/virt/test_virt_drivers.py | 6 ++++-- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/nova/tests/fixtures/libvirt.py b/nova/tests/fixtures/libvirt.py index 24f529eb42..648f1b01be 100644 --- a/nova/tests/fixtures/libvirt.py +++ b/nova/tests/fixtures/libvirt.py @@ -2477,6 +2477,8 @@ class LibvirtFixture(fixtures.Fixture): 'Linux', '', '5.4.0-0-generic', '', obj_fields.Architecture.X86_64) self.mock_uname = self.useFixture( fixtures.MockPatch('os.uname', return_value=fake_uname)).mock + self.useFixture(fixtures.MonkeyPatch( + 'nova.virt.libvirt.driver.sys.platform', 'linux')) real_exists = os.path.exists diff --git a/nova/tests/unit/virt/libvirt/test_driver.py b/nova/tests/unit/virt/libvirt/test_driver.py index ce094987fc..83ca1653d4 100644 --- a/nova/tests/unit/virt/libvirt/test_driver.py +++ b/nova/tests/unit/virt/libvirt/test_driver.py @@ -22388,6 +22388,9 @@ class TestGuestConfigSysinfoSerialOS(test.NoDBTestCase): # Don't initialise the Host self.useFixture(fixtures.MockPatch('nova.virt.libvirt.driver.host')) + self.useFixture(fixtures.MonkeyPatch( + 'nova.virt.libvirt.driver.sys.platform', 'linux')) + def _test_get_guest_config_sysinfo_serial(self, expected_serial): drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), True) diff --git a/nova/tests/unit/virt/test_virt_drivers.py b/nova/tests/unit/virt/test_virt_drivers.py index b724130a2c..2c060e0638 100644 --- a/nova/tests/unit/virt/test_virt_drivers.py +++ b/nova/tests/unit/virt/test_virt_drivers.py @@ -607,8 +607,10 @@ class _VirtDriverTestCase(_FakeDriverBackendTestCase): @catch_notimplementederror def test_get_available_resource(self): - available_resource = self.connection.get_available_resource( - 'myhostname') + with mock.patch('nova.virt.libvirt.host.Host._get_avail_memory_kb', + mock.Mock(return_value=1024)): + available_resource = self.connection.get_available_resource( + 'myhostname') self._check_available_resource_fields(available_resource) @catch_notimplementederror