[FFmpeg-devel] [PATCH 4/4] fate/ffprobe: Fix test requirements

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Sun Mar 31 00:54:48 EET 2024


The ffprobe-test file is generated via ffmpeg and several filters;
the requirements for them were missing.
Also deduplicate this while just at it.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
 tests/Makefile         |  1 +
 tests/fate/ffprobe.mak | 40 +++++++++-------------------------------
 2 files changed, 10 insertions(+), 31 deletions(-)

diff --git a/tests/Makefile b/tests/Makefile
index ed6b1801a8..9b70145015 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -253,6 +253,7 @@ include $(SRC_PATH)/tests/fate/xvid.mak
 
 FATE_FFMPEG += $(FATE_FFMPEG-yes) $(FATE_AVCONV) $(FATE_AVCONV-yes)
 FATE-$(CONFIG_FFMPEG) += $(FATE_FFMPEG)
+FATE_FFPROBE += $(FATE_FFPROBE-yes)
 FATE-$(CONFIG_FFPROBE) += $(FATE_FFPROBE)
 FATE-$(call ALLYES, FFMPEG FFPROBE) += $(FATE_FFMPEG_FFPROBE)
 
diff --git a/tests/fate/ffprobe.mak b/tests/fate/ffprobe.mak
index f30cc2d4ba..23c6d3550d 100644
--- a/tests/fate/ffprobe.mak
+++ b/tests/fate/ffprobe.mak
@@ -10,41 +10,19 @@ tests/data/ffprobe-test.nut: ffmpeg$(PROGSSUF)$(EXESUF) tests/test_copy.ffmeta |
 FFPROBE_TEST_FILE=tests/data/ffprobe-test.nut
 FFPROBE_COMMAND=ffprobe$(PROGSSUF)$(EXESUF) -show_streams -show_packets -show_format -show_frames -bitexact $(TARGET_PATH)/$(FFPROBE_TEST_FILE) -print_filename $(FFPROBE_TEST_FILE)
 
-FATE_FFPROBE-$(call ALLYES, AVDEVICE ARESAMPLE_FILTER) += fate-ffprobe_compact
-fate-ffprobe_compact: $(FFPROBE_TEST_FILE)
-fate-ffprobe_compact: CMD = run $(FFPROBE_COMMAND) -of compact
+FFPROBE_OUTPUT_MODES_TESTS = $(addprefix fate-ffprobe_, compact csv default flat ini json xml)
+$(FFPROBE_OUTPUT_MODES_TESTS): $(FFPROBE_TEST_FILE)
+$(FFPROBE_OUTPUT_MODES_TESTS): CMD = run $(FFPROBE_COMMAND) -of $(@:fate-ffprobe_%=%)
+FFPROBE_TEST_FILE_TESTS-yes += $(FFPROBE_OUTPUT_MODES_TESTS)
 
-FATE_FFPROBE-$(call ALLYES, AVDEVICE ARESAMPLE_FILTER) += fate-ffprobe_csv
-fate-ffprobe_csv: $(FFPROBE_TEST_FILE)
-fate-ffprobe_csv: CMD = run $(FFPROBE_COMMAND) -of csv
-
-FATE_FFPROBE-$(call ALLYES, AVDEVICE ARESAMPLE_FILTER) += fate-ffprobe_default
-fate-ffprobe_default: $(FFPROBE_TEST_FILE)
-fate-ffprobe_default: CMD = run $(FFPROBE_COMMAND) -of default
-
-FATE_FFPROBE-$(call ALLYES, AVDEVICE ARESAMPLE_FILTER) += fate-ffprobe_flat
-fate-ffprobe_flat: $(FFPROBE_TEST_FILE)
-fate-ffprobe_flat: CMD = run $(FFPROBE_COMMAND) -of flat
-
-FATE_FFPROBE-$(call ALLYES, AVDEVICE ARESAMPLE_FILTER) += fate-ffprobe_ini
-fate-ffprobe_ini: $(FFPROBE_TEST_FILE)
-fate-ffprobe_ini: CMD = run $(FFPROBE_COMMAND) -of ini
-
-FATE_FFPROBE-$(call ALLYES, AVDEVICE ARESAMPLE_FILTER) += fate-ffprobe_json
-fate-ffprobe_json: $(FFPROBE_TEST_FILE)
-fate-ffprobe_json: CMD = run $(FFPROBE_COMMAND) -of json
-
-FATE_FFPROBE-$(call ALLYES, AVDEVICE ARESAMPLE_FILTER) += fate-ffprobe_xml
-fate-ffprobe_xml: $(FFPROBE_TEST_FILE)
-fate-ffprobe_xml: CMD = run $(FFPROBE_COMMAND) -of xml
-
-FATE_FFPROBE_SCHEMA-$(call ALLYES, AVDEVICE ARESAMPLE_FILTER) += fate-ffprobe_xsd
+FFPROBE_TEST_FILE_TESTS-$(HAVE_XMLLINT) += fate-ffprobe_xsd
 fate-ffprobe_xsd: $(FFPROBE_TEST_FILE)
 fate-ffprobe_xsd: CMD = run $(FFPROBE_COMMAND) -noprivate -of xml=q=1:x=1 | \
 	xmllint --schema $(SRC_PATH)/doc/ffprobe.xsd -
 
-FATE_FFPROBE-$(HAVE_XMLLINT) += $(FATE_FFPROBE_SCHEMA-yes)
-FATE_FFPROBE += $(FATE_FFPROBE-yes)
+FATE_FFPROBE-$(call FILTERDEMDECENCMUX, AEVALSRC TESTSRC ARESAMPLE, FFMETADATA, WRAPPED_AVFRAME, RAWVIDEO, NUT,   \
+                                        FFMPEG LAVFI_INDEV PCM_F64BE_DECODER PCM_F64LE_DECODER PCM_S16LE_ENCODER) \
+                                        += $(FFPROBE_TEST_FILE_TESTS-yes)
 
-fate-ffprobe: $(FATE_FFPROBE)
+fate-ffprobe: $(FATE_FFPROBE-yes)
 
-- 
2.40.1



More information about the ffmpeg-devel mailing list