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
This commit is contained in:
Artem Vasilyev
2024-12-12 14:59:50 +03:00
parent 8de8fe8c1a
commit b27447d55d
3 changed files with 9 additions and 2 deletions
+2
View File
@@ -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
@@ -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)
+4 -2
View File
@@ -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