summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJanne Grunau <janne-libav@jannau.net>2016-12-28 00:19:49 +0200
committerDiego Biurrun <diego@biurrun.de>2016-12-28 18:10:32 +0100
commit35d1f726eb9fdd376ab900587fb02122b72f2b9a (patch)
tree64e202f9fa6200be34c7722f63c678af0757238a /tests
parent8a34f3659371680ca523aecfd9098c28f0f809eb (diff)
fate: Add --ignore-tests configure option for omitting specific FATE tests
This can be useful to filter out noise in known-broken scenarios like miscompilation by legacy compilers and similar. Originally based on a patch by Diego Biurrun. Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diffstat (limited to 'tests')
-rw-r--r--tests/Makefile4
-rwxr-xr-xtests/fate-run.sh9
-rwxr-xr-xtests/fate.sh1
3 files changed, 11 insertions, 3 deletions
diff --git a/tests/Makefile b/tests/Makefile
index 0e475a2836..30e06e8fdd 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -143,11 +143,13 @@ endif
FATE_UTILS = base64 tiny_psnr
+$(addprefix fate-, $(IGNORE_TESTS)): REPORT=ignore
+
fate: $(FATE)
$(FATE): $(FATE_UTILS:%=tests/%$(HOSTEXESUF))
@echo "TEST $(@:fate-%=%)"
- $(Q)$(SRC_PATH)/tests/fate-run.sh $@ "$(SAMPLES)" "$(TARGET_EXEC)" "$(TARGET_PATH)" '$(CMD)' '$(CMP)' '$(REF)' '$(FUZZ)' '$(THREADS)' '$(THREAD_TYPE)' '$(CPUFLAGS)' '$(CMP_SHIFT)' '$(CMP_TARGET)' '$(SIZE_TOLERANCE)' '$(CMP_UNIT)' '$(GEN)' '$(HWACCEL)'
+ $(Q)$(SRC_PATH)/tests/fate-run.sh $@ "$(SAMPLES)" "$(TARGET_EXEC)" "$(TARGET_PATH)" '$(CMD)' '$(CMP)' '$(REF)' '$(FUZZ)' '$(THREADS)' '$(THREAD_TYPE)' '$(CPUFLAGS)' '$(CMP_SHIFT)' '$(CMP_TARGET)' '$(SIZE_TOLERANCE)' '$(CMP_UNIT)' '$(GEN)' '$(HWACCEL)' '$(REPORT)'
fate-list:
@printf '%s\n' $(sort $(FATE))
diff --git a/tests/fate-run.sh b/tests/fate-run.sh
index b1b299a055..27cd6261a5 100755
--- a/tests/fate-run.sh
+++ b/tests/fate-run.sh
@@ -24,6 +24,7 @@ size_tolerance=${14:-0}
cmp_unit=${15:-2}
gen=${16:-no}
hwaccel=${17:-none}
+report_type=${18:-standard}
outdir="tests/data/fate"
outfile="${outdir}/${test}"
@@ -212,13 +213,17 @@ if test -e "$ref" || test $cmp = "oneline" ; then
esac
cmperr=$?
test $err = 0 && err=$cmperr
- test $err = 0 || cat $cmpfile
+ if [ "$report_type" = "ignore" ]; then
+ test $err = 0 || echo "IGNORE fate-${test}" && err=0
+ else
+ test $err = 0 || cat $cmpfile
+ fi
else
echo "reference file '$ref' not found"
err=1
fi
-if [ $err -eq 0 ]; then
+if [ $err -eq 0 ] && test $report_type = "standard" ; then
unset cmpo erro
else
cmpo="$($base64 <$cmpfile)"
diff --git a/tests/fate.sh b/tests/fate.sh
index 4608d2ddf7..c93e20a464 100755
--- a/tests/fate.sh
+++ b/tests/fate.sh
@@ -47,6 +47,7 @@ configure()(
--prefix="${inst}" \
--samples="${samples}" \
--enable-gpl \
+ ${ignore_tests:+--ignore-tests="$ignore_tests"} \
${arch:+--arch=$arch} \
${cpu:+--cpu="$cpu"} \
${toolchain:+--toolchain="$toolchain"} \