From: Alejandro PiƱeiro Date: Tue, 19 Apr 2016 19:03:07 +0000 (+0200) Subject: glsl: add warning-test X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=eee00274fa330edfa536da039ba9116bdceb9990;p=mesa.git glsl: add warning-test It executes compiler-glsl on all the available shaders, and it checks that the outcome is the expected. Bash code based on the already existing optimization-test v2: rebasing: use --version option Reviewed-by: Ian Romanick --- diff --git a/src/compiler/Makefile.glsl.am b/src/compiler/Makefile.glsl.am index 23c2a6b24c2..4e90f16b4e9 100644 --- a/src/compiler/Makefile.glsl.am +++ b/src/compiler/Makefile.glsl.am @@ -35,7 +35,8 @@ TESTS += glsl/glcpp/tests/glcpp-test \ glsl/tests/general-ir-test \ glsl/tests/optimization-test \ glsl/tests/sampler-types-test \ - glsl/tests/uniform-initializer-test + glsl/tests/uniform-initializer-test \ + glsl/tests/warnings-test TESTS_ENVIRONMENT= \ export PYTHON2=$(PYTHON2); \ diff --git a/src/compiler/glsl/tests/warnings-test b/src/compiler/glsl/tests/warnings-test new file mode 100755 index 00000000000..1bea4665394 --- /dev/null +++ b/src/compiler/glsl/tests/warnings-test @@ -0,0 +1,31 @@ +#!/usr/bin/env bash + +# Execute several shaders, and check that the InfoLog outcome is the expected. + +compiler=./glsl_compiler +total=0 +pass=0 + +echo "====== Testing compilation output ======" +for test in `find . -iname '*.vert'`; do + echo -n "Testing $test..." + $compiler --just-log --version 150 "$test" > "$test.out" 2>&1 + total=$((total+1)) + if diff "$test.expected" "$test.out" >/dev/null 2>&1; then + echo "PASS" + pass=$((pass+1)) + else + echo "FAIL" + diff "$test.expected" "$test.out" + fi +done + +echo "" +echo "$pass/$total tests returned correct results" +echo "" + +if [[ $pass == $total ]]; then + exit 0 +else + exit 1 +fi