tests/check/pipelines/simple-launch-lines.c

Original commit message from CVS:
2007-06-19  Andy Wingo  <wingo@pobox.com>

* tests/check/pipelines/simple-launch-lines.c
(test_state_change_returns): New test, partially disabled until
basesink is fixed.
This commit is contained in:
Andy Wingo 2007-06-19 21:28:54 +00:00
parent 919dfdbfb3
commit b0c2d05640
3 changed files with 68 additions and 6 deletions

View file

@ -1,3 +1,9 @@
2007-06-19 Andy Wingo <wingo@pobox.com>
* tests/check/pipelines/simple-launch-lines.c
(test_state_change_returns): New test, partially disabled until
basesink is fixed.
2007-06-19 Wim Taymans <wim@fluendo.com> 2007-06-19 Wim Taymans <wim@fluendo.com>
* plugins/elements/gstmultiqueue.c: (apply_buffer), * plugins/elements/gstmultiqueue.c: (apply_buffer),

View file

@ -123,6 +123,61 @@ GST_START_TEST (test_2_elements)
GST_END_TEST; GST_END_TEST;
static void
check_state_change_return (GstElement * pipeline, GstState state,
GstStateChangeReturn immediate, GstStateChangeReturn final)
{
GstStateChangeReturn ret;
ret = gst_element_set_state (pipeline, state);
if (ret != immediate)
g_critical ("Unexpected set_state return ->%s: %d != %d",
gst_element_state_get_name (state), ret, immediate);
ret = gst_element_get_state (pipeline, NULL, NULL, GST_CLOCK_TIME_NONE);
if (ret != final)
g_critical ("Unexpected get_state return ->%s: %d != %d",
gst_element_state_get_name (state), ret, final);
}
GST_START_TEST (test_state_change_returns)
{
gchar *s;
GstElement *pipeline;
s = "fakesrc can-activate-pull=false ! fakesink";
pipeline = gst_parse_launch (s, NULL);
fail_unless (GST_IS_PIPELINE (pipeline));
check_state_change_return (pipeline, GST_STATE_READY,
GST_STATE_CHANGE_SUCCESS, GST_STATE_CHANGE_SUCCESS);
check_state_change_return (pipeline, GST_STATE_PAUSED, GST_STATE_CHANGE_ASYNC,
GST_STATE_CHANGE_SUCCESS);
check_state_change_return (pipeline, GST_STATE_PLAYING,
GST_STATE_CHANGE_SUCCESS, GST_STATE_CHANGE_SUCCESS);
check_state_change_return (pipeline, GST_STATE_NULL, GST_STATE_CHANGE_SUCCESS,
GST_STATE_CHANGE_SUCCESS);
gst_object_unref (pipeline);
s = "fakesrc can-activate-push=false ! fakesink can-activate-pull=true";
pipeline = gst_parse_launch (s, NULL);
fail_unless (GST_IS_PIPELINE (pipeline));
check_state_change_return (pipeline, GST_STATE_READY,
GST_STATE_CHANGE_SUCCESS, GST_STATE_CHANGE_SUCCESS);
#if 0
/* FIXME, there is no need to preroll in pull-mode pipelines. However the
* current basesink code returns ASYNC always when going to PAUSED */
check_state_change_return (pipeline, GST_STATE_PAUSED,
GST_STATE_CHANGE_SUCCESS, GST_STATE_CHANGE_SUCCESS);
check_state_change_return (pipeline, GST_STATE_PLAYING,
GST_STATE_CHANGE_SUCCESS, GST_STATE_CHANGE_SUCCESS);
#endif
check_state_change_return (pipeline, GST_STATE_NULL, GST_STATE_CHANGE_SUCCESS,
GST_STATE_CHANGE_SUCCESS);
gst_object_unref (pipeline);
}
GST_END_TEST;
G_GNUC_UNUSED G_GNUC_UNUSED
GST_START_TEST (test_tee) GST_START_TEST (test_tee)
{ {
@ -271,6 +326,7 @@ simple_launch_lines_suite (void)
suite_add_tcase (s, tc_chain); suite_add_tcase (s, tc_chain);
tcase_add_test (tc_chain, test_2_elements); tcase_add_test (tc_chain, test_2_elements);
tcase_add_test (tc_chain, test_state_change_returns);
/* tcase_add_test (tc_chain, test_tee); FIXME */ /* tcase_add_test (tc_chain, test_tee); FIXME */
tcase_add_test (tc_chain, test_stop_from_app); tcase_add_test (tc_chain, test_stop_from_app);
return s; return s;

View file

@ -24,7 +24,7 @@
/* #undef GST_GCOV_ENABLED */ /* #undef GST_GCOV_ENABLED */
/* Default errorlevel to use */ /* Default errorlevel to use */
#define GST_LEVEL_DEFAULT GST_LEVEL_NONE #define GST_LEVEL_DEFAULT GST_LEVEL_ERROR
/* GStreamer license */ /* GStreamer license */
#define GST_LICENSE "LGPL" #define GST_LICENSE "LGPL"
@ -33,7 +33,7 @@
#define GST_MAJORMINOR "0.10" #define GST_MAJORMINOR "0.10"
/* package name in plugins */ /* package name in plugins */
#define GST_PACKAGE_NAME "GStreamer source release" #define GST_PACKAGE_NAME "GStreamer CVS/prerelease"
/* package origin */ /* package origin */
#define GST_PACKAGE_ORIGIN "Unknown package origin" #define GST_PACKAGE_ORIGIN "Unknown package origin"
@ -175,7 +175,7 @@
#define HAVE_WIN32 1 #define HAVE_WIN32 1
/* Define host CPU */ /* Define host CPU */
#define HOST_CPU "x86_64" #define HOST_CPU "powerpc"
/* library dir */ /* library dir */
#ifdef _DEBUG #ifdef _DEBUG
@ -197,13 +197,13 @@
#define PACKAGE_NAME "GStreamer" #define PACKAGE_NAME "GStreamer"
/* Define to the full name and version of this package. */ /* Define to the full name and version of this package. */
#define PACKAGE_STRING "GStreamer 0.10.13" #define PACKAGE_STRING "GStreamer 0.10.13.1"
/* Define to the one symbol short name of this package. */ /* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "gstreamer" #define PACKAGE_TARNAME "gstreamer"
/* Define to the version of this package. */ /* Define to the version of this package. */
#define PACKAGE_VERSION "0.10.13" #define PACKAGE_VERSION "0.10.13.1"
/* Define the plugin directory */ /* Define the plugin directory */
#ifdef _DEBUG #ifdef _DEBUG
@ -219,7 +219,7 @@
#undef USE_POISONING #undef USE_POISONING
/* Version number of package */ /* Version number of package */
#define VERSION "0.10.13" #define VERSION "0.10.13.1"
/* Define to 1 if your processor stores words with the most significant byte /* Define to 1 if your processor stores words with the most significant byte
first (like Motorola and SPARC, unlike Intel and VAX). */ first (like Motorola and SPARC, unlike Intel and VAX). */