After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 649615 - Tests fail when built with gstreamer 0.10.33
Tests fail when built with gstreamer 0.10.33
Status: RESOLVED FIXED
Product: gnome-perl
Classification: Bindings
Component: GStreamer
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gtk2-perl-bugs
gtk2-perl-bugs
Depends on:
Blocks:
 
 
Reported: 2011-05-06 22:17 UTC by Dominic Hargreaves
Modified: 2011-05-14 10:56 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
fix for broken gstbuffer test (496 bytes, patch)
2011-05-12 08:56 UTC, Jeff King
committed Details | Review
patch for broken TagSetter test (697 bytes, patch)
2011-05-12 08:59 UTC, Jeff King
committed Details | Review
a fix for the broken GstValue test (430 bytes, patch)
2011-05-12 09:33 UTC, Dominic Hargreaves
rejected Details | Review
a fix for the broken GstElement test (798 bytes, patch)
2011-05-12 18:25 UTC, Dominic Hargreaves
rejected Details | Review

Description Dominic Hargreaves 2011-05-06 22:17:21 UTC
Forwarded from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=616454:

> dh_auto_test
> make[1]: Entering directory `/build/salvi-libgstreamer-perl_0.15-2-amd64-vkJfHb/libgstreamer-perl-0.15'
> PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
> # Testing GStreamer 0.15
> # Compiled against libgstreamer 0.10.32
> # Running against libgstreamer 0.10.32.0
> t/Gst.t ................. ok
> t/GstBin.t .............. ok
>
> (GstBuffer.t:14431): GStreamer-CRITICAL **: gst_buffer_set_caps: assertion `caps == NULL || GST_CAPS_IS_SIMPLE (caps)' failed
>
> # Failed test at t/GstBuffer.t line 19.
> # got: undef
> # expected: 'EMPTY'
> # Looks like you failed 1 test of 14.
> t/GstBuffer.t ...........
> Dubious, test returned 1 (wstat 256, 0x100)
> Failed 1/14 subtests
> t/GstBus.t .............. ok
> t/GstCaps.t ............. ok
> t/GstChildProxy.t ....... ok
> t/GstClock.t ............ ok
>
> # Failed test at t/GstElement.t line 117.
> # got: 'none'
> # expected: undef
> # Looks like you failed 1 test of 39.
> t/GstElement.t ..........
> Dubious, test returned 1 (wstat 256, 0x100)
> Failed 1/39 subtests
> (less 2 skipped subtests: 36 okay)
> t/GstElementFactory.t ... ok
> t/GstEvent.t ............ ok
> t/GstFormat.t ........... ok
>
> (GstGhostPad.t:14604): GStreamer-CRITICAL **: gst_ghost_pad_new: assertion `!gst_pad_is_linked (target)' failed
> t/GstGhostPad.t ......... ok
> t/GstIndex.t ............ ok
> t/GstIndexFactory.t ..... ok
> t/GstIterator.t ......... ok
> t/GstMessage.t .......... ok
> t/GstMiniObject.t ....... ok
> t/GstObject.t ........... ok
> t/GstPad.t .............. ok
> t/GstPadTemplate.t ...... ok
> t/GstPipeline.t ......... ok
> t/GstPlugin.t ........... ok
> t/GstPluginFeature.t .... ok
> t/GstQuery.t ............ ok
>
> (gst-plugin-scanner:14658): GStreamer-WARNING **: Failed to load plugin './blib/arch/auto/GStreamer/GStreamer.so': ./blib/arch/auto/GStreamer/GStreamer.so: undefined symbol: gperl_callback_destroy
> t/GstRegistry.t ......... ok
> t/GstStructure.t ........ ok
> t/GstSystemClock.t ...... ok
> t/GstTag.t .............. ok
>
> # Failed test at t/GstTagSetter.t line 26.
> # Structures begin differing at:
> # $got->{title}[1] = Does not exist
> # $expected->{title}[1] = 'Urgs'
> # Looks like you failed 1 test of 3.
> t/GstTagSetter.t ........
> Dubious, test returned 1 (wstat 256, 0x100)
> Failed 1/3 subtests
> t/GstTypeFindFactory.t .. ok
> t/GstValue.t ............ ok
>
> Test Summary Report
> -------------------
> t/GstBuffer.t (Wstat: 256 Tests: 14 Failed: 1)
> Failed test: 3
> Non-zero exit status: 1
> t/GstElement.t (Wstat: 256 Tests: 39 Failed: 1)
> Failed test: 30
> Non-zero exit status: 1
> t/GstTagSetter.t (Wstat: 256 Tests: 3 Failed: 1)
> Failed test: 2
> Non-zero exit status: 1
> Files=31, Tests=511, 2 wallclock secs ( 0.14 usr 0.03 sys + 1.93 cusr 0.53 csys = 2.63 CPU)
> Result: FAIL
> Failed 3/31 test programs. 3/511 subtests failed.
> make[1]: *** [test_dynamic] Error 255
> make[1]: Leaving directory `/build/salvi-libgstreamer-perl_0.15-2-amd64-vkJfHb/libgstreamer-perl-0.15'
> dh_auto_test: make -j1 test returned exit code 2
> make: *** [build] Error 29
> dpkg-buildpackage: error: debian/rules build gave error exit status 2
Comment 1 Jeff King 2011-05-12 08:56:33 UTC
Created attachment 187682 [details] [review]
fix for broken gstbuffer test

The GstBuffer.t test looks bogus. We pass an empty Caps object, but set_caps now enforces that we actually give it something. So we can just make a fake one instead.
Comment 2 Jeff King 2011-05-12 08:59:01 UTC
Created attachment 187683 [details] [review]
patch for broken TagSetter test

It looks like the TagSetter code now removes duplicates when merging titles. We can still do our test by not providing exactly the same title.
Comment 3 Dominic Hargreaves 2011-05-12 09:23:46 UTC
Review of attachment 187682 [details] [review]:

Patch applies to Debian package 0.15-3 and the affect test passes when built with 0.10.33.
Comment 4 Dominic Hargreaves 2011-05-12 09:24:20 UTC
Review of attachment 187683 [details] [review]:

Patch applies to Debian package 0.15-3 and the affect test passes when built with 0.10.33.
Comment 5 Dominic Hargreaves 2011-05-12 09:25:28 UTC
Thanks for these fixes!

There is an additional test failure when built with gstreamer 0.10.33:

t/GstValue.t ............ 1/2 
#   Failed test at t/GstValue.t line 50.
#          got: 'urgs, fourcc=(fourcc)MJPG, int_range=(int)[ 23, 42 ], double_range=(double)[ 23, 42 ], value_list_int=(int){ 23, 42 }, value_list_int_range=(int){ [ 23, 42 ] }, value_array_int=(int)< 23, 42 >, value_array_int_range=(int)< [ 23, 42 ] >, fraction=(fraction)23/42, fraction_range=(fraction)[ 23/42, 42/23 ], date=(date)2001-09-09'
#     expected: 'urgs, fourcc=(fourcc)MJPG, int_range=(int)[ 23, 42 ], double_range=(double)[ 23, 42 ], value_list_int=(int){ 23, 42 }, value_list_int_range=(int){ [ 23, 42 ] }, value_array_int=(int)< 23, 42 >, value_array_int_range=(int)< [ 23, 42 ] >, fraction=(fraction)23/42, fraction_range=(fraction)[ 23/42, 42/23 ], date=(GstDate)2001-09-09'
# Looks like you failed 1 test of 2.
t/GstValue.t ............ Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/2 subtests
Comment 6 Dominic Hargreaves 2011-05-12 09:33:44 UTC
Created attachment 187688 [details] [review]
a fix for the broken GstValue test

A naive fix to match the new library behaviour. Not backwards compatible.
Comment 7 Dominic Hargreaves 2011-05-12 09:37:34 UTC
This leaves the following test to fix (and possibly a better fix for the GstValue problem which is backwards-compatible:

> # Failed test at t/GstElement.t line 117.
> # got: 'none'
> # expected: undef
> # Looks like you failed 1 test of 39.
> t/GstElement.t ..........
> Dubious, test returned 1 (wstat 256, 0x100)
> Failed 1/39 subtests
> (less 2 skipped subtests: 36 okay)
Comment 8 Dominic Hargreaves 2011-05-12 18:25:29 UTC
Created attachment 187729 [details] [review]
a fix for the broken GstElement test

A naive fix to match the new library behaviour. Not backwards compatible.
Comment 9 Torsten Schoenfeld 2011-05-14 10:54:20 UTC
Review of attachment 187683 [details] [review]:

Committed.  Thanks.
Comment 10 Torsten Schoenfeld 2011-05-14 10:54:38 UTC
Review of attachment 187682 [details] [review]:

Committed.  Thanks.
Comment 11 Torsten Schoenfeld 2011-05-14 10:55:52 UTC
Review of attachment 187688 [details] [review]:

I committed a different, backwards-compatible fix instead.
Comment 12 Torsten Schoenfeld 2011-05-14 10:56:06 UTC
Review of attachment 187729 [details] [review]:

I committed a different, backwards-compatible fix instead.
Comment 13 Torsten Schoenfeld 2011-05-14 10:56:51 UTC
All fixed in git now.  I'll try do roll a new release soon.  Thanks for your efforts.