The current version of the Acceptance Tests have been basically tested on x86_64. Most of them should be valid tests on many different architectures.
This introduces another standard test parameter, 'arch', and a public test attribute with the same name. Then, because of the different behavior in different QEMU targets, it adds a more explicit configuration of the QEMUMachine machine type used on the tests (the self.vm attribute). Finally, for tests that are known to be architecture specific, it changes the approach, from using tags to canceling the test. The difference is that this reuses the same 'arch' parameter (so no need to pass tags for the same reason), and instead of completely excluding the test from the job, it just won't be executed on architectures that are not supported. More details about this on the last commit. Changes from v1: ================ * Fixed typo in docstring (s/param/type) (Murilo) * Pretty print the "arch.json" variants file, in order to make editing easier and avoid hitting email line length limits (Eric, Philippe) * Distinguish between host and target arch when canceling tests (Philippe) Cleber Rosa (7): Acceptance Tests: improve docstring on pick_default_qemu_bin() Acceptance Tests: introduce arch parameter and attribute scripts/qemu.py: add method and private attribute for arch scripts/qemu.py: set predefined machine type based on arch Acceptance Tests: set machine type Acceptance Tests: add variants definition for architectures Acceptance Tests: change the handling of tests for specific archs docs/devel/testing.rst | 18 +++++ scripts/qemu.py | 29 ++++++- tests/acceptance/avocado_qemu/__init__.py | 17 ++++- tests/acceptance/boot_linux_console.py | 6 +- tests/acceptance/variants/arch.json | 92 +++++++++++++++++++++++ tests/acceptance/version.py | 2 + tests/acceptance/vnc.py | 5 ++ 7 files changed, 163 insertions(+), 6 deletions(-) create mode 100644 tests/acceptance/variants/arch.json -- 2.17.1