libvirt: Fix incorrect libvirt library patching in tests
In several places were were incorrectly globally patching modules which load the libvirt library in tests. A number of tests relied on this patching, but did not do it themselves. They happened to work when running all tests due to test ordering, but failed when running a subset of tests. Change-Id: Ic03a50ef702490abad7482213a8f118318422064
This commit is contained in:
parent
a6053dd608
commit
50ad9d4c03
|
@ -12,6 +12,7 @@
|
|||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
import sys
|
||||
import time
|
||||
import uuid
|
||||
|
||||
|
@ -1487,4 +1488,10 @@ class FakeLibvirtFixture(fixtures.Fixture):
|
|||
def setUp(self):
|
||||
super(FakeLibvirtFixture, self).setUp()
|
||||
|
||||
# Some modules load the libvirt library in a strange way
|
||||
for module in ('driver', 'host', 'guest', 'firewall', 'migration'):
|
||||
i = 'nova.virt.libvirt.{module}.libvirt'.format(module=module)
|
||||
# NOTE(mdbooth): The strange incantation below means 'this module'
|
||||
self.useFixture(fixtures.MonkeyPatch(i, sys.modules[__name__]))
|
||||
|
||||
disable_event_thread(self)
|
||||
|
|
|
@ -110,11 +110,6 @@ from nova.virt.libvirt.storage import rbd_utils
|
|||
from nova.virt.libvirt import utils as libvirt_utils
|
||||
from nova.virt.libvirt.volume import volume as volume_drivers
|
||||
|
||||
libvirt_driver.libvirt = fakelibvirt
|
||||
host.libvirt = fakelibvirt
|
||||
libvirt_guest.libvirt = fakelibvirt
|
||||
libvirt_migrate.libvirt = fakelibvirt
|
||||
|
||||
|
||||
CONF = nova.conf.CONF
|
||||
|
||||
|
@ -15002,6 +14997,10 @@ class HostStateTestCase(test.NoDBTestCase):
|
|||
def _get_host_numa_topology(self):
|
||||
return HostStateTestCase.numa_topology
|
||||
|
||||
def setUp(self):
|
||||
super(HostStateTestCase, self).setUp()
|
||||
self.useFixture(fakelibvirt.FakeLibvirtFixture())
|
||||
|
||||
@mock.patch.object(fakelibvirt, "openAuth")
|
||||
def test_update_status(self, mock_open):
|
||||
mock_open.return_value = fakelibvirt.Connection("qemu:///system")
|
||||
|
@ -15041,6 +15040,7 @@ class LibvirtDriverTestCase(test.NoDBTestCase):
|
|||
"""Test for nova.virt.libvirt.libvirt_driver.LibvirtDriver."""
|
||||
def setUp(self):
|
||||
super(LibvirtDriverTestCase, self).setUp()
|
||||
self.useFixture(fakelibvirt.FakeLibvirtFixture())
|
||||
os_vif.initialize()
|
||||
|
||||
self.drvr = libvirt_driver.LibvirtDriver(
|
||||
|
@ -17009,6 +17009,7 @@ class LibvirtVolumeUsageTestCase(test.NoDBTestCase):
|
|||
|
||||
def setUp(self):
|
||||
super(LibvirtVolumeUsageTestCase, self).setUp()
|
||||
self.useFixture(fakelibvirt.FakeLibvirtFixture())
|
||||
self.drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), False)
|
||||
self.c = context.get_admin_context()
|
||||
|
||||
|
@ -17056,6 +17057,7 @@ class LibvirtNonblockingTestCase(test.NoDBTestCase):
|
|||
|
||||
def setUp(self):
|
||||
super(LibvirtNonblockingTestCase, self).setUp()
|
||||
self.useFixture(fakelibvirt.FakeLibvirtFixture())
|
||||
self.flags(connection_uri="test:///default",
|
||||
group='libvirt')
|
||||
|
||||
|
@ -17101,6 +17103,7 @@ class LibvirtVolumeSnapshotTestCase(test.NoDBTestCase):
|
|||
def setUp(self):
|
||||
super(LibvirtVolumeSnapshotTestCase, self).setUp()
|
||||
|
||||
self.useFixture(fakelibvirt.FakeLibvirtFixture())
|
||||
self.drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), False)
|
||||
self.c = context.get_admin_context()
|
||||
|
||||
|
@ -18091,6 +18094,7 @@ class _BaseSnapshotTests(test.NoDBTestCase):
|
|||
self.useFixture(fixtures.MonkeyPatch(
|
||||
'nova.virt.libvirt.imagebackend.libvirt_utils',
|
||||
fake_libvirt_utils))
|
||||
self.useFixture(fakelibvirt.FakeLibvirtFixture())
|
||||
|
||||
self.image_service = nova.tests.unit.image.fake.stub_out_image_service(
|
||||
self)
|
||||
|
|
|
@ -29,9 +29,6 @@ from nova.virt.libvirt import guest as libvirt_guest
|
|||
from nova.virt.libvirt import host
|
||||
|
||||
|
||||
host.libvirt = fakelibvirt
|
||||
libvirt_guest.libvirt = fakelibvirt
|
||||
|
||||
if sys.version_info > (3,):
|
||||
long = int
|
||||
|
||||
|
|
|
@ -32,9 +32,6 @@ from nova.virt.libvirt import driver as libvirt_driver
|
|||
from nova.virt.libvirt import guest as libvirt_guest
|
||||
from nova.virt.libvirt import host
|
||||
|
||||
host.libvirt = fakelibvirt
|
||||
libvirt_guest.libvirt = fakelibvirt
|
||||
|
||||
|
||||
class FakeVirtDomain(object):
|
||||
|
||||
|
|
|
@ -29,10 +29,6 @@ from nova.virt.libvirt import guest as libvirt_guest
|
|||
from nova.virt.libvirt import host
|
||||
from nova.virt.libvirt import migration
|
||||
|
||||
libvirt_guest.libvirt = fakelibvirt
|
||||
host.libvirt = fakelibvirt
|
||||
migration.libvirt = fakelibvirt
|
||||
|
||||
|
||||
class UtilityMigrationTestCase(test.NoDBTestCase):
|
||||
|
||||
|
@ -261,6 +257,8 @@ class MigrationMonitorTestCase(test.NoDBTestCase):
|
|||
def setUp(self):
|
||||
super(MigrationMonitorTestCase, self).setUp()
|
||||
|
||||
self.useFixture(fakelibvirt.FakeLibvirtFixture())
|
||||
|
||||
flavor = objects.Flavor(memory_mb=2048,
|
||||
swap=0,
|
||||
vcpu_weight=None,
|
||||
|
|
|
@ -33,6 +33,7 @@ from nova.pci import utils as pci_utils
|
|||
from nova import test
|
||||
from nova.tests.unit import matchers
|
||||
from nova.tests.unit.virt import fakelibosinfo
|
||||
from nova.tests.unit.virt.libvirt import fakelibvirt
|
||||
from nova import utils
|
||||
from nova.virt.libvirt import config as vconfig
|
||||
from nova.virt.libvirt import host
|
||||
|
@ -435,6 +436,7 @@ class LibvirtVifTestCase(test.NoDBTestCase):
|
|||
|
||||
def setUp(self):
|
||||
super(LibvirtVifTestCase, self).setUp()
|
||||
self.useFixture(fakelibvirt.FakeLibvirtFixture())
|
||||
self.flags(allow_same_net_traffic=True)
|
||||
# os_vif.initialize is typically done in nova-compute startup
|
||||
os_vif.initialize()
|
||||
|
|
|
@ -91,34 +91,19 @@ class _FakeDriverBackendTestCase(object):
|
|||
import nova.tests.unit.virt.libvirt.fake_os_brick_connector as \
|
||||
fake_os_brick_connector
|
||||
|
||||
sys.modules['libvirt'] = fakelibvirt
|
||||
import nova.virt.libvirt.driver
|
||||
import nova.virt.libvirt.firewall
|
||||
import nova.virt.libvirt.host
|
||||
|
||||
self.useFixture(fake_imagebackend.ImageBackendFixture())
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
'nova.virt.libvirt.driver.libvirt',
|
||||
fakelibvirt))
|
||||
self.useFixture(fakelibvirt.FakeLibvirtFixture())
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
'nova.virt.libvirt.driver.libvirt_utils',
|
||||
fake_libvirt_utils))
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
'nova.virt.libvirt.host.libvirt',
|
||||
fakelibvirt))
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
'nova.virt.libvirt.imagebackend.libvirt_utils',
|
||||
fake_libvirt_utils))
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
'nova.virt.libvirt.firewall.libvirt',
|
||||
fakelibvirt))
|
||||
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
'nova.virt.libvirt.driver.connector',
|
||||
fake_os_brick_connector))
|
||||
|
||||
fakelibvirt.disable_event_thread(self)
|
||||
|
||||
self.flags(rescue_image_id="2",
|
||||
rescue_kernel_id="3",
|
||||
rescue_ramdisk_id=None,
|
||||
|
@ -159,6 +144,8 @@ class _FakeDriverBackendTestCase(object):
|
|||
live=live)
|
||||
return fake_wait
|
||||
|
||||
import nova.virt.libvirt.driver
|
||||
|
||||
self.stubs.Set(nova.virt.libvirt.driver.LibvirtDriver,
|
||||
'_get_instance_disk_info',
|
||||
fake_get_instance_disk_info)
|
||||
|
|
Loading…
Reference in New Issue