1 have_registry = not get_option('disable_registry')
2 have_debug = true # FIXME
3 have_parse = true # FIXME
5 # tests and condition when to skip the test
7 [ 'gst/gst.c', not have_registry ],
8 [ 'gst/gstabi.c', not have_registry ],
9 [ 'gst/gstatomicqueue.c' ],
10 [ 'gst/gstbuffer.c' ],
11 [ 'gst/gstbufferlist.c' ],
12 [ 'gst/gstbufferpool.c' ],
13 [ 'gst/gstchildproxy.c', not have_registry ],
15 [ 'gst/gstcontext.c' ],
16 [ 'gst/gstcontroller.c' ],
18 [ 'gst/gstcapsfeatures.c' ],
19 [ 'gst/gstdatetime.c' ],
20 [ 'gst/gstdeinit.c' ],
21 [ 'gst/gstdevice.c' ],
22 [ 'gst/gstelement.c', not have_registry ],
23 [ 'gst/gstelementfactory.c', not have_registry ],
24 [ 'gst/gstghostpad.c', not have_registry ],
26 [ 'gst/gstiterator.c' ],
27 [ 'gst/gstmessage.c' ],
28 [ 'gst/gstmemory.c' ],
30 [ 'gst/gstminiobject.c' ],
31 [ 'gst/gstobject.c' ],
32 [ 'gst/gstpad.c', not have_registry ],
33 [ 'gst/gstparamspecs.c' ],
34 [ 'gst/gstprintf.c', disable_gst_debug, printf_lib],
35 [ 'gst/gstpipeline.c', not have_registry ],
37 [ 'gst/gstplugin.c', not have_registry ],
38 [ 'gst/gstpreset.c' ],
39 [ 'gst/gstprotection.c' ],
40 [ 'gst/gstquery.c', not have_registry ],
41 [ 'gst/gstregistry.c', not have_registry ],
42 [ 'gst/gstpromise.c'],
43 [ 'gst/gstsegment.c' ],
44 [ 'gst/gststream.c' ],
45 [ 'gst/gststructure.c' ],
46 [ 'gst/gstsystemclock.c' ],
48 [ 'gst/gsttagsetter.c' ],
51 [ 'gst/gsttocsetter.c' ],
52 [ 'gst/gsttracerrecord.c', disable_tracer_hooks or disable_gst_debug],
54 [ 'gst/gstutils.c', not have_registry ],
56 [ 'generic/states.c', not have_registry ],
58 [ 'libs/aggregator.c' ],
59 [ 'libs/baseparse.c' ],
60 [ 'libs/basesrc.c', not have_registry ],
61 [ 'libs/basesink.c', not have_registry ],
62 [ 'libs/bitreader.c' ],
63 [ 'libs/bytereader.c' ],
64 [ 'libs/bytewriter.c' ],
65 [ 'libs/bitreader-noinline.c' ],
66 [ 'libs/bytereader-noinline.c' ],
67 [ 'libs/bytewriter-noinline.c' ],
68 [ 'libs/collectpads.c', not have_registry ],
69 [ 'libs/controller.c' ],
70 [ 'libs/flowcombiner.c' ],
71 [ 'libs/gstharness.c' ],
72 [ 'libs/gstnetclientclock.c' ],
73 [ 'libs/gstnettimeprovider.c' ],
74 [ 'libs/gsttestclock.c' ],
76 [ 'libs/sparsefile.c' ],
77 [ 'libs/transform1.c' ],
78 [ 'libs/transform2.c' ],
79 [ 'libs/typefindhelper.c' ],
80 [ 'libs/queuearray.c' ],
81 [ 'elements/capsfilter.c', not have_registry ],
82 [ 'elements/concat.c', not have_registry ],
83 [ 'elements/dataurisrc.c', not have_registry ],
84 [ 'elements/fakesrc.c', not have_registry ],
85 [ 'elements/fdsrc.c', not have_registry ],
86 [ 'elements/filesink.c', not have_registry ],
87 [ 'elements/filesrc.c', not have_registry ],
88 [ 'elements/funnel.c', not have_registry ],
89 [ 'elements/identity.c', not have_registry ],
90 [ 'elements/multiqueue.c', not have_registry ],
91 [ 'elements/selector.c', not have_registry ],
92 [ 'elements/streamiddemux.c', not have_registry ],
93 [ 'elements/tee.c', not have_registry ],
94 [ 'elements/queue.c', not have_registry ],
95 [ 'elements/queue2.c', not have_registry ],
96 [ 'elements/valve.c', not have_registry ],
97 [ 'pipelines/seek.c', not have_registry ],
98 [ 'pipelines/queue-error.c', not have_registry ],
99 [ 'pipelines/parse-disabled.c', have_parse ],
100 [ 'pipelines/simple-launch-lines.c', not have_parse ],
101 [ 'pipelines/parse-launch.c', not have_parse ],
102 [ 'pipelines/cleanup.c', not have_parse ],
103 [ 'tools/gstinspect.c' ],
104 # These take quite long, put them at the end
105 [ 'elements/fakesink.c', not have_registry ],
106 [ 'gst/gstbin.c', not have_registry ],
107 [ 'gst/gstbus.c', not have_registry ],
108 [ 'gst/gstevent.c', not have_registry ],
109 [ 'pipelines/stress.c', not have_registry ],
110 [ 'generic/sinks.c', not have_registry ],
113 # Make sure our headers are C++ clean
114 if add_languages('cpp', required : false)
116 [ 'gst/gstcpp.cc', not have_registry ],
117 [ 'libs/gstlibscpp.cc', false ],
122 '-UG_DISABLE_ASSERT',
123 '-UG_DISABLE_CAST_CHECKS',
124 '-DGST_CHECK_TEST_ENVIRONMENT_BEACON="GST_STATE_IGNORE_ELEMENTS"',
125 '-DTESTFILE="' + meson.current_source_dir() + '/meson.build"',
126 '-DGST_USE_UNSTABLE_API',
127 '-DGST_DISABLE_DEPRECATED',
130 glib_deps = [gio_dep, gobject_dep, gmodule_dep, glib_dep]
131 gst_deps = [gst_dep, gst_base_dep, gst_check_dep, gst_net_dep, gst_controller_dep]
133 foreach t : core_tests
135 test_name = fname.split('.')[0].underscorify()
136 skip_test = t.get(1, false)
137 link_with_libs = t.get(2, [])
140 exe = executable(test_name, fname,
141 c_args : gst_c_args + test_defines,
142 cpp_args : gst_c_args + test_defines,
143 include_directories : [configinc],
144 link_with : link_with_libs,
145 dependencies : test_deps + glib_deps + gst_deps,
149 env.set('GST_PLUGIN_PATH_1_0', meson.build_root())
150 env.set('GST_PLUGIN_SYSTEM_PATH_1_0', '')
151 env.set('GST_STATE_IGNORE_ELEMENTS', '')
152 env.set('CK_DEFAULT_TIMEOUT', '20')
153 env.set('GST_REGISTRY', '@0@/@1@.registry'.format(meson.current_build_dir(), test_name))
154 env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner')
155 env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer')
157 test(test_name, exe, env: env, timeout : 3 * 60)