diff options
Diffstat (limited to 'tests/test_music.py')
| -rw-r--r-- | tests/test_music.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/test_music.py b/tests/test_music.py index 675e72b..e073e59 100644 --- a/tests/test_music.py +++ b/tests/test_music.py @@ -25,6 +25,18 @@ class Music(unittest.TestCase): def test_action_commands(self): self.assertEqual(music.BASE_ACTIONS["next"], ["playerctl", "next"]) + def test_seek_runs_playerctl(self): + calls = [] + m = music.make({"run": lambda *a, **k: "", "popen": calls.append}) + m.actions["seek"]({"position": 12.34}) + self.assertEqual(calls[0], ["playerctl", "position", "12.3"]) + + def test_seek_rejects_bad_positions(self): + m = music.make({"run": lambda *a, **k: "", "popen": lambda cmd: None}) + for bad in ({}, {"position": -1}, {"position": "x"}): + with self.assertRaises(music.ModuleError, msg=bad): + m.actions["seek"](bad) + if __name__ == "__main__": unittest.main() |
