GNOME Bugzilla – Bug 624490
test suite fails
Last modified: 2013-01-24 22:41:21 UTC
This is on Mandriva Cooker with gst-python 0.10.19 and gstreamer 0.10.30: make[3]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite' ......................................... (runtests.py:28678): GStreamer-WARNING **: Name name is not unique in bin bin, not adding (runtests.py:28678): GStreamer-WARNING **: Name name is not unique in bin bin, not adding (runtests.py:28678): GStreamer-WARNING **: Element name is not in bin bin (runtests.py:28678): GStreamer-WARNING **: Element name is not in bin bin . (runtests.py:28678): GStreamer-WARNING **: Name fakesrc0 is not unique in bin bin, not adding (runtests.py:28678): GStreamer-WARNING **: Element fakesrc0 is not in bin bin ....F (runtests.py:28678): GStreamer-CRITICAL **: Trying to dispose element bin, but it is in PAUSED instead of the NULL state. You need to explicitly set elements to the NULL state before dropping the final reference, to allow them to clean up. This problem may also be caused by a refcounting bug in the application or some element. E (runtests.py:28678): GStreamer-CRITICAL **: Trying to dispose element fakesink1, but it is in PAUSED instead of the NULL state. You need to explicitly set elements to the NULL state before dropping the final reference, to allow them to clean up. This problem may also be caused by a refcounting bug in the application or some element. (runtests.py:28678): GStreamer-CRITICAL **: Trying to dispose element fakesrc1, but it is in PAUSED instead of the NULL state. You need to explicitly set elements to the NULL state before dropping the final reference, to allow them to clean up. This problem may also be caused by a refcounting bug in the application or some element. .......................................................................................... ====================================================================== ERROR: testFake (test_bin.Preroll) ---------------------------------------------------------------------- Traceback (most recent call last):
+ Trace 222857
TestCase.tearDown(self)
self.gcverify()
self.failIf(new, new)
====================================================================== FAIL: testFake (test_bin.Preroll) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite/test_bin.py", line 174, in testFake self.assertEquals(ret[0], gst.STATE_CHANGE_SUCCESS) AssertionError: <enum GST_STATE_CHANGE_FAILURE of type GstStateChangeReturn> != <enum GST_STATE_CHANGE_SUCCESS of type GstStateChangeReturn> ---------------------------------------------------------------------- Ran 137 tests in 32.761s FAILED (failures=1, errors=1)
This is caused by a faulty pygobject in the unstable series. Try updating to latest pygobject and confirm the issue is gone.
With pygobject 2.21.5 it fails as well: ................................................................................EE.............. ====================================================================== ERROR: test_target (test_ghostpad.TargetTest) ---------------------------------------------------------------------- Traceback (most recent call last):
+ Trace 222864
ghost = gst.GhostPad("ghost_src", src)
====================================================================== ERROR: test_target (test_ghostpad.TargetTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/goetz/rpm/BUILD/gst-python-0.10.19/testsuite/common.py", line 204, in tearDown self.gcverify() File "/home/goetz/rpm/BUILD/gst-python-0.10.19/testsuite/common.py", line 175, in gcverify self.failIf(new, new) AssertionError: [<GstPad (---:src) at 82e40c8>] ---------------------------------------------------------------------- Ran 137 tests in 20.749s FAILED (errors=2)
I tried with pygobject HEAD and pygobject 2.21.5 on ubuntu lucid. I can't reproduce the issue.
does still happen in a newest version?
It still fails: + export LC_ALL=C + LC_ALL=C + make check make check-recursive make[1]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19' Making check in common make[2]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/common' Making check in m4 make[3]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/common/m4' make[3]: Nothing to be done for `check'. make[3]: Leaving directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/common/m4' make[3]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/common' make[3]: Nothing to be done for `check-am'. make[3]: Leaving directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/common' make[2]: Leaving directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/common' Making check in codegen make[2]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/codegen' make[2]: Nothing to be done for `check'. make[2]: Leaving directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/codegen' Making check in gst make[2]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/gst' Making check in extend make[3]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/gst/extend' make[3]: Nothing to be done for `check'. make[3]: Leaving directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/gst/extend' make[3]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/gst' make[3]: Nothing to be done for `check-am'. make[3]: Leaving directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/gst' make[2]: Leaving directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/gst' Making check in examples make[2]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/examples' make[2]: Nothing to be done for `check'. make[2]: Leaving directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/examples' Making check in plugin make[2]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/plugin' make[2]: Nothing to be done for `check'. make[2]: Leaving directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/plugin' Making check in testsuite make[2]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite' make check-local make[3]: Entering directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite' ** Message: pygobject_register_sinkfunc is deprecated (GstObject) ** Message: pygobject_register_sinkfunc is deprecated (GstObject) ......................................... (runtests.py:7581): GStreamer-WARNING **: Name name is not unique in bin bin, not adding (runtests.py:7581): GStreamer-WARNING **: Name name is not unique in bin bin, not adding (runtests.py:7581): GStreamer-WARNING **: Element name is not in bin bin (runtests.py:7581): GStreamer-WARNING **: Element name is not in bin bin . (runtests.py:7581): GStreamer-WARNING **: Name fakesrc0 is not unique in bin bin, not adding (runtests.py:7581): GStreamer-WARNING **: Element fakesrc0 is not in bin bin ....F (runtests.py:7581): GStreamer-CRITICAL **: Trying to dispose element bin, but it is in PAUSED instead of the NULL state. You need to explicitly set elements to the NULL state before dropping the final reference, to allow them to clean up. This problem may also be caused by a refcounting bug in the application or some element. E (runtests.py:7581): GStreamer-CRITICAL **: Trying to dispose element fakesink1, but it is in PAUSED instead of the NULL state. You need to explicitly set elements to the NULL state before dropping the final reference, to allow them to clean up. This problem may also be caused by a refcounting bug in the application or some element. (runtests.py:7581): GStreamer-CRITICAL **: Trying to dispose element fakesrc1, but it is in PAUSED instead of the NULL state. You need to explicitly set elements to the NULL state before dropping the final reference, to allow them to clean up. This problem may also be caused by a refcounting bug in the application or some element. .......................................................................................... ====================================================================== ERROR: testFake (test_bin.Preroll) ---------------------------------------------------------------------- Traceback (most recent call last):
+ Trace 223424
====================================================================== FAIL: testFake (test_bin.Preroll) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite/test_bin.py", line 174, in testFake self.assertEquals(ret[0], gst.STATE_CHANGE_SUCCESS) AssertionError: <enum GST_STATE_CHANGE_FAILURE of type GstStateChangeReturn> != <enum GST_STATE_CHANGE_SUCCESS of type GstStateChangeReturn> ---------------------------------------------------------------------- Ran 137 tests in 26.181s FAILED (failures=1, errors=1) make[3]: *** [check-local] Error 1 make[3]: Leaving directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite' make[2]: *** [check-am] Error 2 make[2]: Leaving directory `/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite' make[1]: *** [check-recursive] Error 1
Getting the following on latest Fedora 15 ====================================================================== ERROR: testFake (test_bin.Preroll) ---------------------------------------------------------------------- Traceback (most recent call last):
+ Trace 228848
====================================================================== FAIL: testFake (test_bin.Preroll) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/cschalle/gst/gst-python/testsuite/test_bin.py", line 174, in testFake self.assertEquals(ret[0], gst.STATE_CHANGE_SUCCESS) AssertionError: <enum GST_STATE_CHANGE_FAILURE of type GstStateChangeReturn> != <enum GST_STATE_CHANGE_SUCCESS of type GstStateChangeReturn> ---------------------------------------------------------------------- Ran 160 tests in 41.439s FAILED (failures=1, errors=1)
Same here on f16. It seems like there are reference counting bugs in the python plugin: http://people.fedoraproject.org/~dmalcolm/gcc-python-plugin/2012-02-10/gstreamer-python-0.10.19-2.fc15/ Corresponding bug report: https://bugzilla.redhat.com/show_bug.cgi?id=789467
Not happening in latest 0.10 gst-python
Closing this bug now, gst-python is only an extension module to pygi now and this bug doesn't make much sense anymore in this context.
*** Bug 692479 has been marked as a duplicate of this bug. ***