gstreamer/testsuite/test_element.py
Johan Dahlin f203f4826c testsuite/pipeline.py (PipelineConstructor.testGoodConstructor) (PipelineConstructor.testBadConstruct)
Original commit message from CVS:
* testsuite/pipeline.py (PipelineConstructor.testGoodConstructor)
(PipelineConstructor.testBadConstruct)
(ThreadConstructor.testCreate): New tests

* testsuite/element.py (ElementTest.testGoodConstructor): Add
isinstance(element, gst.Element) test

* testsuite/common.py: Clean up, use ltihooks
(init) Assign tp_new for pipeline and thread to PyType_GenericNew
for now.
2004-04-16 13:56:39 +00:00

56 lines
1.7 KiB
Python

#!/usr/bin/python
#
# testsuite for gstreamer.Element
from common import gst, unittest
class ElementTest(unittest.TestCase):
name = 'fakesink'
alias = 'sink'
def testBadConstruct(self):
self.assertRaises(TypeError, gst.Element)
self.assertRaises(TypeError, gst.Element, None)
def testGoodConstructor(self):
element = gst.Element(self.name, self.alias)
assert element is not None, 'element is None'
assert isinstance(element, gst.Element)
assert element.get_name() == self.alias
class FakeSinkTest(ElementTest):
FAKESINK_STATE_ERROR_NONE = "0"
FAKESINK_STATE_ERROR_NULL_READY, = "1"
FAKESINK_STATE_ERROR_READY_PAUSED, = "2"
FAKESINK_STATE_ERROR_PAUSED_PLAYING = "3"
FAKESINK_STATE_ERROR_PLAYING_PAUSED = "4"
FAKESINK_STATE_ERROR_PAUSED_READY = "5"
FAKESINK_STATE_ERROR_READY_NULL = "6"
name = 'fakesink'
alias = 'sink'
def setUp(self):
self.element = gst.Element('fakesink', 'sink')
def testStateError(self):
self.element.set_property('state-error',
self.FAKESINK_STATE_ERROR_NULL_READY)
def error_cb(element, source, error, debug):
assert isinstance(element, gst.Element)
assert element == self.element
assert isinstance(source, gst.Element)
assert source == self.element
assert isinstance(error, gst.GError)
self.element.connect('error', error_cb)
self.element.set_state(gst.STATE_READY)
class NonExistentTest(ElementTest):
name = 'this-element-does-not-exist'
alias = 'no-alias'
def testGoodConstructor(self):
pass
if __name__ == "__main__":
unittest.main()