diff options
-rw-r--r-- | src/compiler/Makefile.glsl.am | 3 | ||||
-rwxr-xr-x | src/compiler/glsl/tests/warnings-test | 31 |
2 files changed, 33 insertions, 1 deletions
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 |