Commit graph

196 commits

Author SHA1 Message Date
Thijs Vermeir
4bf6171fc1 Add more functions for unit testing: gst_check_drop_buffers, gst_check_caps_equal, gst_check_element_push_buffer_list...
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/check/gstcheck.c:
* libs/gst/check/gstcheck.h:
Add more functions for unit testing: gst_check_drop_buffers,
gst_check_caps_equal, gst_check_element_push_buffer_list,
gst_check_element_push_buffer
2008-02-01 17:16:26 +00:00
Jan Schmidt
f2c36159ef gst/gst.c: _gst_trace_on is already provided by gsttrace.h, no need to declare it ourselves.
Original commit message from CVS:
* gst/gst.c:
_gst_trace_on is already provided by gsttrace.h, no need to declare
it ourselves.
* docs/libs/gstreamer-libs-sections.txt:
Add 'buffers', 'check_cond' and 'check_mutex' from libgstcheck
and remove strange tcase_add_test which is outputting a warning.
* libs/gst/check/gstcheck.c:
* libs/gst/check/gstcheck.h:
Properly declare 'buffers', 'check_cond', 'check_mutex' extern
and define them in gstcheck.c instead of having every .c file whcih
includes gstcheck.h be defining its own copy and relying on symbol
interposing to marry them all, which doesn't work on Solaris.
* tests/check/elements/identity.c: (GST_START_TEST):
Don't define 'buffers' locally, it comes from libgstcheck.
* tests/check/generic/sinks.c: (send_buffer):
Fix type of variable (GstFlowReturn, not GstStateChangeReturn)
* tests/check/gst/gststructure.c: (GST_START_TEST):
* tests/check/gst/gstsystemclock.c: (GST_START_TEST):
* tests/check/gst/gstutils.c: (GST_START_TEST):
* tests/check/gst/gstvalue.c: (GST_START_TEST):
Add a bunch of casts to make various constants fit the types
they're being assigned to.
2008-01-12 20:22:30 +00:00
Peter Kjellerstedt
b0ba7ff031 libs/gst/check/gstcheck.h: Fix detection of the check version we're compiling against (would otherwise break if check...
Original commit message from CVS:
Patch by: Peter Kjellerstedt <pkj axis com>
* libs/gst/check/gstcheck.h:
Fix detection of the check version we're compiling against (would
otherwise break if check goes v0.10.0); correctly report the
name of the failed test again in case of failure, instead of
just 'tf' (fixes #504499).
2007-12-20 09:20:27 +00:00
Jan Schmidt
d7cbd5de33 Use a custom export symbol regex for libgstcheck, as it needs to export symbols that don't match the standard GStream...
Original commit message from CVS:
* configure.ac:
* libs/gst/check/Makefile.am:
Use a custom export symbol regex for libgstcheck, as it needs
to export symbols that don't match the standard GStreamer gst_*
pattern, and  --export-dynamic is not portable (only works on
GNU ld)
* libs/gst/check/gstcheck.c: (gst_check_setup_src_pad),
(gst_check_setup_sink_pad):
Make sure to pass a message parameter to the fail_* macros.
* tests/check/gst/gstinfo.c: (GST_START_TEST):
Fix some compiler warnings.
2007-10-25 14:50:48 +00:00
Tim-Philipp Müller
eb1af0ddab libs/gst/check/gstcheck.*: Allow runtime selection of unit tests to run via the GST_CHECKS environment variable (test...
Original commit message from CVS:
* libs/gst/check/gstcheck.c:
* libs/gst/check/gstcheck.h:
Allow runtime selection of unit tests to run via the GST_CHECKS
environment variable (test case function names, comma-separated).
2007-10-16 16:12:36 +00:00
Stefan Kost
7c2e8138b6 Add more missing docs.
Original commit message from CVS:
* libs/gst/check/gstbufferstraw.c:
* libs/gst/check/gstcheck.h:
* libs/gst/controller/gstcontroller.c:
* libs/gst/controller/gstcontrolsource.h:
* libs/gst/controller/gstlfocontrolsource.h:
* plugins/elements/gstcapsfilter.h:
* plugins/elements/gstfdsink.h:
* plugins/elements/gstfdsrc.h:
Add more missing docs.
2007-08-13 13:33:07 +00:00
Stefan Kost
e99d464ea9 Add libm check as we use in for plugins.
Original commit message from CVS:
* configure.ac:
* libs/gst/check/Makefile.am:
Add libm check as we use in for plugins.
2007-07-20 07:09:11 +00:00
Tim-Philipp Müller
b896ba8452 libs/gst/check/gstcheck.c: Intercept criticals and warnings in the Gst-Phonon log domain, so
Original commit message from CVS:
* libs/gst/check/gstcheck.c: (gst_check_init):
Intercept criticals and warnings in the Gst-Phonon log domain, so
ASSERT_CRITICAL() etc. can be used in gst-phonon's unit tests as
well.
2007-06-14 17:36:19 +00:00
Tim-Philipp Müller
3ee7f4c8a4 Ugly 'fix' for the controller unit test on the p5 bot: in fail_unless_equals_float() check whether the values are 'al...
Original commit message from CVS:
* libs/gst/check/Makefile.am:
* libs/gst/check/gstcheck.h:
* pkgconfig/gstreamer-check-uninstalled.pc.in:
* pkgconfig/gstreamer-check.pc.in:
Ugly 'fix' for the controller unit test on the p5 bot: in
fail_unless_equals_float() check whether the values are 'almost
equal' by allowing a small absolute error, which should be good
enough for our use cases (normal numbers and values close to 0).
Proper fixage left to floating point arithmetic aficionados.
2007-06-14 15:56:03 +00:00
Tim-Philipp Müller
9dc9602829 API: add fail_unless_equals_float() and assert_equals_float().
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/check/gstcheck.h:
API: add fail_unless_equals_float() and assert_equals_float().
Add documentation for some of the macros.
* tests/check/libs/controller.c: (GST_START_TEST):
Use newly-added asserts.
2007-06-14 11:56:44 +00:00
Tim-Philipp Müller
e94feebf11 libs/gst/check/gstcheck.c: Actually write ABI structs to the file specified in the GST_ABI environment variable, as t...
Original commit message from CVS:
* libs/gst/check/gstcheck.c: (gst_check_abi_list):
Actually write ABI structs to the file specified in the GST_ABI
environment variable, as the message we print claims we would.
2007-01-16 09:57:50 +00:00
Tim-Philipp Müller
7ce34c615d libs/gst/check/: Add G_BEGIN_DECLS and G_END_DECLS. Move GST_CHECK_MAIN where it belongs.
Original commit message from CVS:
* libs/gst/check/gstbufferstraw.h:
* libs/gst/check/gstcheck.h:
Add G_BEGIN_DECLS and G_END_DECLS. Move GST_CHECK_MAIN where it
belongs.
2007-01-12 12:48:25 +00:00
Stefan Kost
c9fbb589a0 libs/gst/check/gstcheck.c: do not automatically (de)activate pads
Original commit message from CVS:
* libs/gst/check/gstcheck.c: (gst_check_setup_src_pad),
(gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
(gst_check_teardown_sink_pad):
do not automatically (de)activate pads
* tests/check/Makefile.am:
* tests/check/elements/queue.c: (queue_overrun), (queue_underrun),
(setup_queue), (cleanup_queue), (GST_START_TEST), (queue_suite):
add new, yet simple tests for queue
* tests/check/elements/fakesrc.c: (cleanup_fakesrc):
* tests/check/elements/fdsrc.c: (cleanup_fdsrc):
* tests/check/elements/filesrc.c: (cleanup_filesrc),
(GST_START_TEST):
* tests/check/elements/identity.c: (cleanup_identity):
consistent pad (de)activation
2006-12-21 08:12:28 +00:00
Sebastian Droege
2760bf504d libs/gst/check/gstcheck.h: Fix compilation and running against 0.9.4. Fixes #377332.
Original commit message from CVS:
Patch by: Sebastian Droege <slomo at ubuntu dot com>
* libs/gst/check/gstcheck.h:
Fix compilation and running against 0.9.4. Fixes #377332.
2006-11-20 11:11:20 +00:00
Wim Taymans
c549303d73 libs/gst/check/gstcheck.c: Activate/deactivate pads in setup/teardown respectively.
Original commit message from CVS:
* libs/gst/check/gstcheck.c: (gst_check_setup_src_pad),
(gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
(gst_check_teardown_sink_pad):
Activate/deactivate pads in setup/teardown respectively.
2006-10-10 14:09:43 +00:00
Jan Schmidt
5ad1430ce9 configure.ac: Don't pull in gmodule-2.0.pc as a dependency in our .pc files - we want gmodule-no-export-2.0.pc instea...
Original commit message from CVS:
* configure.ac:
Don't pull in gmodule-2.0.pc as a dependency in our .pc files - we
want gmodule-no-export-2.0.pc instead so that we don't drag in
--export-dynamic on every project that links to GStreamer.
Also, make our export regex only match the start of symbols, rather
than any symbol that contains '_gst' somewhere.
* libs/gst/check/Makefile.am:
The libgstcheck we build does however need export-dynamic, as it
produces some symbols that don't match our _gst... style regex.
2006-09-28 11:11:28 +00:00
Tim-Philipp Müller
cf8df184c7 Make gstcheck stuff show up in docs (still needs to be documented properly though).
Original commit message from CVS:
* docs/libs/gstreamer-libs-docs.sgml:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/check/gstbufferstraw.c:
Make gstcheck stuff show up in docs (still needs to
be documented properly though).
2006-08-17 10:46:19 +00:00
Tim-Philipp Müller
8e2f05d8ce libs/gst/check/gstcheck.h: Use const gchar * variables in fail_unless_equals_string macro to avoid compiler warnings ...
Original commit message from CVS:
* libs/gst/check/gstcheck.h:
Use const gchar * variables in fail_unless_equals_string
macro to avoid compiler warnings (and don't use tabs for
indenting).
2006-08-15 18:29:22 +00:00
Tim-Philipp Müller
a85462ec7f libs/gst/check/gstcheck.h: Fix ASSERT_CRITICAL and ASSERT_WARNING macros to actually print something when they fail.
Original commit message from CVS:
* libs/gst/check/gstcheck.h:
Fix ASSERT_CRITICAL and ASSERT_WARNING macros to actually
print something when they fail.
2006-08-15 09:33:24 +00:00
Andy Wingo
1cd7bc447b libs/gst/check/Makefile.am (libgstcheck_@GST_MAJORMINOR@include_HEADERS)
Original commit message from CVS:
2006-07-21  Andy Wingo  <wingo@pobox.com>

* libs/gst/check/Makefile.am
(libgstcheck_@GST_MAJORMINOR@include_HEADERS)
(libgstcheck_@GST_MAJORMINOR@_la_SOURCES):
* libs/gst/check/gstbufferstraw.h:
* libs/gst/check/gstbufferstraw.c: Add some new hype testing
functions, thus proving I am still a GStreamer haxor. OK I wrote
them a long time ago, but anyways.
2006-07-21 15:48:04 +00:00
Thomas Vander Stichele
904f7041d0 libs/gst/check/gstcheck.c: if we get the wrong message, give us the types as string
Original commit message from CVS:
* libs/gst/check/gstcheck.c: (gst_check_message_error),
(gst_check_run_suite):
if we get the wrong message, give us the types as string
* plugins/elements/gstfilesrc.c: (gst_file_src_start):
Fix a translatable
* tests/check/elements/filesrc.c: (GST_START_TEST):
add a test for trying to open a non-existing file
2006-07-02 23:22:31 +00:00
Thomas Vander Stichele
f8fa84b087 libs/gst/check/gstcheck.h: add some assert_ as alias for fail_unless_*
Original commit message from CVS:
* libs/gst/check/gstcheck.h:
add some assert_ as alias for fail_unless_*
* tests/check/gst/gst.c: (GST_START_TEST), (gst_suite):
increase test coverage
2006-07-02 22:05:48 +00:00
Thomas Vander Stichele
b48e0d830d moap ignore
Original commit message from CVS:
moap ignore
2006-07-02 00:39:28 +00:00
Thomas Vander Stichele
3c3bbc87d4 configure.ac: set CFLAGS and friends to -O0 if gcov is being used add GCOV LIBS
Original commit message from CVS:
* configure.ac:
set CFLAGS and friends to -O0 if gcov is being used
add GCOV LIBS
* gst/Makefile.am:
* libs/gst/base/Makefile.am:
* libs/gst/check/Makefile.am:
* libs/gst/controller/Makefile.am:
* libs/gst/dataprotocol/Makefile.am:
* libs/gst/net/Makefile.am:
* plugins/elements/Makefile.am:
* plugins/indexers/Makefile.am:
add makefile rules to generate gcov data and clean up
* tests/check/Makefile.am:
add a coverage target that generates an html overview
of coverage data
2006-07-01 23:26:06 +00:00
Thomas Vander Stichele
374b55af56 libs/gst/check/gstcheck.*: create a macro and function so that the simple unit test case can be just one macro to cre...
Original commit message from CVS:
* libs/gst/check/gstcheck.c: (gst_check_run_suite):
* libs/gst/check/gstcheck.h:
create a macro and function so that the simple unit test
case can be just one macro to create main()
2006-07-01 20:54:25 +00:00
Thomas Vander Stichele
3a177aa40e cosmetics
Original commit message from CVS:
cosmetics
2006-06-06 13:53:25 +00:00
Thomas Vander Stichele
e036ea0995 libs/gst/check/gstcheck.*: factor out the method from tests that checks size of structures, and add code to generate ...
Original commit message from CVS:
* libs/gst/check/gstcheck.c: (gst_check_abi_list):
* libs/gst/check/gstcheck.h:
factor out the method from tests that checks size of structures,
and add code to generate the header containing these sizes
* tests/check/gst/gstabi.c: (GST_START_TEST):
* tests/check/gst/struct_i386.h:
* tests/check/libs/libsabi.c: (GST_START_TEST):
* tests/check/libs/struct_i386.h:
use it
2006-06-06 13:48:20 +00:00
Thomas Vander Stichele
53b73f3b5c libs/gst/check/gstcheck.c: make sure we unset caps
Original commit message from CVS:
* libs/gst/check/gstcheck.c: (gst_check_teardown_src_pad):
make sure we unset caps
2006-06-02 16:45:08 +00:00
Michael Smith
c4b93a9321 libs/gst/check/gstcheck.*: Add a cond/mutex to the check support lib, signal this whenever we add to the buffers list...
Original commit message from CVS:
* libs/gst/check/gstcheck.c: (gst_check_init),
(gst_check_chain_func):
* libs/gst/check/gstcheck.h:
Add a cond/mutex to the check support lib, signal this whenever we
add to the buffers list. This will allow tests to not busy-wait on
the buffer-list.
2006-06-02 16:41:02 +00:00
Thomas Vander Stichele
693dbcb44b debugging changes
Original commit message from CVS:
debugging changes
2006-05-22 13:31:48 +00:00
Thomas Vander Stichele
7ebd6a126d libs/gst/check/gstcheck.h: add an assert for setting state to avoid lots of repetitive code in the future
Original commit message from CVS:
2006-05-10  Thomas Vander Stichele  <thomas at apestaart dot org>

* libs/gst/check/gstcheck.h:
add an assert for setting state to avoid lots of repetitive code
in the future
2006-05-10 15:49:30 +00:00
Thomas Vander Stichele
a0c4c4812c CVS surgery + support to move base, check, and net out of gst and into libs/gst
Original commit message from CVS:
CVS surgery + support to move base, check, and net out of gst
and into libs/gst
2005-11-29 19:12:30 +00:00
Thomas Vander Stichele
f496f75765 update LDFLAGS use some more
Original commit message from CVS:

* configure.ac:
* gst/Makefile.am:
* gst/base/Makefile.am:
* gst/check/Makefile.am:
* gst/elements/Makefile.am:
* gst/net/Makefile.am:
update LDFLAGS use some more
2005-11-27 15:15:35 +00:00
Thomas Vander Stichele
888bf79853 check/gst/gstminiobject.c: don't use check calls from threads; check probably isn't threadsafe and using a lock to ma...
Original commit message from CVS:

* check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
(gst_mini_object_suite):
don't use check calls from threads; check probably isn't
threadsafe and using a lock to make it threadsafe would
defeat the purpose of this check
* gst/check/gstcheck.c:
* gst/check/gstcheck.h:
use GST_DEBUG some more
2005-11-24 18:40:58 +00:00
Thomas Vander Stichele
533a6eacb0 gst/gstpad.*: add gst_pad_new_from_static_template functions
Original commit message from CVS:

* gst/gstpad.c: (gst_pad_new_from_static_template):
* gst/gstpad.h:
add gst_pad_new_from_static_template functions
* gst/check/gstcheck.c: (gst_check_setup_src_pad),
(gst_check_setup_sink_pad):
* gst/elements/gsttee.c: (gst_tee_init):
and use them
2005-11-16 16:09:49 +00:00
Thomas Vander Stichele
3537119465 I'm too lazy to comment this
Original commit message from CVS:
gtk-doc insists on inserting <PARA> at every empty line, sigh
2005-10-15 16:16:04 +00:00
David Schleef
20acc0ae7e configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug #316076)
Original commit message from CVS:
* configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
#316076)
* gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
* gst/check/Makefile.am:
* libs/gst/controller/Makefile.am:
* libs/gst/dataprotocol/Makefile.am:
2005-09-15 05:58:37 +00:00
Thomas Vander Stichele
9cc64e4bec check/gst/gstpad.c: add tests for valid pad naming
Original commit message from CVS:

* check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
(gst_pad_suite):
add tests for valid pad naming
* gst/check/gstcheck.c: (gst_check_log_message_func),
(gst_check_log_critical_func):
add ASSERT_WARNING
remove printing of code, it is fragile when the code contains
% and the line number is enough info
* gst/check/gstcheck.h:
* gst/gstpad.c: (gst_pad_template_new):
fix memleaks
2005-09-09 14:34:43 +00:00
Andy Wingo
e040bb2dbe gst/gstelement.h (GstState): Renamed from GstElementState, changed to be a normal enum instead of flags.
Original commit message from CVS:
2005-09-02  Andy Wingo  <wingo@pobox.com>

* gst/gstelement.h (GstState): Renamed from GstElementState,
changed to be a normal enum instead of flags.
(GstStateChangeReturn): Renamed from GstElementStateReturn, names
munged to be GST_STATE_CHANGE_*.
(GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
work with the new state representation.
(GstStateChange): New enumeration of possible state transitions.
Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
(GstElementClass::change_state): Pass the GstStateChange along as
an argument. Helps language bindings, so they don't have to use
tricky lock-needing macros like GST_STATE_CHANGE ().

* scripts/update-states (file): New script. Run it on a file to
update it for state naming and API changes. Updates files in
place.

* All files updated for the new API.
2005-09-02 15:42:00 +00:00
Stefan Kost
219c0c1947 docs/gst/gstreamer-sections.txt: ultral33t func10ns deserve to appear in the docs actualy
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
ultral33t func10ns deserve to appear in the docs actualy
* docs/gst/tmpl/.cvsignore:
* docs/gst/tmpl/gstcompat.sgml:
* docs/gst/tmpl/gstconfig.sgml:
* gst/check/gstcheck.c:
* gst/gstcompat.h:
* gst/gstconfig.h.in:
inlined more docs
2005-08-30 08:17:48 +00:00
Thomas Vander Stichele
9ef5832ec0 add a uint64 checking method
Original commit message from CVS:
add a uint64 checking method
2005-08-25 16:27:44 +00:00
Thomas Vander Stichele
d961ea4c93 check/gst/gstbin.c: since we don't know when preroll is done, use refcount range check for the sink
Original commit message from CVS:

* check/gst/gstbin.c: (GST_START_TEST):
since we don't know when preroll is done, use refcount range
check for the sink
* gst/check/gstcheck.h:
add macro for checking refcount range
2005-08-22 09:25:51 +00:00
Thomas Vander Stichele
e5afa8a31b check/Makefile.am: clean up environment for when registry gets built versus when actual tests are run; valgrind seems...
Original commit message from CVS:

* check/Makefile.am:
clean up environment for when registry gets built versus
when actual tests are run; valgrind seems to not report
leaks if GST_PLUGIN_PATH is set to some specific values
* check/gst/gstbin.c: (GST_START_TEST):
add more refcounting checks; maybe this exposes a
preroll lock bug ?
* common/check.mak:
* gst/base/gstbasesink.c: (gst_base_sink_handle_object):
* gst/check/gstcheck.h:
* gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
(gst_bin_change_state):
* gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
add/fix debugging/whitespace
2005-08-21 15:01:18 +00:00
Thomas Vander Stichele
744193f884 check/Makefile.am: don't valgrind the controller test - it's leaking - Stefan, HELP
Original commit message from CVS:

* check/Makefile.am:
don't valgrind the controller test - it's leaking - Stefan, HELP
* gst/check/gstcheck.c: (gst_check_message_error),
(gst_check_chain_func), (gst_check_setup_element),
(gst_check_teardown_element), (gst_check_setup_src_pad),
(gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
(gst_check_teardown_sink_pad):
* gst/check/gstcheck.h:
add a bunch of methods to set up elements, and src and sink pads
* check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
* check/elements/identity.c: (setup_identity), (cleanup_identity),
(GST_START_TEST):
use them
* gst/gstmessage.c:
* gst/gsttag.h:
whitespace/doc fixes
2005-08-21 10:39:39 +00:00
Thomas Vander Stichele
088fed6d36 check/Makefile.am: set GST_TOOLS_DIR
Original commit message from CVS:

* check/Makefile.am:
set GST_TOOLS_DIR
* gst/check/gstcheck.c: (gst_check_message_error):
* gst/check/gstcheck.h:
add a fail_unless_equals_int
add fail_unless for error messages
2005-08-20 20:15:53 +00:00
Thomas Vander Stichele
8ce827c406 move check stuff to its own library to be used by other modules
Original commit message from CVS:
move check stuff to its own library to be used by other modules
2005-08-20 12:14:28 +00:00