diff options
author | Andy Wingo <wingo@pobox.com> | 2005-09-21 13:45:58 +0000 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2005-09-21 13:45:58 +0000 |
commit | 23af58d1e3d7eb1e6d76f0ea1b5092931a7ce860 (patch) | |
tree | f71f839ae19b7728b44f84b9ff189d5ffb443a4c /testsuite/test_pad.py | |
parent | 14856cf85c791ed09fb1a7ea96e102be96936dad (diff) |
testsuite/test_pad.py (PadProbeTest.testRemovingProbe): Add probe removal test. Passes, but some other test sporadica...
Original commit message from CVS:
2005-09-21 Andy Wingo <wingo@pobox.com>
* testsuite/test_pad.py (PadProbeTest.testRemovingProbe): Add
probe removal test. Passes, but some other test sporadically fails
-- will check that later.
Diffstat (limited to 'testsuite/test_pad.py')
-rw-r--r-- | testsuite/test_pad.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/testsuite/test_pad.py b/testsuite/test_pad.py index 0c09574..773426c 100644 --- a/testsuite/test_pad.py +++ b/testsuite/test_pad.py @@ -75,5 +75,29 @@ class PadProbeTest(unittest.TestCase): self.failUnless(isinstance(buffer, gst.Buffer)) self._got_fakesrc_buffer = True + def testRemovingProbe(self): + pipeline = gst.Pipeline() + fakesrc = gst.element_factory_make('fakesrc') + fakesrc.set_property('num-buffers', 10) + fakesink = gst.element_factory_make('fakesink') + + handle = None + self._num_times_called = 0 + def buffer_probe(pad, buffer): + self._num_times_called += 1 + pad.remove_buffer_probe(handle) + return True + + pipeline.add_many(fakesrc, fakesink) + fakesrc.link(fakesink) + pad = fakesrc.get_pad('src') + handle = pad.add_buffer_probe(buffer_probe) + self._got_fakesrc_buffer = False + pipeline.set_state(gst.STATE_PLAYING) + m = pipeline.get_bus().poll(gst.MESSAGE_EOS, -1) + assert m + assert self._num_times_called == 1 + + if __name__ == "__main__": unittest.main() |