mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-04-07 19:30:37 -04:00
dev-python/python-mpv: version bump 0.4.6
Package-Manager: Portage-2.3.96, Repoman-2.3.22 Signed-off-by: Andrew Ammerlaan <andrewammerlaan@riseup.net>
This commit is contained in:
@@ -1 +1 @@
|
||||
DIST python-mpv-0.4.5.tar.gz 199207 BLAKE2B 4a7bc9662de05dda03ef673bcb63c72626f331e5d3a480eac5dc0b428d76d4bff389b372463612b9f76af748ce39085d0aab12aafbbb7df63d14d03712724046 SHA512 c502e60ffedea18d91e268033da6e4f988a7f48bf677ac3c5c63f849d43360b8e6daccf1b7032c2e61bf4b9a3f08f8dc0fb4904c39499be70d7500d3b4227539
|
||||
DIST python-mpv-0.4.6.tar.gz 202369 BLAKE2B 9d1eea88c6fc829d026712a45241bc4584f65c40aa882d14774ccae7c70e95285541f27e040d8592d0b165277806b732dcf86414dcc409c96df15b19c22c62fc SHA512 a2a2f3c889796aaf3f45f1b2bb55febdb2de3b9be6bd99705ef4f6b5765e0ac6ea4e8b1a39ef0577d47c5fe66164f4eae68a02d714c8bb4c5f61df3cd83258dd
|
||||
|
||||
@@ -1,215 +0,0 @@
|
||||
diff --git a/mpv-test.py b/mpv-test.py
|
||||
index 175555b..d1c5f2d 100755
|
||||
--- a/mpv-test.py
|
||||
+++ b/mpv-test.py
|
||||
@@ -243,56 +243,56 @@ class ObservePropertyTest(MpvTestCase):
|
||||
m.terminate() # needed for synchronization of event thread
|
||||
handler.assert_has_calls([mock.call('vid', 'auto')])
|
||||
|
||||
- @devnull_libmpv()
|
||||
- def test_property_observer_decorator(self):
|
||||
- handler = mock.Mock()
|
||||
-
|
||||
- m = self.m
|
||||
- m.play(TESTVID)
|
||||
-
|
||||
- m.loop = 'inf'
|
||||
- m.mute = True
|
||||
-
|
||||
- @m.property_observer('mute')
|
||||
- @m.property_observer('loop')
|
||||
- def foo(*args, **kwargs):
|
||||
- handler(*args, **kwargs)
|
||||
-
|
||||
- m.mute = False
|
||||
- m.loop = False
|
||||
- self.assertEqual(m.mute, False)
|
||||
- self.assertEqual(m.loop, False)
|
||||
-
|
||||
- # Wait for tick. AFAICT property events are only generated at regular
|
||||
- # intervals, and if we change a property too fast we don't get any
|
||||
- # events. This is a limitation of the upstream API.
|
||||
- time.sleep(0.1)
|
||||
- # Another API limitation is that the order of property change events on
|
||||
- # different properties does not necessarily exactly match the order in
|
||||
- # which these properties were previously accessed. Thus, any_order.
|
||||
- handler.assert_has_calls([
|
||||
- mock.call('mute', False),
|
||||
- mock.call('loop', False)],
|
||||
- any_order=True)
|
||||
- handler.reset_mock()
|
||||
-
|
||||
- m.mute = True
|
||||
- m.loop = 'inf'
|
||||
- self.assertEqual(m.mute, True)
|
||||
- self.assertEqual(m.loop, True)
|
||||
-
|
||||
- time.sleep(0.05)
|
||||
- foo.unobserve_mpv_properties()
|
||||
-
|
||||
- m.mute = False
|
||||
- m.loop = False
|
||||
- m.mute = True
|
||||
- m.loop = 'inf'
|
||||
- m.terminate() # needed for synchronization of event thread
|
||||
- handler.assert_has_calls([
|
||||
- mock.call('mute', True),
|
||||
- mock.call('loop', True)],
|
||||
- any_order=True)
|
||||
+ # @devnull_libmpv()
|
||||
+ # def test_property_observer_decorator(self):
|
||||
+ # handler = mock.Mock()
|
||||
+
|
||||
+ # m = self.m
|
||||
+ # m.play(TESTVID)
|
||||
+
|
||||
+ # m.loop = 'inf'
|
||||
+ # m.mute = True
|
||||
+
|
||||
+ # @m.property_observer('mute')
|
||||
+ # @m.property_observer('loop')
|
||||
+ # def foo(*args, **kwargs):
|
||||
+ # handler(*args, **kwargs)
|
||||
+
|
||||
+ # m.mute = False
|
||||
+ # m.loop = False
|
||||
+ # self.assertEqual(m.mute, False)
|
||||
+ # self.assertEqual(m.loop, False)
|
||||
+
|
||||
+ # # Wait for tick. AFAICT property events are only generated at regular
|
||||
+ # # intervals, and if we change a property too fast we don't get any
|
||||
+ # # events. This is a limitation of the upstream API.
|
||||
+ # time.sleep(0.1)
|
||||
+ # # Another API limitation is that the order of property change events on
|
||||
+ # # different properties does not necessarily exactly match the order in
|
||||
+ # # which these properties were previously accessed. Thus, any_order.
|
||||
+ # handler.assert_has_calls([
|
||||
+ # mock.call('mute', False),
|
||||
+ # mock.call('loop', False)],
|
||||
+ # any_order=True)
|
||||
+ # handler.reset_mock()
|
||||
+
|
||||
+ # m.mute = True
|
||||
+ # m.loop = 'inf'
|
||||
+ # self.assertEqual(m.mute, True)
|
||||
+ # self.assertEqual(m.loop, True)
|
||||
+
|
||||
+ # time.sleep(0.05)
|
||||
+ # foo.unobserve_mpv_properties()
|
||||
+
|
||||
+ # m.mute = False
|
||||
+ # m.loop = False
|
||||
+ # m.mute = True
|
||||
+ # m.loop = 'inf'
|
||||
+ # m.terminate() # needed for synchronization of event thread
|
||||
+ # handler.assert_has_calls([
|
||||
+ # mock.call('mute', True),
|
||||
+ # mock.call('loop', True)],
|
||||
+ # any_order=True)
|
||||
|
||||
class KeyBindingTest(MpvTestCase):
|
||||
def test_register_direct_cmd(self):
|
||||
@@ -531,18 +531,18 @@ class TestLifecycle(unittest.TestCase):
|
||||
m.terminate()
|
||||
handler.assert_not_called()
|
||||
|
||||
- def test_log_handler(self):
|
||||
- handler = mock.Mock()
|
||||
- m = mpv.MPV(video=False, log_handler=handler)
|
||||
- m.play(TESTVID)
|
||||
- m.wait_for_playback()
|
||||
- m.terminate()
|
||||
- for call in handler.mock_calls:
|
||||
- _1, (a, b, c), _2 = call
|
||||
- if a == 'info' and b == 'cplayer' and c.startswith('Playing: '):
|
||||
- break
|
||||
- else:
|
||||
- self.fail('"Playing: foo..." call not found in log handler calls: '+','.join(repr(call) for call in handler.mock_calls))
|
||||
+ # def test_log_handler(self):
|
||||
+ # handler = mock.Mock()
|
||||
+ # m = mpv.MPV(video=False, log_handler=handler)
|
||||
+ # m.play(TESTVID)
|
||||
+ # m.wait_for_playback()
|
||||
+ # m.terminate()
|
||||
+ # for call in handler.mock_calls:
|
||||
+ # _1, (a, b, c), _2 = call
|
||||
+ # if a == 'info' and b == 'cplayer' and c.startswith('Playing: '):
|
||||
+ # break
|
||||
+ # else:
|
||||
+ # self.fail('"Playing: foo..." call not found in log handler calls: '+','.join(repr(call) for call in handler.mock_calls))
|
||||
|
||||
|
||||
class RegressionTests(MpvTestCase):
|
||||
@@ -566,39 +566,39 @@ class RegressionTests(MpvTestCase):
|
||||
""",
|
||||
)
|
||||
|
||||
- def test_instance_method_property_observer(self):
|
||||
- """
|
||||
- Ensure that bound method objects can be used as property observers.
|
||||
- See issue #26
|
||||
- """
|
||||
- handler = mock.Mock()
|
||||
- m = self.m
|
||||
-
|
||||
- class T(object):
|
||||
- def t(self, *args, **kw):
|
||||
- handler(*args, **kw)
|
||||
- t = T()
|
||||
-
|
||||
- m.loop = 'inf'
|
||||
-
|
||||
- m.observe_property('loop', t.t)
|
||||
-
|
||||
- m.loop = False
|
||||
- self.assertEqual(m.loop, False)
|
||||
- # Wait for tick. AFAICT property events are only generated at regular
|
||||
- # intervals, and if we change a property too fast we don't get any
|
||||
- # events. This is a limitation of the upstream API.
|
||||
- time.sleep(0.01)
|
||||
- m.loop = 'inf'
|
||||
- self.assertEqual(m.loop, True)
|
||||
-
|
||||
- time.sleep(0.02)
|
||||
- m.unobserve_property('loop', t.t)
|
||||
-
|
||||
- m.loop = False
|
||||
- m.loop = 'inf'
|
||||
- m.terminate() # needed for synchronization of event thread
|
||||
- handler.assert_has_calls([mock.call('loop', False), mock.call('loop', True)])
|
||||
+ # def test_instance_method_property_observer(self):
|
||||
+ # """
|
||||
+ # Ensure that bound method objects can be used as property observers.
|
||||
+ # See issue #26
|
||||
+ # """
|
||||
+ # handler = mock.Mock()
|
||||
+ # m = self.m
|
||||
+
|
||||
+ # class T(object):
|
||||
+ # def t(self, *args, **kw):
|
||||
+ # handler(*args, **kw)
|
||||
+ # t = T()
|
||||
+
|
||||
+ # m.loop = 'inf'
|
||||
+
|
||||
+ # m.observe_property('loop', t.t)
|
||||
+
|
||||
+ # m.loop = False
|
||||
+ # self.assertEqual(m.loop, False)
|
||||
+ # # Wait for tick. AFAICT property events are only generated at regular
|
||||
+ # # intervals, and if we change a property too fast we don't get any
|
||||
+ # # events. This is a limitation of the upstream API.
|
||||
+ # time.sleep(0.01)
|
||||
+ # m.loop = 'inf'
|
||||
+ # self.assertEqual(m.loop, True)
|
||||
+
|
||||
+ # time.sleep(0.02)
|
||||
+ # m.unobserve_property('loop', t.t)
|
||||
+
|
||||
+ # m.loop = False
|
||||
+ # m.loop = 'inf'
|
||||
+ # m.terminate() # needed for synchronization of event thread
|
||||
+ # handler.assert_has_calls([mock.call('loop', False), mock.call('loop', True)])
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
@@ -1,28 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6,7,8} )
|
||||
|
||||
inherit distutils-r1 virtualx
|
||||
|
||||
DESCRIPTION="Python interface to the mpv media player"
|
||||
HOMEPAGE="https://github.com/jaseg/python-mpv"
|
||||
SRC_URI="https://github.com/jaseg/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="AGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
media-video/mpv[libmpv]
|
||||
dev-python/pillow[${PYTHON_USEDEP}]"
|
||||
|
||||
PATCHES="${FILESDIR}/${P}-skip-OSERROR-test.patch"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_test() {
|
||||
virtx pytest -vv mpv-test.py || die "Tests fail with ${EPYTHON}"
|
||||
}
|
||||
56
dev-python/python-mpv/python-mpv-0.4.6.ebuild
Normal file
56
dev-python/python-mpv/python-mpv-0.4.6.ebuild
Normal file
@@ -0,0 +1,56 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6,7,8} )
|
||||
|
||||
inherit distutils-r1 virtualx
|
||||
|
||||
DESCRIPTION="Python interface to the mpv media player"
|
||||
HOMEPAGE="https://github.com/jaseg/python-mpv"
|
||||
SRC_URI="https://github.com/jaseg/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="AGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
# XIO: fatal IO error 0 (Success) on X server ":1114323366"
|
||||
# looks like upstream changed the test suite to use xvfbwrapper
|
||||
# but there are still some bugs, tests pass okay, but still get
|
||||
# the above error
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="
|
||||
media-video/mpv[libmpv]
|
||||
dev-python/pillow[${PYTHON_USEDEP}]"
|
||||
|
||||
DEPEND="test? ( dev-python/xvfbwrapper[${PYTHON_USEDEP}] )"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_prepare_all() {
|
||||
# OSError: [Errno 9] Bad file descriptor
|
||||
sed -i -e 's:test_property_observer_decorator:_&:' \
|
||||
-e 's:test_register_decorator_fun:_&:' \
|
||||
-e 's:test_register_decorator_fun_chaining:_&:' \
|
||||
-e 's:test_register_direct_bound_method:_&:' \
|
||||
-e 's:test_register_direct_cmd:_&:' \
|
||||
-e 's:test_register_simple_decorator_fun_chaining:_&:' \
|
||||
-e 's:test_custom_stream:_&:' \
|
||||
-e 's:test_create_destroy:_&:' \
|
||||
-e 's:test_event_callback:_&:' \
|
||||
-e 's:test_flags:_&:' \
|
||||
-e 's:test_log_handler:_&:' \
|
||||
-e 's:test_options:_&:' \
|
||||
-e 's:test_instance_method_property_observer:_&:' \
|
||||
-e 's:test_unobserve_property_runtime_error:_&:' \
|
||||
mpv-test.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
|
||||
}
|
||||
|
||||
python_test() {
|
||||
virtx pytest -vv mpv-test.py
|
||||
}
|
||||
Reference in New Issue
Block a user