[9.18] fix: test: Resolve the system_test_dir in pytest

If the system_test_dir contains a symlink, then it might cause issues
further down when using relative_to(), unless it is resolved first. This
has been observed on FreeBSD13 in CI where /home is a symlink to
/usr/home.

Backport of MR !11490

Merge branch 'backport-nicki/pytest-freebsd13-artifacts-path-9.18' into 'bind-9.18'

See merge request isc-projects/bind9!11495
This commit is contained in:
Nicki Křížek 2026-01-27 13:18:23 +01:00
commit 635a3d6824

View file

@ -445,7 +445,9 @@ def system_test_dir(request, env, system_test_name, expected_artifacts):
), f"Unexpected files found in test directory: {unexpected_files}"
# Create a temporary directory with a copy of the original system test dir contents
system_test_root = Path(f"{env['TOP_BUILDDIR']}/{SYSTEM_TEST_DIR_GIT_PATH}")
system_test_root = Path(
f"{env['TOP_BUILDDIR']}/{SYSTEM_TEST_DIR_GIT_PATH}"
).resolve()
testdir = Path(
tempfile.mkdtemp(prefix=f"{system_test_name}_tmp_", dir=system_test_root)
)