test_entrypoints.py
1.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
import os
import pathlib
import subprocess
import sys
import sysconfig
import pytest
fspath = getattr(os, 'fspath', str)
scripts_path = pathlib.Path(sysconfig.get_path('scripts'))
# TODO: CAMPid 0970432108721340872130742130870874321
import importlib
import pkg_resources
major = int(pkg_resources.get_distribution(__name__.partition('.')[0]).version.partition(".")[0])
def import_it(*segments):
m = {
"pyqt_tools": "pyqt{major}_tools".format(major=major),
"pyqt_plugins": "pyqt{major}_plugins".format(major=major),
"qt_tools": "qt{major}_tools".format(major=major),
"qt_applications": "qt{major}_applications".format(major=major),
}
majored = [m[segments[0]], *segments[1:]]
return importlib.import_module(".".join(majored))
qt_tools = import_it("qt_tools")
def test_designer():
environment = qt_tools.create_environment()
with pytest.raises(subprocess.TimeoutExpired):
subprocess.run(
[
fspath(scripts_path.joinpath('qt{}-tools'.format(major))),
'designer',
],
check=True,
env={**environment, 'QT_DEBUG_PLUGINS': '1'},
timeout=10,
)
def test_qmlscene():
environment = qt_tools.create_environment()
with pytest.raises(subprocess.TimeoutExpired):
subprocess.run(
[
fspath(scripts_path.joinpath('qt{}-tools'.format(major))),
'qmlscene',
],
check=True,
env={**environment, 'QT_DEBUG_PLUGINS': '1'},
timeout=10,
)
# TODO: hangs on GHA
# def test_language():
# completed_process = subprocess.run(
# [
# fspath(scripts_path.joinpath('qt5-tools')),
# 'qtdiag',
# ],
# check=True,
# env={**os.environ, 'LANGUAGE': 'de_DE'},
# stdout=subprocess.PIPE,
# timeout=30,
# )
#
# assert b'de_DE' in completed_process.stdout