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 624490 - test suite fails
test suite fails
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-python
0.10.19
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
: 692479 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2010-07-15 20:30 UTC by Götz Waschk
Modified: 2013-01-24 22:41 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Götz Waschk 2010-07-15 20:30:05 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):
  • File "/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite/test_bin.py", line 146 in tearDown
    TestCase.tearDown(self)
  • File "/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite/common.py", line 204 in tearDown
    self.gcverify()
  • File "/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite/common.py", line 175 in gcverify
    self.failIf(new, new)
AssertionError: [<__main__.GstFakeSrc object (fakesrc1) at 0x83dedec>, <__main__.GstFakeSink object (fakesink1) at 0x83dee64>]

======================================================================
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)
Comment 1 Edward Hervey 2010-07-16 06:34:05 UTC
This is caused by a faulty pygobject in the unstable series. Try updating to latest pygobject and confirm the issue is gone.
Comment 2 Götz Waschk 2010-07-16 08:49:37 UTC
With pygobject 2.21.5 it fails as well:

................................................................................EE..............
======================================================================
ERROR: test_target (test_ghostpad.TargetTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  • File "/home/goetz/rpm/BUILD/gst-python-0.10.19/testsuite/test_ghostpad.py", line 184 in test_target
    ghost = gst.GhostPad("ghost_src", src)
RuntimeError: could not create GstGhostPad object

======================================================================
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)
Comment 3 Alessandro Decina 2010-07-16 10:40:06 UTC
I tried with pygobject HEAD and pygobject 2.21.5 on ubuntu lucid. I can't reproduce the issue.
Comment 4 Felipe Besoaín Pino 2010-08-26 19:38:49 UTC
does still happen in a newest version?
Comment 5 Götz Waschk 2010-08-27 06:37:43 UTC
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):
  • File "/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite/test_bin.py", line 146 in tearDown
    TestCase.tearDown(self)
  • File "/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite/common.py", line 204 in tearDown
    self.gcverify()
  • File "/home/goetz/svn/gstreamer0.10-python/BUILD/gst-python-0.10.19/testsuite/common.py", line 175 in gcverify
    self.failIf(new, new)
AssertionError: [<__main__.GstFakeSrc object (fakesrc1) at 0x8524c84>, <__main__.GstFakeSink object (fakesink1) at 0x8524cac>]

======================================================================
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
Comment 6 Christian Fredrik Kalager Schaller 2011-10-19 12:45:04 UTC
Getting the following on latest Fedora 15

======================================================================
ERROR: testFake (test_bin.Preroll)
----------------------------------------------------------------------
Traceback (most recent call last):
  • File "/home/cschalle/gst/gst-python/testsuite/test_bin.py", line 146 in tearDown
    TestCase.tearDown(self)
  • File "/home/cschalle/gst/gst-python/testsuite/common.py", line 204 in tearDown
    self.gcverify()
  • File "/home/cschalle/gst/gst-python/testsuite/common.py", line 175 in gcverify
    self.failIf(new, new)
AssertionError: [<__main__.GstFakeSrc object (fakesrc16) at 0xb734902c>, <__main__.GstFakeSink object (fakesink15) at 0xb7361a2c>]

======================================================================
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)
Comment 7 Thomas Spura 2012-04-28 11:51:34 UTC
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
Comment 8 Luis de Bethencourt 2012-05-23 08:50:46 UTC
Not happening in latest 0.10 gst-python
Comment 9 Sebastian Dröge (slomo) 2012-12-17 11:39:26 UTC
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.
Comment 10 Tim-Philipp Müller 2013-01-24 22:41:21 UTC
*** Bug 692479 has been marked as a duplicate of this bug. ***