[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 13/23] tests/acceptance: Automatic set -cpu to the test vm
From: |
Cleber Rosa |
Subject: |
[PULL 13/23] tests/acceptance: Automatic set -cpu to the test vm |
Date: |
Tue, 13 Jul 2021 17:19:13 -0400 |
From: Wainer dos Santos Moschetta <wainersm@redhat.com>
This introduces a new feature to the functional tests: automatic setting of
the '-cpu VALUE' option to the created vm if the test is tagged with
'cpu:VALUE'. The 'cpu' property is made available to the test object as well.
For example, for a simple test as:
def test(self):
"""
:avocado: tags=cpu:host
"""
self.assertEqual(self.cpu, "host")
self.vm.launch()
The resulting QEMU evocation will be like:
qemu-system-x86_64 -display none -vga none \
-chardev
socket,id=mon,path=/var/tmp/avo_qemu_sock_pdgzbgd_/qemu-1135557-monitor.sock \
-mon chardev=mon,mode=control -cpu host
Reviewed-by: Cleber Rosa <crosa@redhat.com>
Tested-by: Cleber Rosa <crosa@redhat.com>
Reviewed-by: Willian Rampazzo <willianr@redhat.com>
Signed-off-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
Message-Id: <20210430133414.39905-2-wainersm@redhat.com>
Signed-off-by: Cleber Rosa <crosa@redhat.com>
---
docs/devel/testing.rst | 17 +++++++++++++++++
tests/acceptance/avocado_qemu/__init__.py | 5 +++++
2 files changed, 22 insertions(+)
diff --git a/docs/devel/testing.rst b/docs/devel/testing.rst
index 19cbf532ae..8f572255d3 100644
--- a/docs/devel/testing.rst
+++ b/docs/devel/testing.rst
@@ -904,6 +904,17 @@ name. If one is not given explicitly, it will either be
set to
``None``, or, if the test is tagged with one (and only one)
``:avocado: tags=arch:VALUE`` tag, it will be set to ``VALUE``.
+cpu
+~~~
+
+The cpu model that will be set to all QEMUMachine instances created
+by the test.
+
+The ``cpu`` attribute will be set to the test parameter of the same
+name. If one is not given explicitly, it will either be set to
+``None ``, or, if the test is tagged with one (and only one)
+``:avocado: tags=cpu:VALUE`` tag, it will be set to ``VALUE``.
+
machine
~~~~~~~
@@ -983,6 +994,12 @@ architecture of a kernel or disk image to boot a VM with.
This parameter has a direct relation with the ``arch`` attribute. If
not given, it will default to None.
+cpu
+~~~
+
+The cpu model that will be set to all QEMUMachine instances created
+by the test.
+
machine
~~~~~~~
diff --git a/tests/acceptance/avocado_qemu/__init__.py
b/tests/acceptance/avocado_qemu/__init__.py
index 1de1edce0d..3a218057b3 100644
--- a/tests/acceptance/avocado_qemu/__init__.py
+++ b/tests/acceptance/avocado_qemu/__init__.py
@@ -213,6 +213,9 @@ def setUp(self):
self.arch = self.params.get('arch',
default=self._get_unique_tag_val('arch'))
+ self.cpu = self.params.get('cpu',
+ default=self._get_unique_tag_val('cpu'))
+
self.machine = self.params.get('machine',
default=self._get_unique_tag_val('machine'))
@@ -242,6 +245,8 @@ def get_vm(self, *args, name=None):
name = str(uuid.uuid4())
if self._vms.get(name) is None:
self._vms[name] = self._new_vm(name, *args)
+ if self.cpu is not None:
+ self._vms[name].add_args('-cpu', self.cpu)
if self.machine is not None:
self._vms[name].set_machine(self.machine)
return self._vms[name]
--
2.31.1
- [PULL 04/23] Acceptance Tests: rename attribute holding the distro image checksum, (continued)
- [PULL 04/23] Acceptance Tests: rename attribute holding the distro image checksum, Cleber Rosa, 2021/07/13
- [PULL 03/23] Acceptance Tests: distinguish between temp and logs dir, Cleber Rosa, 2021/07/13
- [PULL 05/23] Acceptance Tests: move definition of distro checksums to the framework, Cleber Rosa, 2021/07/13
- [PULL 06/23] Acceptance Tests: support choosing specific distro and version, Cleber Rosa, 2021/07/13
- [PULL 07/23] tests/acceptance: Ignore binary data sent on serial console, Cleber Rosa, 2021/07/13
- [PULL 09/23] Acceptance Tests: Add default kernel params and pxeboot url to the KNOWN_DISTROS collection, Cleber Rosa, 2021/07/13
- [PULL 08/23] avocado_qemu: Fix KNOWN_DISTROS map into the LinuxDistro class, Cleber Rosa, 2021/07/13
- [PULL 10/23] avocado_qemu: Add SMMUv3 tests, Cleber Rosa, 2021/07/13
- [PULL 11/23] avocado_qemu: Add Intel iommu tests, Cleber Rosa, 2021/07/13
- [PULL 12/23] tests/acceptance: Tag NetBSD tests as 'os:netbsd', Cleber Rosa, 2021/07/13
- [PULL 13/23] tests/acceptance: Automatic set -cpu to the test vm,
Cleber Rosa <=
- [PULL 14/23] tests/acceptance: Fix mismatch on cpu tagged tests, Cleber Rosa, 2021/07/13
- [PULL 16/23] tests/acceptance: Tagging tests with "cpu:VALUE", Cleber Rosa, 2021/07/13
- [PULL 15/23] tests/acceptance: Let the framework handle "cpu:VALUE" tagged tests, Cleber Rosa, 2021/07/13
- [PULL 17/23] python/qemu: Add args property to the QEMUMachine class, Cleber Rosa, 2021/07/13
- [PULL 19/23] tests/acceptance: Handle cpu tag on x86_cpu_model_versions tests, Cleber Rosa, 2021/07/13
- [PULL 18/23] tests/acceptance: Add set_vm_arg() to the Test class, Cleber Rosa, 2021/07/13
- [PULL 20/23] python: Configure tox to skip missing interpreters, Cleber Rosa, 2021/07/13
- [PULL 21/23] Acceptance tests: do not try to reuse packages from the system, Cleber Rosa, 2021/07/13
- [PULL 23/23] tests/acceptance/cpu_queries.py: use the proper logging channels, Cleber Rosa, 2021/07/13
- [PULL 22/23] tests/acceptance/linux_ssh_mips_malta.py: drop identical setUp, Cleber Rosa, 2021/07/13