glsl/tests: Make the tests skip on Android binary execution failures.
We don't have a suitable exe wrapper for running them, and the missing linker is throwing return code 255 instead of an ENOEXEC. Catch it and return skip from the tests. Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6700>
This commit is contained in:
parent
f51ce21e4e
commit
4722491124
|
@ -76,6 +76,10 @@ def test_output(glcpp, filename, expfile, nl_format='\n'):
|
|||
actual, _ = proc.communicate(f.read())
|
||||
actual = actual.decode('utf-8')
|
||||
|
||||
if proc.returncode == 255:
|
||||
print("Test returned general error, possibly missing linker")
|
||||
sys.exit(77)
|
||||
|
||||
with open(expfile, 'r') as f:
|
||||
expected = f.read()
|
||||
|
||||
|
|
|
@ -92,6 +92,11 @@ def main():
|
|||
out, err = proc.communicate(source.encode('utf-8'))
|
||||
out = out.decode('utf-8')
|
||||
err = err.decode('utf-8')
|
||||
|
||||
if proc.returncode == 255:
|
||||
print("Test returned general error, possibly missing linker")
|
||||
sys.exit(77)
|
||||
|
||||
if err:
|
||||
print('FAIL')
|
||||
print('Unexpected output on stderr: {}'.format(err),
|
||||
|
|
|
@ -74,9 +74,17 @@ def main():
|
|||
with open('{}.expected'.format(file), 'rb') as f:
|
||||
expected = f.read().splitlines()
|
||||
|
||||
actual = subprocess.check_output(
|
||||
runner + ['--just-log', '--version', '150', file]
|
||||
).splitlines()
|
||||
proc= subprocess.run(
|
||||
runner + ['--just-log', '--version', '150', file],
|
||||
stdout=subprocess.PIPE
|
||||
)
|
||||
if proc.returncode == 255:
|
||||
print("Test returned general error, possibly missing linker")
|
||||
sys.exit(77)
|
||||
elif proc.returncode != 0:
|
||||
print("Test returned error: {}, output:\n{}\n".format(proc.returncode, proc.stdout))
|
||||
|
||||
actual = proc.stdout.splitlines()
|
||||
|
||||
if actual == expected:
|
||||
print('PASS')
|
||||
|
|
Loading…
Reference in New Issue