2020-05-24 18:07:25 +00:00
|
|
|
gst_tester = find_program('gst-tester-@0@'.format(api_version), required: get_option('tests'))
|
|
|
|
if not gst_tester.found()
|
|
|
|
subdir_done()
|
|
|
|
endif
|
|
|
|
|
|
|
|
tests = [
|
2022-01-04 18:49:35 +00:00
|
|
|
{'path': 'opencv/cvtracker'},
|
2022-09-07 15:22:45 +00:00
|
|
|
{'path': 'testsrcbin/caps_spec'},
|
2023-04-04 21:50:39 +00:00
|
|
|
{'path': 'codectimestamper/h264_propagate_caps'},
|
2022-01-04 18:49:35 +00:00
|
|
|
{'path': 'wpe/load_bytes_first', 'skip': not building_wpe},
|
2023-03-30 13:38:22 +00:00
|
|
|
{'path': 'vtenc/vtenc_h264', 'skip': not applemedia_found_deps},
|
|
|
|
{'path': 'vtenc/vtenc_h264_b_frames', 'skip': not applemedia_found_deps},
|
|
|
|
{'path': 'vtenc/vtenc_h265', 'skip': not applemedia_found_deps},
|
|
|
|
{'path': 'vtenc/vtenc_h265_b_frames', 'skip': not applemedia_found_deps},
|
2021-05-26 00:44:46 +00:00
|
|
|
{'path': 'autovideoconvert/renegotiate'},
|
2024-02-29 11:31:47 +00:00
|
|
|
{'path': 'pitch/maintain_pitch_with_variable_playback_rates', 'skip': not soundtouch_dep.found()},
|
|
|
|
{'path': 'pitch/reverse.maintain_pitch_with_variable_playback_rates', 'skip': not soundtouch_dep.found()},
|
|
|
|
{'path': 'pitch/change_pitch_properties', 'skip': not soundtouch_dep.found()},
|
|
|
|
{'path': 'pitch/reverse.change_pitch_properties', 'skip': not soundtouch_dep.found()},
|
2020-05-24 18:07:25 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
env = environment()
|
2021-10-18 14:47:00 +00:00
|
|
|
env.set('GST_PLUGIN_PATH_1_0', meson.global_build_root(), pluginsdirs)
|
2020-05-24 18:07:25 +00:00
|
|
|
env.set('GST_PLUGIN_SYSTEM_PATH_1_0', '')
|
|
|
|
env.set('GST_REGISTRY', '@0@/@1@.registry'.format(meson.current_build_dir(), 'validate'))
|
|
|
|
env.set('GST_PLUGIN_SCANNER_1_0', gst_plugin_scanner_path)
|
|
|
|
env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer', 'gst-validate', 'gst-plugins-base',
|
2021-10-18 14:47:00 +00:00
|
|
|
'gst-plugins-bad@' + meson.project_build_root())
|
2020-05-24 18:07:25 +00:00
|
|
|
|
|
|
|
foreach t: tests
|
2022-01-04 18:49:35 +00:00
|
|
|
if not t.get('skip', false)
|
|
|
|
test_dir_name = t.get('path').split('/')
|
|
|
|
test_name = 'validate'
|
|
|
|
foreach c: test_dir_name
|
|
|
|
test_name += '.' + c
|
|
|
|
endforeach
|
|
|
|
test_env = env
|
|
|
|
test_env.set('GST_VALIDATE_LOGSDIR', join_paths(meson.current_build_dir(), test_name))
|
|
|
|
test_file = join_paths(meson.current_source_dir(), t.get('path') + '.validatetest')
|
|
|
|
test(test_name, gst_tester, args: [test_file, '--use-fakesinks'],
|
|
|
|
env: test_env, timeout : 3 * 60, protocol: 'tap')
|
|
|
|
endif
|
2020-05-24 18:07:25 +00:00
|
|
|
endforeach
|