diff options
author | Matt Deacalion Stevens <matt@dirtymonkey.co.uk> | 2017-05-21 10:58:36 +0100 |
---|---|---|
committer | Matt Deacalion Stevens <matt@dirtymonkey.co.uk> | 2017-05-21 10:58:36 +0100 |
commit | b1f81ac56184a172f093b0a640890de9ded405d7 (patch) | |
tree | 6e953ac618bdedc656dcfbd09fc83a76fd9417dc /mpv-test.py | |
parent | 5ca3a0250cd52d01e949d7f998c49db32480b1ca (diff) | |
download | python-mpv-b1f81ac56184a172f093b0a640890de9ded405d7.tar.gz python-mpv-b1f81ac56184a172f093b0a640890de9ded405d7.tar.bz2 python-mpv-b1f81ac56184a172f093b0a640890de9ded405d7.zip |
Fix `unobserve_property` RuntimeError
Diffstat (limited to 'mpv-test.py')
-rwxr-xr-x | mpv-test.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/mpv-test.py b/mpv-test.py index b2bea2e..21cb8cf 100755 --- a/mpv-test.py +++ b/mpv-test.py @@ -206,5 +206,32 @@ class TestLifecycle(unittest.TestCase): handler.assert_any_call('info', 'cplayer', 'Playing: ./test.webm') +class RegressionTests(unittest.TestCase): + + def test_unobserve_property_runtime_error(self): + """ + Ensure a `RuntimeError` is not thrown within + `unobserve_property`. + """ + handler = mock.Mock() + handler.observed_mpv_properties = [] + + m = mpv.MPV() + m.observe_property('loop', handler) + + try: + m.unobserve_property('loop', handler) + except RuntimeError: + self.fail( + """ + "RuntimeError" exception thrown within + `unobserve_property` + """, + ) + finally: + m.terminate() + + + if __name__ == '__main__': unittest.main() |