From e6dc4c189dbfaa87ee3a7ce79416fd158e87f6c9 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Mon, 28 Mar 2011 16:54:30 +0200 Subject: [PATCH] tests: fix some unit tests --- gst-libs/gst/audio/audio.c | 2 +- tests/check/elements/decodebin.c | 19 +++++++++++++------ tests/check/elements/decodebin2.c | 19 +++++++++++++------ tests/check/elements/textoverlay.c | 4 ++-- tests/check/elements/vorbistag.c | 3 +-- tests/check/pipelines/vorbisenc.c | 4 ++-- 6 files changed, 32 insertions(+), 19 deletions(-) diff --git a/gst-libs/gst/audio/audio.c b/gst-libs/gst/audio/audio.c index e8bed1f..356921e 100644 --- a/gst-libs/gst/audio/audio.c +++ b/gst-libs/gst/audio/audio.c @@ -416,7 +416,7 @@ gst_audio_buffer_clip (GstBuffer * buffer, GstSegment * segment, gint rate, } /* Get a writable buffer and apply all changes */ - ret = gst_buffer_create_sub (buffer, offset, size); + ret = gst_buffer_create_sub (buffer, trim, size); gst_buffer_unref (buffer); GST_BUFFER_TIMESTAMP (ret) = timestamp; diff --git a/tests/check/elements/decodebin.c b/tests/check/elements/decodebin.c index 9edb4ec..005c63f 100644 --- a/tests/check/elements/decodebin.c +++ b/tests/check/elements/decodebin.c @@ -42,14 +42,22 @@ static const gchar dummytext[] = "over a Lazy Frog Quick Brown Fox Jumps over a Lazy Frog Quick Brown Fox "; static void -src_handoff_cb (GstElement * src, GstBuffer * buf, GstPad * pad, gpointer data) +src_need_data_cb (GstElement * src, guint size, gpointer data) { + GstBuffer *buf; + GstFlowReturn ret; + + buf = gst_buffer_new (); gst_buffer_take_memory (buf, gst_memory_new_wrapped (GST_MEMORY_FLAG_READONLY, (gpointer) dummytext, NULL, sizeof (dummytext), 0, sizeof (dummytext))); GST_BUFFER_OFFSET (buf) = 0; + + g_signal_emit_by_name (src, "push-buffer", buf, &ret); + + fail_unless (ret == GST_FLOW_OK); } static void @@ -70,13 +78,12 @@ GST_START_TEST (test_text_plain_streams) pipe = gst_pipeline_new (NULL); fail_unless (pipe != NULL, "failed to create pipeline"); - src = gst_element_factory_make ("fakesrc", "src"); - fail_unless (src != NULL, "Failed to create fakesrc element"); + src = gst_element_factory_make ("appsrc", "src"); + fail_unless (src != NULL, "Failed to create appsrc element"); - g_object_set (src, "signal-handoffs", TRUE, NULL); + g_object_set (src, "emit-signals", TRUE, NULL); g_object_set (src, "num-buffers", 1, NULL); - g_object_set (src, "can-activate-pull", FALSE, NULL); - g_signal_connect (src, "handoff", G_CALLBACK (src_handoff_cb), NULL); + g_signal_connect (src, "need-data", G_CALLBACK (src_need_data_cb), NULL); decodebin = gst_element_factory_make ("decodebin", "decodebin"); fail_unless (decodebin != NULL, "Failed to create decodebin element"); diff --git a/tests/check/elements/decodebin2.c b/tests/check/elements/decodebin2.c index bc890be..c57be0b 100644 --- a/tests/check/elements/decodebin2.c +++ b/tests/check/elements/decodebin2.c @@ -42,14 +42,22 @@ static const gchar dummytext[] = "over a Lazy Frog Quick Brown Fox Jumps over a Lazy Frog Quick Brown Fox "; static void -src_handoff_cb (GstElement * src, GstBuffer * buf, GstPad * pad, gpointer data) +src_need_data_cb (GstElement * src, guint size, gpointer data) { + GstBuffer *buf; + GstFlowReturn ret; + + buf = gst_buffer_new (); gst_buffer_take_memory (buf, gst_memory_new_wrapped (GST_MEMORY_FLAG_READONLY, (gpointer) dummytext, NULL, sizeof (dummytext), 0, sizeof (dummytext))); GST_BUFFER_OFFSET (buf) = 0; + + g_signal_emit_by_name (src, "push-buffer", buf, &ret); + + fail_unless (ret == GST_FLOW_OK); } static void @@ -70,13 +78,12 @@ GST_START_TEST (test_text_plain_streams) pipe = gst_pipeline_new (NULL); fail_unless (pipe != NULL, "failed to create pipeline"); - src = gst_element_factory_make ("fakesrc", "src"); - fail_unless (src != NULL, "Failed to create fakesrc element"); + src = gst_element_factory_make ("appsrc", "src"); + fail_unless (src != NULL, "Failed to create appsrc element"); - g_object_set (src, "signal-handoffs", TRUE, NULL); + g_object_set (src, "emit-signals", TRUE, NULL); g_object_set (src, "num-buffers", 1, NULL); - g_object_set (src, "can-activate-pull", FALSE, NULL); - g_signal_connect (src, "handoff", G_CALLBACK (src_handoff_cb), NULL); + g_signal_connect (src, "need-data", G_CALLBACK (src_need_data_cb), NULL); decodebin = gst_element_factory_make ("decodebin2", "decodebin"); fail_unless (decodebin != NULL, "Failed to create decodebin element"); diff --git a/tests/check/elements/textoverlay.c b/tests/check/elements/textoverlay.c index 4db3f26..7c89ece 100644 --- a/tests/check/elements/textoverlay.c +++ b/tests/check/elements/textoverlay.c @@ -383,8 +383,8 @@ GST_START_TEST (test_video_passthrough) /* pushing gives away one of the two references we have ... */ fail_unless (gst_pad_push (myvideosrcpad, inbuffer) == GST_FLOW_OK); - /* should be the parent for a new subbuffer for the stamp fix-up */ - ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 2); + /* should be a new buffer for the stamp fix-up */ + ASSERT_BUFFER_REFCOUNT (inbuffer, "inbuffer", 1); fail_unless_equals_int (g_list_length (buffers), 1); fail_unless (GST_BUFFER_CAST (buffers->data) != inbuffer); fail_unless (GST_BUFFER_TIMESTAMP (GST_BUFFER_CAST (buffers->data)) == diff --git a/tests/check/elements/vorbistag.c b/tests/check/elements/vorbistag.c index 3ac3f15..dd1841b 100644 --- a/tests/check/elements/vorbistag.c +++ b/tests/check/elements/vorbistag.c @@ -168,8 +168,7 @@ compare_buffer (GstBuffer * buf, const guint8 * data, gsize size) bdata = gst_buffer_map (buf, &bsize, NULL, GST_MAP_READ); fail_unless_equals_int (bsize, size); - fail_unless_equals_int (memcmp (bdata, - title_comment_header, sizeof (title_comment_header)), 0); + fail_unless_equals_int (memcmp (bdata, data, size), 0); gst_buffer_unmap (buf, bdata, bsize); } diff --git a/tests/check/pipelines/vorbisenc.c b/tests/check/pipelines/vorbisenc.c index b207dff..2666a4c 100644 --- a/tests/check/pipelines/vorbisenc.c +++ b/tests/check/pipelines/vorbisenc.c @@ -356,11 +356,11 @@ GST_START_TEST (test_discontinuity) * samples (because of the overlap/add), so it won't increment the * granulepos, which should be 2048 after the discontinuity. */ + fail_unless (GST_BUFFER_IS_DISCONT (buffer), + "expected discontinuous buffer"); fail_unless (GST_BUFFER_OFFSET_END (buffer) == 2048, "expected granulepos after gap: %" G_GUINT64_FORMAT, GST_BUFFER_OFFSET_END (buffer)); - fail_unless (GST_BUFFER_IS_DISCONT (buffer), - "expected discontinuous buffer"); gst_buffer_unref (buffer); } -- 2.7.4