tests: Fix rtpsession test failure
authorOlivier Crête <olivier.crete@collabora.com>
Mon, 31 Aug 2015 20:42:30 +0000 (16:42 -0400)
committerOlivier Crête <olivier.crete@collabora.com>
Mon, 31 Aug 2015 20:42:30 +0000 (16:42 -0400)
The time of the first RTCP packet is semi-random, so
sometimes it was produced before enough packets from
the second SSRC were received. First drop queued RTCP
packets, then advance the clock enough to ensure
that at least one new RTCP packet is produced.

https://bugzilla.gnome.org/show_bug.cgi?id=750731

tests/check/elements/rtpsession.c

index 96d5598..f7c1bdf 100644 (file)
@@ -232,8 +232,12 @@ GST_START_TEST (test_multiple_ssrc_rr)
       gst_clock_id_unref (tid);
   }
 
+  out_buf = g_async_queue_try_pop (data.rtcp_queue);
+  if (out_buf)
+    gst_buffer_unref (out_buf);
+
   gst_test_clock_set_time (GST_TEST_CLOCK (data.clock),
-      gst_clock_id_get_time (id) + (2 * GST_SECOND));
+      gst_clock_id_get_time (id) + (5 * GST_SECOND));
   gst_test_clock_wait_for_next_pending_id (GST_TEST_CLOCK (data.clock), &id);
   tid = gst_test_clock_process_next_clock_id (GST_TEST_CLOCK (data.clock));
   gst_clock_id_unref (id);