tests/functional: switch over to using self.build_file(...)

This removes direct access of the 'BUILD_DIR' variable.

Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20241217155953.3950506-13-berrange@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
Daniel P. Berrangé 2024-12-17 15:59:33 +00:00 committed by Thomas Huth
parent bcc12768c2
commit 8b5a0dd3a8
4 changed files with 9 additions and 16 deletions

View file

@ -16,7 +16,6 @@ import os
import os.path
import subprocess
from .config import BUILD_DIR
def which(tool):
""" looks up the full path for @tool, returns None if not found
@ -205,10 +204,10 @@ def get_qemu_img(test):
# If qemu-img has been built, use it, otherwise the system wide one
# will be used.
qemu_img = os.path.join(BUILD_DIR, 'qemu-img')
qemu_img = test.build_file('qemu-img')
if os.path.exists(qemu_img):
return qemu_img
qemu_img = which('qemu-img')
if qemu_img is not None:
return qemu_img
test.skipTest(f"qemu-img not found in {BUILD_DIR} or '$PATH'")
test.skipTest(f"qemu-img not found in build dir or '$PATH'")

View file

@ -133,8 +133,8 @@ class QemuBaseTest(unittest.TestCase):
self.arch = self.qemu_bin.split('-')[-1]
self.socketdir = None
self.outputdir = os.path.join(BUILD_DIR, 'tests', 'functional',
self.arch, self.id())
self.outputdir = self.build_file('tests', 'functional',
self.arch, self.id())
self.workdir = os.path.join(self.outputdir, 'scratch')
os.makedirs(self.workdir, exist_ok=True)

View file

@ -14,7 +14,6 @@ import time
import os
import logging
from qemu_test import BUILD_DIR
from qemu_test import QemuSystemTest, Asset
from qemu_test import exec_command, wait_for_console_pattern
from qemu_test import get_qemu_img, run_cmd
@ -54,8 +53,8 @@ class Aarch64VirtMachine(QemuSystemTest):
"mte=on,"
"gic-version=max,iommu=smmuv3")
self.vm.add_args("-smp", "2", "-m", "1024")
self.vm.add_args('-bios', os.path.join(BUILD_DIR, 'pc-bios',
'edk2-aarch64-code.fd'))
self.vm.add_args('-bios', self.build_file('pc-bios',
'edk2-aarch64-code.fd'))
self.vm.add_args("-drive", f"file={iso_path},media=cdrom,format=raw")
self.vm.add_args('-device', 'virtio-rng-pci,rng=rng0')
self.vm.add_args('-object', 'rng-random,id=rng0,filename=/dev/urandom')

View file

@ -6,7 +6,6 @@
# later. See the COPYING file in the top-level directory.
from qemu_test import BUILD_DIR
from qemu_test import QemuSystemTest, Asset
from qemu_test import wait_for_console_pattern
from qemu_test import exec_command_and_wait_for_pattern
@ -18,12 +17,8 @@ import socket
import subprocess
def pick_default_vug_bin():
relative_path = "./contrib/vhost-user-gpu/vhost-user-gpu"
if is_readable_executable_file(relative_path):
return relative_path
bld_dir_path = os.path.join(BUILD_DIR, relative_path)
def pick_default_vug_bin(test):
bld_dir_path = test.build_file("contrib", "vhost-user-gpu", "vhost-user-gpu")
if is_readable_executable_file(bld_dir_path):
return bld_dir_path
@ -86,7 +81,7 @@ class VirtioGPUx86(QemuSystemTest):
# FIXME: should check presence of vhost-user-gpu, virgl, memfd etc
self.require_accelerator('kvm')
vug = pick_default_vug_bin()
vug = pick_default_vug_bin(self)
if not vug:
self.skipTest("Could not find vhost-user-gpu")