GNOME Bugzilla – Bug 348454
GStreamer 0.08: test failure in the date stuff in GstValue.t
Last modified: 2006-08-26 18:05:54 UTC
Steps to reproduce: 1. see http://bugzilla.gnome.org/show_bug.cgi?id=348450 2. 3. Stack trace: Other information: See the to be uploaded log file
Created attachment 69446 [details] 'make test' log file The failing 'make test' log file.
That's the same issue as #343835. You need to install gst-plugins-base to run the test suite. *** This bug has been marked as a duplicate of 343835 ***
How can installation of something fix a syntax error: " t/Gst...................WARNING **: error: syntax error, unexpected $end, expecting LINK at t/Gst.t line 47. " ? Why doesn't the test suite check presence of the required plugins and tell user in normal English that certain plugin is missing ? I've done search for 'gst-plugins-base' in the log file and it is not found. Should I file a separate bug report about error messages user unfriendliness ?
The syntax error is not Perl-related and actually on purpose. It occurs because I want to test the exception stuff in GStreamer::parse_launch. Yeah, it would be nice if the test suite warned you that the alsa elements are missing and that you should try to install gst-plugins-base. I'll happily accept patches that implement this.
I have added gst-plugins-base-0.10.7 with ALSA, and 'make test' still fails. I have also noticed more than 100% of test failures. I am about to upload relevant files.
Created attachment 69470 [details] 'configure' log for 'gst-plugins-base-0.10.7' inidcating that ALSA is there Please pay attention to these lines: " configure: *** Plug-ins with dependencies that will be built: gstalsa ".
Created attachment 69471 [details] overall build log The interesting line numbers are 250..383.
Created attachment 69472 [details] latest 'make test' log with more than 100% failures Please pay attention to numbers under 'Failed' column: " Failed Test Stat Wstat Total Fail Failed List of Failed ------------------------------------------------------------------------------- t/GstBin.t 255 65280 9 16 177.78% 2-9 t/GstChildProxy.t 255 65280 8 14 175.00% 2-8 t/GstClock.t 255 65280 20 40 200.00% 1-20 t/GstElement.t 255 65280 36 65 180.56% 3-36 t/GstIndex.t 255 65280 15 20 133.33% 6-15 t/GstIterator.t 255 65280 32 64 200.00% 1-32 t/GstMessage.t 255 65280 70 140 200.00% 1-70 t/GstPlugin.t 255 65280 13 25 192.31% 1-13 t/GstPluginFeature.t 255 65280 5 9 180.00% 1-5 t/GstRegistry.t 255 65280 21 38 180.95% 3-21 t/GstTypeFindFactory.t 255 65280 2 3 150.00% 1-2 t/GstValue.t 1 256 2 1 50.00% 2 ".
The test failures are still the same. The alsa elements (alsasink and alsasrc) still cannot be found. When you execute the following in the same environment you build the bindings in, what's the output? # gst-inspect alsasink # gst-inspect alsasrc If it's something like "No such element or plugin 'alsasink'", something is not correct with your environment and you need to fix that first. Alternatively, you could improve the test suite by skipping the relevant tests if the alsa elements are not present. If you do, please provide a patch so I can incorporate the changes.
(In reply to comment #9) > The test failures are still the same. The alsa elements (alsasink and alsasrc) > still cannot be found. When you execute the following in the same environment > you build the bindings in, what's the output? > > # gst-inspect alsasink > # gst-inspect alsasrc > > If it's something like "No such element or plugin 'alsasink'", something is not > correct with your environment and you need to fix that first. > > Alternatively, you could improve the test suite by skipping the relevant tests > if the alsa elements are not present. If you do, please provide a patch so I > can incorporate the changes. > Should I open a separate bug report regarding more than 100% failures ? I will work on the ALSA (gst-inspect alsasink, gst-inspect alsasrc) issue.
The bogus percentage numbers appear to be a bug in Test::Harness (or maybe Test::More). The place to file bugs against these is http://rt.cpan.org
I have rebuilt install/gst-plugins-base-0.10.7 with '--enable-alsa' 'configure' option, and now 'alsasink' appears to be there: " [37] 23:27 sergei@comp.home.net:/mnt/removable4/sergei/build_work> grep -ri alsasink `pwd`/install/gst-plugins-base-0.10.7/ Binary file /mnt/removable4/sergei/build_work/install/gst-plugins-base-0.10.7/lib/gstreamer-0.10/libgstplaybin.so matches Binary file /mnt/removable4/sergei/build_work/install/gst-plugins-base-0.10.7/lib/gstreamer-0.10/libgstplaybin.a matches Binary file /mnt/removable4/sergei/build_work/install/gst-plugins-base-0.10.7/lib/gstreamer-0.10/libgstalsa.so matches Binary file /mnt/removable4/sergei/build_work/install/gst-plugins-base-0.10.7/lib/gstreamer-0.10/libgstalsa.a matches [38] 23:27 sergei@comp.home.net:/mnt/removable4/sergei/build_work> ". However, 'make test' still fails: " PERL_DL_NONLAZY=1 /usr/bin/perl5.8.7 -I . -I /mnt/removable4/sergei/build_work/install/Glib-1.120/lib/perl5/site_perl/5.8.7/i386-linux "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/Gst...................WARNING **: error: syntax error, unexpected $end, expecting LINK at t/Gst.t line 47. ok t/GstBin................Can't call method "create" on an undefined value at t/GstBin.t line 14. # Looks like you planned 9 tests but only ran 1. # Looks like your test died just after 1. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 2-9 Failed 8/9 tests, 11.11% okay t/GstBuffer.............ok t/GstBus................ok t/GstCaps...............ok t/GstChildProxy.........undef is not of type GStreamer::Element at t/GstChildProxy.t line 14. # Looks like you planned 8 tests but only ran 1. # Looks like your test died just after 1. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 2-8 Failed 7/8 tests, 12.50% okay t/GstClock..............Can't call method "provide_clock" on an undefined value at t/GstClock.t line 12. # Looks like your test died before it could output anything. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 1-20 Failed 20/20 tests, 0.00% okay t/GstElement............ # Failed test (t/GstElement.t at line 20) # The object isn't defined # Failed test (t/GstElement.t at line 21) # The object isn't defined # Failed test (t/GstElement.t at line 24) # The object isn't defined Can't call method "requires_clock" on an undefined value at t/GstElement.t line 26. # Looks like you planned 36 tests but only ran 5. # Looks like your test died just after 5. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 3-36 Failed 34/36 tests, 5.56% okay t/GstElementFactory.....ok t/GstEvent..............ok t/GstFormat.............ok t/GstGhostPad...........ok t/GstIndex..............undef is not of type GStreamer::Object at t/GstIndex.t line 36. # Looks like you planned 15 tests but only ran 5. # Looks like your test died just after 5. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 6-15 Failed 10/15 tests, 33.33% okay t/GstIndexFactory.......ok t/GstIterator...........Can't call method "create" on an undefined value at t/GstIterator.t line 13. # Looks like your test died before it could output anything. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 1-32 Failed 32/32 tests, 0.00% okay t/GstMessage............undef is not of type GStreamer::Object at t/GstMessage.t line 15. # Looks like your test died before it could output anything. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 1-70 Failed 70/70 tests, 0.00% okay t/GstMiniObject.........ok t/GstObject.............ok t/GstPad................ok t/GstPadTemplate........ok t/GstPipeline...........ok t/GstPlugin............. # Failed test (t/GstPlugin.t at line 12) # The object isn't defined Can't call method "get_name" on an undefined value at t/GstPlugin.t line 14. # Looks like you planned 13 tests but only ran 1. # Looks like your test died just after 1. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 1-13 Failed 13/13 tests, 0.00% okay t/GstPluginFeature...... # Failed test (t/GstPluginFeature.t at line 11) # The object isn't defined Can't call method "load" on an undefined value at t/GstPluginFeature.t line 13. # Looks like you planned 5 tests but only ran 1. # Looks like your test died just after 1. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 1-5 Failed 5/5 tests, 0.00% okay t/GstQuery..............GLib-GObject-CRITICAL **: g_value_get_double: assertion `G_VALUE_HOLDS_DOUBLE (value)' failed at t/GstQuery.t line 52. GLib-GObject-CRITICAL **: g_value_get_int64: assertion `G_VALUE_HOLDS_INT64 (value)' failed at t/GstQuery.t line 52. GLib-GObject-CRITICAL **: g_value_get_int64: assertion `G_VALUE_HOLDS_INT64 (value)' failed at t/GstQuery.t line 52. ok t/GstRegistry...........undef is not of type GStreamer::Plugin at t/GstRegistry.t line 18. # Looks like you planned 21 tests but only ran 2. # Looks like your test died just after 2. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 3-21 Failed 19/21 tests, 9.52% okay t/GstStructure..........ok t/GstSystemClock........ok t/GstTag................ok t/GstTagSetter..........ok 3/3 skipped: tagger tests -- vorbisenc not found t/GstTypeFindFactory.... # Failed test (t/GstTypeFindFactory.t at line 11) # The object isn't defined Can't call method "get_extensions" on an undefined value at t/GstTypeFindFactory.t line 14. # Looks like you planned 2 tests but only ran 1. # Looks like your test died just after 1. dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 1-2 Failed 2/2 tests, 0.00% okay t/GstValue.............. # Failed test (t/GstValue.t at line 26) # Structures begin differing at: # $got->{fields}[3][2] = '999982800' # $expected->{fields}[3][2] = '999986400' # Looks like you failed 1 test of 2. dubious Test returned status 1 (wstat 256, 0x100) DIED. FAILED test 2 Failed 1/2 tests, 50.00% okay Failed Test Stat Wstat Total Fail Failed List of Failed ------------------------------------------------------------------------------- t/GstBin.t 255 65280 9 16 177.78% 2-9 t/GstChildProxy.t 255 65280 8 14 175.00% 2-8 t/GstClock.t 255 65280 20 40 200.00% 1-20 t/GstElement.t 255 65280 36 65 180.56% 3-36 t/GstIndex.t 255 65280 15 20 133.33% 6-15 t/GstIterator.t 255 65280 32 64 200.00% 1-32 t/GstMessage.t 255 65280 70 140 200.00% 1-70 t/GstPlugin.t 255 65280 13 25 192.31% 1-13 t/GstPluginFeature.t 255 65280 5 9 180.00% 1-5 t/GstRegistry.t 255 65280 21 38 180.95% 3-21 t/GstTypeFindFactory.t 255 65280 2 3 150.00% 1-2 t/GstValue.t 1 256 2 1 50.00% 2 3 subtests skipped. Failed 12/31 test scripts, 61.29% okay. 221/495 subtests failed, 55.35% okay. make: *** [test_dynamic] Error 1 ".
Looks like the bindinds are still unable to find the elements. What do the gst-inspect commands print?
OK, I've made some progress with plugins, and now the amount of failing tests is much smaller. Version is now GStreamer-0.08. Here are contents of make_test.log: " PERL_DL_NONLAZY=1 /usr/bin/perl5.8.7 -I . -I /mnt/removable4/sergei/build_work/install/Glib-1.120/lib/perl5/site_perl/5.8.7/i386-linux "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/Gst...................WARNING **: error: syntax error, unexpected $end, expecting LINK at t/Gst.t line 47. ok t/GstBin................ok t/GstBuffer.............ok t/GstBus................ok t/GstCaps...............ok t/GstChildProxy.........ok t/GstClock..............ok 2/20 skipped: master clock tests t/GstElement............ (GstElement.t:16901): GStreamer-CRITICAL **: gst_object_ref: assertion `GST_IS_OBJECT (object)' failed (GstElement.t:16901): GStreamer-CRITICAL **: gst_mini_object_unref: assertion `mini_object->refcount > 0' failed ok t/GstElementFactory.....ok t/GstEvent..............ok t/GstFormat.............ok t/GstGhostPad...........ok t/GstIndex..............ok t/GstIndexFactory.......ok t/GstIterator...........ok t/GstMessage............ok t/GstMiniObject.........ok t/GstObject.............ok t/GstPad................ok t/GstPadTemplate........ok t/GstPipeline...........ok t/GstPlugin.............ok 1/13 skipped: alsa plugin tests t/GstPluginFeature......ok t/GstQuery..............GLib-GObject-CRITICAL **: g_value_get_double: assertion `G_VALUE_HOLDS_DOUBLE (value)' failed at t/GstQuery.t line 52. GLib-GObject-CRITICAL **: g_value_get_int64: assertion `G_VALUE_HOLDS_INT64 (value)' failed at t/GstQuery.t line 52. GLib-GObject-CRITICAL **: g_value_get_int64: assertion `G_VALUE_HOLDS_INT64 (value)' failed at t/GstQuery.t line 52. ok t/GstRegistry...........ok t/GstStructure..........ok t/GstSystemClock........ok t/GstTag................ok t/GstTagSetter..........ok 3/3 skipped: tagger tests -- vorbisenc not found t/GstTypeFindFactory....ok t/GstValue.............. # Failed test (t/GstValue.t at line 26) # Structures begin differing at: # $got->{fields}[3][2] = '999982800' # $expected->{fields}[3][2] = '999986400' # Looks like you failed 1 test of 2. dubious Test returned status 1 (wstat 256, 0x100) DIED. FAILED test 2 Failed 1/2 tests, 50.00% okay Failed Test Stat Wstat Total Fail Failed List of Failed ------------------------------------------------------------------------------- t/GstValue.t 1 256 2 1 50.00% 2 6 subtests skipped. Failed 1/31 test scripts, 96.77% okay. 1/495 subtests failed, 99.80% okay. make: *** [test_dynamic] Error 1 ". And this is what 'gst-inspect' shows: " [85] 16:36 sergei@comp.home.net:/ibm/home/sergei> /mnt/removable4/sergei/build_work/install/gstreamer-0.10.6/binsh/gst-inspect-0.10 xvimagesink: xvimagesink: Video sink ximagesink: ximagesink: Video sink volume: volume: Volume videotestsrc: videotestsrc: Video test source videoscale: videoscale: Video scaler videorate: videorate: Video rate adjuster video4linux: v4lsrc: Video (video4linux/raw) Source typefindfunctions: video/x-dirac: no extensions typefindfunctions: application/x-ms-dos-executable: dll, exe, ocx, sys, scr, msstyles, cpl typefindfunctions: application/x-ar: a typefindfunctions: application/x-tar: tar typefindfunctions: application/x-rar: rar typefindfunctions: audio/x-wavpack-correction: wvc typefindfunctions: audio/x-wavpack: wv, wvp typefindfunctions: audio/x-spc: spc typefindfunctions: adts_mpeg_stream: aac typefindfunctions: application/x-executable: no extensions typefindfunctions: text/x-cmml: no extensions typefindfunctions: application/x-ogg-skeleton: no extensions typefindfunctions: audio/x-speex: no extensions typefindfunctions: application/x-ogm-text: no extensions typefindfunctions: application/x-ogm-audio: no extensions typefindfunctions: application/x-ogm-video: no extensions typefindfunctions: video/x-theora: no extensions typefindfunctions: audio/x-vorbis: no extensions typefindfunctions: application/x-compress: Z typefindfunctions: application/zip: zip typefindfunctions: application/x-gzip: gz typefindfunctions: application/x-bzip: bz2 typefindfunctions: image/x-sun-raster: ras typefindfunctions: image/x-xpixmap: xpm typefindfunctions: image/x-jng: jng typefindfunctions: video/x-mng: mng typefindfunctions: image/x-xcf: xcf typefindfunctions: audio/x-sid: sid typefindfunctions: audio/iLBC-sh: ilbc typefindfunctions: audio/x-amr-wb-sh: amr typefindfunctions: audio/x-amr-nb-sh: amr typefindfunctions: video/x-dv: dv, dif typefindfunctions: video/x-matroska: mkv, mka typefindfunctions: image/tiff: tif, tiff typefindfunctions: image/bmp: bmp typefindfunctions: image/png: png typefindfunctions: image/gif: gif typefindfunctions: image/jpeg: jpg, jpe, jpeg typefindfunctions: application/x-ape: ape typefindfunctions: audio/x-shorten: shn typefindfunctions: audio/x-w64: w64 typefindfunctions: audio/x-ircam: sf typefindfunctions: audio/x-sds: sds typefindfunctions: audio/x-voc: voc typefindfunctions: audio/x-nist: nist typefindfunctions: audio/x-paris: paf typefindfunctions: audio/x-svx: iff, svx typefindfunctions: audio/x-aiff: aiff, aif, aifc typefindfunctions: audio/x-wav: wav typefindfunctions: application/xml: xml typefindfunctions: application/smil: smil typefindfunctions: text/uri-list: ram typefindfunctions: text/plain: txt typefindfunctions: video/x-flv: flv typefindfunctions: application/x-shockwave-flash: swf, swfl typefindfunctions: application/vnd.rn-realmedia: ra, ram, rm, rmvb typefindfunctions: video/quicktime: mov typefindfunctions: application/x-3gp: 3gp typefindfunctions: audio/x-m4a: m4a typefindfunctions: video/mpeg4: m4v typefindfunctions: video/mpeg-stream: mpv, mpeg, mpg typefindfunctions: video/mpeg: mpv, mpeg, mpg typefindfunctions: application/ogg: anx, ogg, ogm typefindfunctions: video/mpegts: ts typefindfunctions: video/mpeg2: mpe, mpeg, mpg typefindfunctions: video/mpeg1: mpe, mpeg, mpg typefindfunctions: audio/x-ac3: ac3 typefindfunctions: audio/mpeg: mp3, mp2, mp1, mpga typefindfunctions: audio/x-mod: 669, amf, dsm, gdm, far, imf, it, med, mod, mtm, okt, sam, s3m, stm, stx, ult, xm typefindfunctions: audio/x-ttafile: tta typefindfunctions: application/x-apetag: ape, mpc, wv typefindfunctions: application/x-id3v1: mp3, mp2, mp1, mpga, ogg, flac, tta typefindfunctions: application/x-id3v2: mp3, mp2, mp1, mpga, ogg, flac, tta typefindfunctions: video/x-fli: flc, fli typefindfunctions: audio/x-flac: flac typefindfunctions: video/x-vcd: dat typefindfunctions: video/x-cdxa: dat typefindfunctions: video/x-msvideo: avi typefindfunctions: audio/x-au: au, snd typefindfunctions: audio/x-musepack: mpc typefindfunctions: video/x-ms-asf: asf, wm, wma, wmv tcp: multifdsink: Multi filedescriptor sink tcp: tcpserversrc: TCP server source tcp: tcpserversink: TCP server sink tcp: tcpclientsrc: TCP client source tcp: tcpclientsink: TCP client sink subparse: ssaparse: SSA Subtitle Parser subparse: subparse: Subtitle parser subparse: subparse_typefind: srt, sub, mpsub, mdvd playbin: playbin: Player Bin ffmpegcolorspace: ffmpegcolorspace: FFMPEG Colorspace converter decodebin: decodebin: Decoder Bin audiotestsrc: audiotestsrc: Audio test source audioresample: audioresample: Audio scaler audiorate: audiorate: Audio rate adjuster audioconvert: audioconvert: Audio converter alsa: alsasink: Audio sink (ALSA) alsa: alsasrc: Audio source (ALSA) alsa: alsamixer: Alsa mixer adder: adder: Adder coreindexers: fileindex: A index that stores entries in file coreindexers: memindex: A index that stores entries in memory coreelements: typefind: TypeFind coreelements: tee: Tee pipe fitting coreelements: filesink: File Sink coreelements: queue: Queue coreelements: identity: Identity coreelements: filesrc: File Source coreelements: fdsink: Filedescriptor Sink coreelements: fdsrc: Disk Source coreelements: fakesink: Fake Sink coreelements: fakesrc: Fake Source coreelements: capsfilter: CapsFilter staticelements: bin: Generic bin staticelements: pipeline: Pipeline object Total plugins: 22 Total features: 122 [86] 16:36 sergei@comp.home.net:/ibm/home/sergei> ".
> t/GstValue.............. > # Failed test (t/GstValue.t at line 26) > # Structures begin differing at: > # $got->{fields}[3][2] = '999982800' > # $expected->{fields}[3][2] = '999986400' > # Looks like you failed 1 test of 2. Hmm, this is weird. Can you please try to apply the attached patch against GStreamer-0.8, execute t/GstValue.t, and post the output? $ [extract GStreamer-0.8.tar.gz] $ cd GStreamer-0.8 $ patch -p0 < /path/to/date.patch $ [compile GStreamer like you would normally] $ perl -Mblib t/GstValue.t
Created attachment 71521 [details] [review] Adding some debug spew
I meant GStreamer-0.08 and not 0.8 of course.
(In reply to comment #15) > > t/GstValue.............. > > # Failed test (t/GstValue.t at line 26) > > # Structures begin differing at: > > # $got->{fields}[3][2] = '999982800' > > # $expected->{fields}[3][2] = '999986400' > > # Looks like you failed 1 test of 2. > > Hmm, this is weird. Can you please try to apply the attached patch against > GStreamer-0.8, execute t/GstValue.t, and post the output? > > $ [extract GStreamer-0.8.tar.gz] > $ cd GStreamer-0.8 > $ patch -p0 < /path/to/date.patch > $ [compile GStreamer like you would normally] > $ perl -Mblib t/GstValue.t > Applied patch, make test output below (after building, etc): [cweyl@zeus GStreamer-0.09]$ make test PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/Gst...................ok t/GstBin................ok t/GstBuffer.............ok t/GstBus................ok t/GstCaps...............ok t/GstChildProxy.........ok t/GstClock..............ok 2/20 skipped: master clock tests t/GstElement............ok 1/36 (GstElement.t:28311): GStreamer-CRITICAL **: gst_object_ref: assertion `GST_IS_OBJECT (object)' failed (GstElement.t:28311): GStreamer-CRITICAL **: gst_mini_object_unref: assertion `mini_object->refcount > 0' failed t/GstElement............ok t/GstElementFactory.....ok t/GstEvent..............ok t/GstFormat.............ok t/GstGhostPad...........ok t/GstIndex..............ok t/GstIndexFactory.......ok t/GstIterator...........ok t/GstMessage............ok t/GstMiniObject.........ok t/GstObject.............ok t/GstPad................ok t/GstPadTemplate........ok t/GstPipeline...........ok t/GstPlugin.............ok 1/13 skipped: alsa plugin tests t/GstPluginFeature......ok t/GstQuery..............ok 1/22GLib-GObject-CRITICAL **: g_value_get_double: assertion `G_VALUE_HOLDS_DOUBLE (value)' failed at t/GstQuery.t line 52. GLib-GObject-CRITICAL **: g_value_get_int64: assertion `G_VALUE_HOLDS_INT64 (value)' failed at t/GstQuery.t line 52. GLib-GObject-CRITICAL **: g_value_get_int64: assertion `G_VALUE_HOLDS_INT64 (value)' failed at t/GstQuery.t line 52. t/GstQuery..............ok t/GstRegistry...........ok t/GstStructure..........ok t/GstSystemClock........ok t/GstTag................ok t/GstTagSetter..........ok t/GstTypeFindFactory....ok t/GstValue..............gst2perl_date_unwrap: Sat 08 Sep 2001 12:00:00 AM at t/GstValue.t line 23. # Failed test in t/GstValue.t at line 25. t/GstValue..............NOK 1# got: 'urgs, field_one=(int)[ 23, 42 ], field_two=(int){ 23, 42 }, field_three=(int){ [ 23, 42 ] }, field_four=(GstDate)2001-09-08' # expected: 'urgs, field_one=(int)[ 23, 42 ], field_two=(int){ 23, 42 }, field_three=(int){ [ 23, 42 ] }, field_four=(GstDate)2001-09-09' gst2perl_date_wrap: Sat 08 Sep 2001 12:00:00 AM at t/GstValue.t line 26. t/GstValue..............NOK 2# Failed test in t/GstValue.t at line 26. # Structures begin differing at: # $got->{fields}[3][2] = '999932400' # $expected->{fields}[3][2] = '999986400' # Looks like you failed 2 tests of 2. t/GstValue..............dubious Test returned status 2 (wstat 512, 0x200) DIED. FAILED tests 1-2 Failed 2/2 tests, 0.00% okay Failed Test Stat Wstat Total Fail Failed List of Failed ------------------------------------------------------------------------------- t/GstValue.t 2 512 2 2 100.00% 1-2 3 subtests skipped. Failed 1/31 test scripts, 96.77% okay. 2/492 subtests failed, 99.59% okay. make: *** [test_dynamic] Error 2
I don't know if it's relevant, but my machine is fedora core 5 w/all updates applied, and is x86_64.
OK, I think I found the problem. It seems to be timezone related. The hardcoded timestamp in GstValue.t only meant what I wanted it to mean in my timezone. Rather egocentric. Please try the attached patch.
Created attachment 71551 [details] [review] Setting timezone to UTC
Works for me: PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/Gst...................ok t/GstBin................ok t/GstBuffer.............ok t/GstBus................ok t/GstCaps...............ok t/GstChildProxy.........ok t/GstClock..............ok 2/20 skipped: master clock tests t/GstElement............ok 1/36 (GstElement.t:379): GStreamer-CRITICAL **: gst_object_ref: assertion `GST_IS_OBJECT (object)' failed (GstElement.t:379): GStreamer-CRITICAL **: gst_mini_object_unref: assertion `mini_object->refcount > 0' failed t/GstElement............ok t/GstElementFactory.....ok t/GstEvent..............ok t/GstFormat.............ok t/GstGhostPad...........ok t/GstIndex..............ok t/GstIndexFactory.......ok t/GstIterator...........ok t/GstMessage............ok t/GstMiniObject.........ok t/GstObject.............ok t/GstPad................ok t/GstPadTemplate........ok t/GstPipeline...........ok t/GstPlugin.............ok 1/13 skipped: alsa plugin tests t/GstPluginFeature......ok t/GstQuery..............ok 1/22GLib-GObject-CRITICAL **: g_value_get_double: assertion `G_VALUE_HOLDS_DOUBLE (value)' failed at t/GstQuery.t line 52. GLib-GObject-CRITICAL **: g_value_get_int64: assertion `G_VALUE_HOLDS_INT64 (value)' failed at t/GstQuery.t line 52. GLib-GObject-CRITICAL **: g_value_get_int64: assertion `G_VALUE_HOLDS_INT64 (value)' failed at t/GstQuery.t line 52. t/GstQuery..............ok t/GstRegistry...........ok t/GstStructure..........ok t/GstSystemClock........ok t/GstTag................ok t/GstTagSetter..........ok t/GstTypeFindFactory....ok t/GstValue..............ok All tests successful, 3 subtests skipped. Files=31, Tests=492, 11 wallclock secs ( 7.66 cusr + 1.68 csys = 9.34 CPU)
OK. Committed to HEAD of CVS.