test: ignore the real XDG_CONFIG_HOME during tests

Let's not have our tests fail if the user has an incompatible
$XDG_CONFIG_HOME/xkb directory.

libxkbcommon has fallbacks when XDG_CONFIG_HOME isn't set so we need to override
this with a real directory instead of just unsetting it.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
master
Peter Hutterer 2020-07-27 11:26:51 +10:00
parent fcc6b28f5f
commit 03ecaa6b53
1 changed files with 8 additions and 1 deletions

View File

@ -27,6 +27,7 @@ import resource
import sys
import subprocess
import logging
import tempfile
try:
import pytest
@ -300,4 +301,10 @@ def test_interactive_wayland(xkbcli_interactive_wayland):
if __name__ == '__main__':
sys.exit(pytest.main(args=[__file__]))
with tempfile.TemporaryDirectory() as tmpdir:
# libxkbcommon has fallbacks when XDG_CONFIG_HOME isn't set so we need
# to override it with a known (empty) directory. Otherwise our test
# behavior depends on the system the test is run on.
os.environ['XDG_CONFIG_HOME'] = tmpdir
sys.exit(pytest.main(args=[__file__]))