mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-30 12:49:40 +00:00
testsuite/test_interface.py: Don't hardcode 'alsasrc' for testing GstMixer and GstPropertyProbe interfaces, but inste...
Original commit message from CVS: * testsuite/test_interface.py: Don't hardcode 'alsasrc' for testing GstMixer and GstPropertyProbe interfaces, but instead search one through the registry. If none are available, return gracefully.
This commit is contained in:
parent
99cbd6dec4
commit
4373919e96
2 changed files with 28 additions and 2 deletions
|
@ -1,3 +1,10 @@
|
|||
2008-06-27 Edward Hervey <edward.hervey@collabora.co.uk>
|
||||
|
||||
* testsuite/test_interface.py:
|
||||
Don't hardcode 'alsasrc' for testing GstMixer and GstPropertyProbe
|
||||
interfaces, but instead search one through the registry.
|
||||
If none are available, return gracefully.
|
||||
|
||||
2008-06-27 Edward Hervey <edward.hervey@collabora.co.uk>
|
||||
|
||||
* testsuite/test_xml.py:
|
||||
|
|
|
@ -24,6 +24,14 @@ from common import gst, unittest, TestCase
|
|||
|
||||
import gobject
|
||||
|
||||
def find_mixer_element():
|
||||
""" Searches for an element implementing the mixer interface """
|
||||
allmix = [x for x in gst.registry_get_default().get_feature_list(gst.ElementFactory)
|
||||
if x.has_interface("GstMixer") and x.has_interface("GstPropertyProbe")]
|
||||
if allmix == []:
|
||||
return None
|
||||
return allmix[0]
|
||||
|
||||
class Availability(TestCase):
|
||||
def testXOverlay(self):
|
||||
assert hasattr(gst.interfaces, 'XOverlay')
|
||||
|
@ -42,11 +50,15 @@ class FunctionCall(TestCase):
|
|||
assert isinstance(element, gst.Element)
|
||||
assert isinstance(element, gst.interfaces.XOverlay)
|
||||
element.set_xwindow_id(0L)
|
||||
|
||||
|
||||
class MixerTest(TestCase):
|
||||
def setUp(self):
|
||||
TestCase.setUp(self)
|
||||
self.mixer = gst.element_factory_make('alsasrc', '')
|
||||
amix = find_mixer_element()
|
||||
if amix:
|
||||
self.mixer = amix.create()
|
||||
else:
|
||||
self.mixer = None
|
||||
assert self.mixer
|
||||
|
||||
def tearDown(self):
|
||||
|
@ -54,11 +66,15 @@ class MixerTest(TestCase):
|
|||
TestCase.tearDown(self)
|
||||
|
||||
def testGetProperty(self):
|
||||
if self.mixer == None:
|
||||
return
|
||||
self.failUnless(self.mixer.probe_get_property('device'))
|
||||
self.assertRaises(ValueError,
|
||||
self.mixer.probe_get_property, 'non-existent')
|
||||
|
||||
def testGetProperties(self):
|
||||
if self.mixer == None:
|
||||
return
|
||||
properties = self.mixer.probe_get_properties()
|
||||
self.failUnless(properties)
|
||||
self.assertEqual(type(properties), list)
|
||||
|
@ -67,8 +83,11 @@ class MixerTest(TestCase):
|
|||
self.assertEqual(prop.value_type, gobject.TYPE_STRING)
|
||||
|
||||
def testGetValuesName(self):
|
||||
if self.mixer == None:
|
||||
return
|
||||
values = self.mixer.probe_get_values_name('device')
|
||||
self.assertEqual(type(values), list)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
|
Loading…
Reference in a new issue