From c2c64620b14aa0360f49212c51820289af6c7503 Mon Sep 17 00:00:00 2001 From: Jens Luetjen Date: Mon, 4 Apr 2016 20:40:56 +0200 Subject: [PATCH 1/3] Ignore position of _on_position_changed callback --- mopidy/core/playback.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mopidy/core/playback.py b/mopidy/core/playback.py index ab96171e..96c11b2e 100644 --- a/mopidy/core/playback.py +++ b/mopidy/core/playback.py @@ -230,8 +230,8 @@ class PlaybackController(object): self._seek(self._pending_position) def _on_position_changed(self, position): - if self._pending_position == position: - self._trigger_seeked(position) + if self._pending_position: + self._trigger_seeked(self._pending_position) self._pending_position = None def _on_about_to_finish_callback(self): From 7757d306eaed772ba65e382841602f2777e736b6 Mon Sep 17 00:00:00 2001 From: Jens Luetjen Date: Mon, 4 Apr 2016 21:45:02 +0200 Subject: [PATCH 2/3] Include _pending_position 0 (zero) as valid target --- mopidy/core/playback.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mopidy/core/playback.py b/mopidy/core/playback.py index 96c11b2e..da505b22 100644 --- a/mopidy/core/playback.py +++ b/mopidy/core/playback.py @@ -230,7 +230,7 @@ class PlaybackController(object): self._seek(self._pending_position) def _on_position_changed(self, position): - if self._pending_position: + if self._pending_position is not None: self._trigger_seeked(self._pending_position) self._pending_position = None From c24380679f2cde841048ad349391cdf5241fe82e Mon Sep 17 00:00:00 2001 From: Jens Luetjen Date: Sat, 9 Apr 2016 11:10:21 +0200 Subject: [PATCH 3/3] Test only events triggered after seek --- tests/core/test_playback.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/core/test_playback.py b/tests/core/test_playback.py index 3572800c..34c9d367 100644 --- a/tests/core/test_playback.py +++ b/tests/core/test_playback.py @@ -734,6 +734,7 @@ class EventEmissionTest(BaseTest): self.core.playback.play(tl_tracks[0]) self.trigger_about_to_finish(replay_until='stream_changed') + self.replay_events() listener_mock.reset_mock() self.core.playback.seek(1000)