Change in vdsm[master]: Monkey patch tests which calls to getTargetArch

ybronhei at redhat.com ybronhei at redhat.com
Wed Oct 21 12:27:20 UTC 2015


Yaniv Bronhaim has uploaded a new change for review.

Change subject: Monkey patch tests which calls to getTargetArch
......................................................................

Monkey patch tests which calls to getTargetArch

Following the effort to make vdsm no-arch depended, some tests fails
while running on unsupported platforms. This patch monkeyPatch those
tests to check only x86_64

Change-Id: I1dc65dfb15680ad018f83c2d51a6d1f09844aea2
Signed-off-by: Yaniv Bronhaim <ybronhei at redhat.com>
---
M tests/clientifTests.py
M tests/deviceTests.py
M tests/devices/parsing/complex_vm_tests.py
M tests/numaUtilsTests.py
M tests/vmApiTests.py
M tests/vmMigrationTests.py
M tests/vmOperationsTests.py
M tests/vmTests.py
8 files changed, 95 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/77/47577/1

diff --git a/tests/clientifTests.py b/tests/clientifTests.py
index 30725cd..8c65085 100644
--- a/tests/clientifTests.py
+++ b/tests/clientifTests.py
@@ -23,6 +23,7 @@
 from testlib import temporaryPath
 from monkeypatch import MonkeyPatch
 from virt.vm import VolumeError
+import caps
 import clientIF
 
 import vmfakelib as fake
@@ -204,6 +205,7 @@
         cif = fake.ClientIF()
         self.assertFalse(cif.getVMs())
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def test_with_vms(self):
         cif = fake.ClientIF()
         with fake.VM(params={'vmId': 'testvm1'}, cif=cif) as testvm1:
diff --git a/tests/deviceTests.py b/tests/deviceTests.py
index a248277..f1dcb76 100644
--- a/tests/deviceTests.py
+++ b/tests/deviceTests.py
@@ -26,10 +26,11 @@
 from virt.vmdevices import hwclass
 from virt.domain_descriptor import DomainDescriptor
 
-from monkeypatch import MonkeyPatchScope
+from monkeypatch import MonkeyPatchScope, MonkeyPatch
 from testlib import permutations, expandPermutations
 from testlib import VdsmTestCase as TestCaseBase
 from testlib import XMLTestCase
+import caps
 import vmfakelib as fake
 
 
@@ -121,6 +122,7 @@
         self.confDeviceGraphics = (self.confDeviceGraphicsVnc +
                                    self.confDeviceGraphicsSpice)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGraphicsDeviceLegacy(self):
         for conf in self.confDisplay:
             conf.update(self.conf)
@@ -128,17 +130,20 @@
                 devs = testvm.devSpecMapFromConf()
                 self.assertTrue(devs['graphics'])
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGraphicsDevice(self):
         for dev in self.confDeviceGraphics:
             with fake.VM(self.conf, dev) as testvm:
                 devs = testvm.devSpecMapFromConf()
                 self.assertTrue(devs['graphics'])
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGraphicDeviceHeadless(self):
         with fake.VM(self.conf) as testvm:
             devs = testvm.devSpecMapFromConf()
             self.assertFalse(devs['graphics'])
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGraphicsDeviceMixed(self):
         """
         if proper Graphics Devices are supplied, display* params must be
@@ -174,6 +179,7 @@
         conf.update(self.conf)
         self.assertTrue(vmdevices.graphics.isSupportedDisplayType(conf))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testHasSpiceLegacy(self):
         for conf in self.confDisplaySpice:
             conf.update(self.conf)
@@ -185,6 +191,7 @@
             with fake.VM(conf) as testvm:
                 self.assertFalse(testvm.hasSpice)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testHasSpice(self):
         for dev in self.confDeviceGraphicsSpice:
             with fake.VM(self.conf, dev) as testvm:
@@ -194,6 +201,7 @@
             with fake.VM(self.conf, dev) as testvm:
                 self.assertFalse(testvm.hasSpice)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @permutations([['vnc', 'spice'], ['spice', 'vnc']])
     def testGraphicsDeviceMultiple(self, primary, secondary):
         devices = [{'type': 'graphics', 'device': primary},
@@ -202,6 +210,7 @@
             devs = testvm.devSpecMapFromConf()
             self.assertTrue(len(devs['graphics']) == 2)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @permutations([['vnc'], ['spice']])
     def testGraphicsDeviceDuplicated(self, devType):
         devices = [{'type': 'graphics', 'device': devType},
@@ -402,6 +411,7 @@
         redir = vmdevices.core.Redir(self.conf, self.log, **dev)
         self.assertXMLEqual(redir.getXML().toxml(), redirXML)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGetUnderlyingGraphicsDeviceInfo(self):
         port = '6000'
         tlsPort = '6001'
@@ -435,6 +445,7 @@
             self.assertEqual(graphDev.port, graphConf['port'])
             self.assertEqual(graphDev.tlsPort, graphConf['tlsPort'])
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testLegacyGraphicsXML(self):
         vmConfs = [
             {'display': 'vnc', 'displayPort': '-1', 'displayNetwork':
@@ -456,6 +467,7 @@
         for vmConf, xml in zip(vmConfs, self.GRAPHICS_XMLS):
             self._verifyGraphicsXML(vmConf, xml, isLegacy=True)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGraphicsDeviceXML(self):
         vmConfs = [
             {'devices': [{
@@ -518,6 +530,7 @@
         memory = vmdevices.core.Memory(self.conf, self.log, **params)
         self.assertXMLEqual(memory.getXML().toxml(), memoryXML)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGraphicsNoDisplayNetwork(self):
         with fake.VM() as testvm:
             graphDev = vmdevices.graphics.Graphics(
@@ -525,6 +538,7 @@
 
             self.assertNotIn('displayNetwork', graphDev.specParams)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGraphicsDisplayNetworkFromSpecParams(self):
         with fake.VM() as testvm:
             graphDev = vmdevices.graphics.Graphics(
@@ -534,6 +548,7 @@
             self.assertEqual(graphDev.specParams['displayNetwork'],
                              'vmDisplaySpecParams')
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGraphicsDisplayNetworkFromVmConf(self):
         conf = {'displayNetwork': 'vmDisplayConf'}
         conf.update(self.conf)
@@ -544,6 +559,7 @@
             self.assertEqual(graphDev.specParams['displayNetwork'],
                              'vmDisplayConf')
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGraphicsDisplayNetworkFromSpecParamsOverridesVmConf(self):
         conf = {'displayNetwork': 'vmDisplayConf'}
         conf.update(self.conf)
diff --git a/tests/devices/parsing/complex_vm_tests.py b/tests/devices/parsing/complex_vm_tests.py
index 8eeb404..2ea3989 100644
--- a/tests/devices/parsing/complex_vm_tests.py
+++ b/tests/devices/parsing/complex_vm_tests.py
@@ -1,7 +1,8 @@
 import os
 
+from monkeypatch import MonkeyPatch
 from testlib import XMLTestCase
-
+import caps
 from virt import domain_descriptor
 import vmfakelib as fake
 
@@ -10,6 +11,7 @@
 
 class TestVmDevicesXmlParsing(XMLTestCase, verify.DeviceMixin):
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def test_complex_vm(self):
         params = {
             'nicModel': 'rtl8139,pv', 'name': 'complexVm',
diff --git a/tests/numaUtilsTests.py b/tests/numaUtilsTests.py
index 3b6ae6f..ed8d478 100644
--- a/tests/numaUtilsTests.py
+++ b/tests/numaUtilsTests.py
@@ -60,6 +60,7 @@
         self.assertEqual(vcpuPids, expectedVcpuPids)
 
     @MonkeyPatch(numaUtils, 'supervdsm', fake.SuperVdsm())
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @MonkeyPatch(caps,
                  'getNumaTopology',
                  lambda: {'0': {'cpus': [0, 1, 2, 3],
@@ -95,6 +96,7 @@
     redundant.
     """
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def test_get_mapping_vcpu_to_pcpu(self):
         # stolen from real libvirt
         vcpu_output = (
diff --git a/tests/vmApiTests.py b/tests/vmApiTests.py
index fab799b..f3cf136 100644
--- a/tests/vmApiTests.py
+++ b/tests/vmApiTests.py
@@ -28,6 +28,7 @@
 from rpc import vdsmapi
 
 import API
+import caps
 from clientIF import clientIF
 
 from testValidation import brokentest
@@ -68,6 +69,7 @@
 
 class TestVmStats(TestSchemaCompliancyBase):
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @MonkeyPatch(vm.Vm, 'send_status_event', lambda x: None)
     def testDownStats(self):
         with fake.VM() as testvm:
diff --git a/tests/vmMigrationTests.py b/tests/vmMigrationTests.py
index 9f33296..25144d9 100644
--- a/tests/vmMigrationTests.py
+++ b/tests/vmMigrationTests.py
@@ -23,10 +23,11 @@
 from vdsm.config import config
 from virt import migration
 
-from monkeypatch import MonkeyPatchScope
+from monkeypatch import MonkeyPatchScope, MonkeyPatch
 from testlib import VdsmTestCase as TestCaseBase
 from testlib import permutations, expandPermutations
 from testlib import make_config
+import caps
 import vmfakelib as fake
 
 
@@ -51,16 +52,19 @@
     # No special meaning, But steps just need to be >= 2
     DOWNTIME = 1000
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @permutations([[1], [2], [10]])
     def test_update_downtime_using_n_steps(self, steps):
         downtimes = _update_downtime_repeatedly(self.DOWNTIME, steps)
         self.assertEqual(len(downtimes), steps)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @permutations([[1], [2], [10]])
     def test_update_downtime_monotonic_increasing(self, steps):
         downtimes = _update_downtime_repeatedly(self.DOWNTIME, steps)
         self.assertTrue(sorted(downtimes), downtimes)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @permutations([[1], [2], [10]])
     def test_update_downtime_converges(self, steps):
         downtimes = _update_downtime_repeatedly(self.DOWNTIME, steps)
diff --git a/tests/vmOperationsTests.py b/tests/vmOperationsTests.py
index 79067bc..165656b 100644
--- a/tests/vmOperationsTests.py
+++ b/tests/vmOperationsTests.py
@@ -36,6 +36,7 @@
 from monkeypatch import MonkeyPatch, MonkeyPatchScope
 from testlib import VdsmTestCase as TestCaseBase
 from testlib import permutations, expandPermutations
+import caps
 import vmfakelib as fake
 
 from testValidation import brokentest
@@ -75,6 +76,7 @@
     GRAPHIC_DEVICES = [{'type': 'graphics', 'device': 'spice', 'port': '-1'},
                        {'type': 'graphics', 'device': 'vnc', 'port': '-1'}]
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @MonkeyPatch(libvirtconnection, 'get', lambda x: fake.Connection())
     @permutations([[define.NORMAL], [define.ERROR]])
     def testTimeOffsetNotPresentByDefault(self, exitCode):
@@ -82,6 +84,7 @@
             testvm.setDownStatus(exitCode, vmexitreason.GENERIC_ERROR)
             self.assertFalse('timeOffset' in testvm.getStats())
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @MonkeyPatch(libvirtconnection, 'get', lambda x: fake.Connection())
     @permutations([[define.NORMAL], [define.ERROR]])
     def testTimeOffsetRoundtrip(self, exitCode):
@@ -90,6 +93,7 @@
             self.assertEqual(testvm.getStats()['timeOffset'],
                              self.BASE_OFFSET)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @MonkeyPatch(libvirtconnection, 'get', lambda x: fake.Connection())
     @permutations([[define.NORMAL], [define.ERROR]])
     def testTimeOffsetRoundtriupAcrossInstances(self, exitCode):
@@ -104,6 +108,7 @@
                 # the field in getStats is str, not int
                 lastOffset = int(vmOffset)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @MonkeyPatch(libvirtconnection, 'get', lambda x: fake.Connection())
     @permutations([[define.NORMAL], [define.ERROR]])
     def testTimeOffsetUpdateIfAbsent(self, exitCode):
@@ -116,6 +121,7 @@
             self.assertEqual(testvm.getStats()['timeOffset'],
                              str(self.UPDATE_OFFSETS[-1]))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @MonkeyPatch(libvirtconnection, 'get', lambda x: fake.Connection())
     @permutations([[define.NORMAL], [define.ERROR]])
     def testTimeOffsetUpdateIfPresent(self, exitCode):
@@ -127,6 +133,7 @@
             self.assertEqual(testvm.getStats()['timeOffset'],
                              str(self.BASE_OFFSET + self.UPDATE_OFFSETS[-1]))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testUpdateSingleDeviceGraphics(self):
         devXmls = (
             '<graphics connected="disconnect" passwd="12345678"'
@@ -139,6 +146,7 @@
                 </devices>''' % device['device']
             self._verifyDeviceUpdate(device, device, domXml, devXml)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testUpdateMultipleDeviceGraphics(self):
         devXmls = (
             '<graphics connected="disconnect" passwd="12345678"'
@@ -171,25 +179,30 @@
 
             self.assertEquals(testvm._dom.devXml, devXml)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testDomainNotRunningWithoutDomain(self):
         with fake.VM() as testvm:
             self.assertFalse(testvm._isDomainRunning())
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testDomainNotRunningByState(self):
         with fake.VM() as testvm:
             testvm._dom = fake.Domain(domState=libvirt.VIR_DOMAIN_SHUTDOWN)
             self.assertFalse(testvm._isDomainRunning())
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testDomainIsRunning(self):
         with fake.VM() as testvm:
             testvm._dom = fake.Domain(domState=libvirt.VIR_DOMAIN_RUNNING)
             self.assertTrue(testvm._isDomainRunning())
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testDomainIsReadyForCommands(self):
         with fake.VM() as testvm:
             testvm._dom = fake.Domain()
             self.assertTrue(testvm.isDomainReadyForCommands())
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testDomainDisappearedNotReadyForCommands(self):
         def _fail(*args):
             raise_libvirt_error(libvirt.VIR_ERR_NO_DOMAIN,
@@ -201,10 +214,12 @@
             testvm._dom = dom
             self.assertFalse(testvm.isDomainReadyForCommands())
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testDomainNoneNotReadyForCommands(self):
         with fake.VM() as testvm:
             self.assertFalse(testvm.isDomainReadyForCommands())
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testReadyForCommandsRaisesLibvirtError(self):
         def _fail(*args):
             # anything != NO_DOMAIN is good
@@ -218,11 +233,13 @@
             self.assertRaises(libvirt.libvirtError,
                               testvm.isDomainReadyForCommands)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testReadPauseCodeDomainRunning(self):
         with fake.VM() as testvm:
             testvm._dom = fake.Domain(domState=libvirt.VIR_DOMAIN_RUNNING)
             self.assertEqual(testvm._readPauseCode(), 'NOERR')
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testReadPauseCodeDomainPausedCrash(self):
         # REQUIRED_FOR: el6
         if not hasattr(libvirt, 'VIR_DOMAIN_PAUSED_CRASHED'):
@@ -236,6 +253,7 @@
             testvm._dom = dom
             self.assertNotEqual(testvm._readPauseCode(), 'ENOSPC')
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testReadPauseCodeDomainPausedENOSPC(self):
         with fake.VM() as testvm:
             dom = fake.Domain(domState=libvirt.VIR_DOMAIN_PAUSED,
@@ -245,6 +263,7 @@
             testvm._dom = dom
             self.assertEqual(testvm._readPauseCode(), 'ENOSPC')
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testReadPauseCodeDomainPausedEIO(self):
         with fake.VM() as testvm:
             dom = fake.Domain(domState=libvirt.VIR_DOMAIN_PAUSED,
@@ -254,6 +273,7 @@
             testvm._dom = dom
             self.assertEqual(testvm._readPauseCode(), 'EOTHER')
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @permutations([[1000, 24], [900, 0], [1200, -128]])
     def testSetCpuTuneQuote(self, quota, offset):
         with fake.VM() as testvm:
@@ -265,6 +285,7 @@
             self.assertEqual(quota + offset,
                              testvm._vcpuTuneInfo['vcpu_quota'])
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @permutations([[100000, 128], [150000, 0], [9999, -99]])
     def testSetCpuTunePeriod(self, period, offset):
         with fake.VM() as testvm:
@@ -274,6 +295,7 @@
             self.assertEqual(period + offset,
                              testvm._vcpuTuneInfo['vcpu_period'])
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @brokentest("sometimes on CI tries to connect to libvirt")
     @permutations([[libvirt.VIR_ERR_OPERATION_DENIED, 'setNumberOfCpusErr',
                     'Failed to set the number of cpus'],
@@ -294,6 +316,7 @@
 
                 self.assertEqual(res, response.error(vdsm_error))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testUpdateDeviceGraphicsFailed(self):
         with fake.VM(devices=self.GRAPHIC_DEVICES) as testvm:
             message = 'fake timeout while setting ticket'
@@ -315,21 +338,25 @@
             self.assertEqual(res,
                              response.error('ticketErr', message))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testAcpiShutdownDisconnected(self):
         with fake.VM() as testvm:
             testvm._dom = virdomain.Disconnected(vmid='testvm')
             self.assertTrue(response.is_error(testvm.acpiShutdown()))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testAcpiShutdownConnected(self):
         with fake.VM() as testvm:
             testvm._dom = fake.Domain(vmId='testvm')
             self.assertFalse(response.is_error(testvm.acpiShutdown()))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testAcpiRebootDisconnected(self):
         with fake.VM() as testvm:
             testvm._dom = virdomain.Disconnected(vmid='testvm')
             self.assertTrue(response.is_error(testvm.acpiReboot()))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testAcpiRebootConnected(self):
         with fake.VM() as testvm:
             testvm._dom = fake.Domain(vmId='testvm')
diff --git a/tests/vmTests.py b/tests/vmTests.py
index fd381bc..0c7abb1 100644
--- a/tests/vmTests.py
+++ b/tests/vmTests.py
@@ -501,17 +501,20 @@
     def testBuildCmdLinePPC64(self):
         self.assertBuildCmdLine(CONF_TO_DOMXML_PPC64)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGetVmPolicySucceded(self):
         with fake.VM() as testvm:
             testvm._dom = fake.Domain()
             self.assertXMLEqual(testvm._getVmPolicy().toxml(), '<qos/>')
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGetVmPolicyEmptyOnNoMetadata(self):
         with fake.VM() as testvm:
             testvm._dom = fake.Domain(
                 virtError=libvirt.VIR_ERR_NO_DOMAIN_METADATA)
             self.assertXMLEqual(testvm._getVmPolicy().toxml(), '<qos/>')
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGetVmPolicyFailOnNoDomain(self):
         with fake.VM() as testvm:
             testvm._dom = fake.Domain(virtError=libvirt.VIR_ERR_NO_DOMAIN)
@@ -520,6 +523,7 @@
     def _xml_sanitizer(self, text):
         return re.sub(">[\t\n ]+<", "><", text).strip()
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testUpdateVmPolicy(self):
         with fake.VM() as machine:
             dom = fake.Domain()
@@ -604,6 +608,7 @@
 
             self.assertEqual(expected_xml, self._xml_sanitizer(dom._metadata))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testCpuTune(self):
         LIMIT = 50
         with fake.VM(_VM_PARAMS) as machine:
@@ -615,6 +620,7 @@
             stats = machine.getStats()
             self.assertEqual(stats['vcpuUserLimit'], LIMIT)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testIoTuneParser(self):
         with fake.VM() as machine:
             dom = fake.Domain()
@@ -640,6 +646,7 @@
 
             self.assertEqual(ioTuneValues, parsed)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testIoTuneMerge(self):
         with fake.VM() as machine:
             dom = fake.Domain()
@@ -692,6 +699,7 @@
 
             self.assertEqual(ioTuneMerged, ioTuneExpectedValues)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testUpdateExistingVmPolicy(self):
         with fake.VM() as machine:
             dom = fake.Domain()
@@ -800,6 +808,7 @@
 
             self.assertEqual(expected_xml, self._xml_sanitizer(dom._metadata))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGetIoTune(self):
         with fake.VM() as machine:
             dom = fake.Domain()
@@ -835,6 +844,7 @@
             ]
             self.assertEqual(tunables, expected)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testSetIoTune(self):
 
         drives = [
@@ -905,6 +915,7 @@
             self.assertEqual(self._xml_sanitizer(drives[0]._deviceXML),
                              self._xml_sanitizer(expected_xml))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testSdIds(self):
         """
         Tests that VM storage domains in use list is in sync with the vm
@@ -956,12 +967,14 @@
 
             self.assertEqual(machine.sdIds, set([domainID]))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testVmGuestSocketFile(self):
         with fake.VM(self.conf) as testvm:
             self.assertEqual(
                 testvm._guestSocketFile,
                 testvm._makeChannelPath(vm._VMCHANNEL_DEVICE_NAME))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def test_spice_restore_set_passwd(self):
         # stolen from VDSM logs
         conf = {
@@ -992,6 +1005,7 @@
 
 @expandPermutations
 class TestVmExit(TestCaseBase):
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @permutations(VM_EXITS)
     def testExitReason(self, exitCode, exitReason):
         """
@@ -1006,6 +1020,7 @@
             self.assertEqual(stats['exitMessage'],
                              vmexitreason.exitReasons.get(exitReason))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @permutations(VM_EXITS)
     def testExitReasonExplicitMessage(self, exitCode, exitReason):
         """
@@ -1030,6 +1045,7 @@
 
     DEV_BALLOON = [{'type': 'balloon', 'specParams': {'model': 'virtio'}}]
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGetNicStats(self):
         GBPS = 10 ** 9 / 8
         MAC = '52:54:00:59:F5:3F'
@@ -1071,6 +1087,7 @@
             'rx': '0', 'tx': '625000000',
         })
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testMultipleGraphicDeviceStats(self):
         devices = [{'type': 'graphics', 'device': 'spice', 'port': '-1'},
                    {'type': 'graphics', 'device': 'vnc', 'port': '-1'}]
@@ -1086,6 +1103,7 @@
                 self.assertIn(statsDev['type'], confDev['device'])
                 self.assertIn('port', statsDev)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testDiskMappingHashInStatsHash(self):
         with fake.VM(_VM_PARAMS) as testvm:
             res = testvm.getStats()
@@ -1093,6 +1111,7 @@
             self.assertNotEquals(res['hash'],
                                  testvm.getStats()['hash'])
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @MonkeyPatch(vm, 'config',
                  make_config([('vars', 'vm_command_timeout', '10')]))
     def testMonitorTimeoutResponsive(self):
@@ -1102,6 +1121,7 @@
             testvm._setUnresponsiveIfTimeout(stats, 1)  # any value < timeout
             self.assertEqual(stats['monitorResponse'], '0')
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @MonkeyPatch(vm, 'config',
                  make_config([('vars', 'vm_command_timeout', '1')]))
     def testMonitorTimeoutUnresponsive(self):
@@ -1112,6 +1132,7 @@
             testvm._setUnresponsiveIfTimeout(stats, 10)  # any value > timeout
             self.assertEqual(stats['monitorResponse'], '-1')
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @MonkeyPatch(vm, 'config',
                  make_config([('vars', 'vm_command_timeout', '10')]))
     def testMonitorTimeoutOnAlreadyUnresponsive(self):
@@ -1126,6 +1147,7 @@
 class TestLibVirtCallbacks(TestCaseBase):
     FAKE_ERROR = 'EFAKERROR'
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def test_onIOErrorPause(self):
         with fake.VM(_VM_PARAMS, runCpu=True) as testvm:
             self.assertTrue(testvm._guestCpuRunning)
@@ -1134,6 +1156,7 @@
             self.assertFalse(testvm._guestCpuRunning)
             self.assertEqual(testvm.conf.get('pauseCode'), self.FAKE_ERROR)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def test_onIOErrorReport(self):
         with fake.VM(_VM_PARAMS, runCpu=True) as testvm:
             self.assertTrue(testvm._guestCpuRunning)
@@ -1142,6 +1165,7 @@
             self.assertTrue(testvm._guestCpuRunning)
             self.assertNotEquals(testvm.conf.get('pauseCode'), self.FAKE_ERROR)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def test_onIOErrorNotSupported(self):
         """action not explicitely handled, must be skipped"""
         with fake.VM(_VM_PARAMS, runCpu=True) as testvm:
@@ -1189,18 +1213,21 @@
                                 lambda: self._getAllDomains('novdsm'))]):
             self.assertFalse(vm.getVDSMDomains())
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGetPidNoFile(self):
         with MonkeyPatchScope([(vm, 'supervdsm',
                                 fake.SuperVdsm(exception=IOError))]):
             with fake.VM() as testvm:
                 self.assertRaises(IOError, testvm._getPid)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGetPidBadFile(self):
         with MonkeyPatchScope([(vm, 'supervdsm',
                                 fake.SuperVdsm(exception=ValueError))]):
             with fake.VM() as testvm:
                 self.assertRaises(ValueError, testvm._getPid)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @permutations([[-1], [0]])
     def testGetPidBadFileContent(self, pid):
         with MonkeyPatchScope([(vm, 'supervdsm',
@@ -1208,6 +1235,7 @@
             with fake.VM() as testvm:
                 self.assertRaises(ValueError, testvm._getPid)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testGetPidSuccess(self):
         pid = 42
         with MonkeyPatchScope([(vm, 'supervdsm',
@@ -1256,6 +1284,7 @@
             self.assertEqual(res['status']['code'],
                              define.errCode[specificErr]['status']['code'])
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testSucceed(self):
         with fake.VM() as testvm:
             testvm._dom = fake.Domain()
@@ -1265,14 +1294,17 @@
             self.assertEqual(testvm._dom.__recording__,
                              [('setMemory', (target,), {})])
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testVmWithoutDom(self):
         with fake.VM() as testvm:
             self.assertAPIFailed(testvm.setBalloonTarget(128))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testTargetValueNotInteger(self):
         with fake.VM() as testvm:
             self.assertAPIFailed(testvm.setBalloonTarget('foobar'))
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testLibvirtFailure(self):
         with fake.VM() as testvm:
             testvm._dom = fake.Domain(virtError=libvirt.VIR_ERR_INTERNAL_ERROR)
@@ -1282,19 +1314,23 @@
 
 @expandPermutations
 class TestVmSanity(TestCaseBase):
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testSmpPresentIfNotSpecified(self):
         with fake.VM() as testvm:
             self.assertEqual(int(testvm.conf['smp']), 1)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     @permutations([[1], [2], [4]])
     def testSmpByParameters(self, cpus):
         with fake.VM({'smp': cpus}) as testvm:
             self.assertEqual(int(testvm.conf['smp']), cpus)
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testVmNameDefault(self):
         with fake.VM(_VM_PARAMS) as testvm:
             self.assertIn('vmName', testvm.getStats())
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def testVmNameExplicit(self):
         NAME = 'not the default VM name'
         params = {'vmName': NAME}
@@ -1305,6 +1341,7 @@
 
 class ChangeBlockDevTests(TestCaseBase):
 
+    @MonkeyPatch(caps, 'getTargetArch', lambda: caps.Architecture.X86_64)
     def test_change_cd_failure(self):
         cif = fake.ClientIF()
         with MonkeyPatchScope([(cif, 'prepareVolumePath',


-- 
To view, visit https://gerrit.ovirt.org/47577
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1dc65dfb15680ad018f83c2d51a6d1f09844aea2
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Yaniv Bronhaim <ybronhei at redhat.com>


More information about the vdsm-patches mailing list