rind: Split out gst seek tests

And also add in more comprehensive testing for seek_step()

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
Anna Schumaker 2019-04-08 14:36:49 -04:00
parent a94996b3fa
commit 7d470bbf94
1 changed files with 38 additions and 14 deletions

View File

@ -140,20 +140,6 @@ class TestGst(unittest.TestCase):
self.assertTrue( gst.PlayButton.is_visible())
self.assertEqual(curds.PlaylistManager.track, track2)
self.audio.seek(value=50.0)
gtk.main_loop(delay=0.1)
self.assertEqual(self.audio.duration(), 3.0)
self.assertEqual(self.audio.position(), 1.5)
self.assertEqual(gst.Position.get_text(), "00:01")
self.assertEqual(gst.Duration.get_text(), "-00:02")
self.audio.seek_step(step=0.5 * Gst.SECOND)
gtk.main_loop(delay=0.1)
self.assertEqual(self.audio.duration(), 3.0)
self.assertEqual(self.audio.position(), 2.0)
self.assertEqual(gst.Position.get_text(), "00:02")
self.assertEqual(gst.Duration.get_text(), "-00:01")
gst.PlayButton.clicked()
self.main_loop_until(Gst.State.PLAYING)
self.assertTrue( gst.PauseButton.is_visible())
@ -180,6 +166,44 @@ class TestGst(unittest.TestCase):
self.assertEqual(curds.PlaylistManager.lookup("Collection").current, 3)
self.assertNotEqual(curds.PlaylistManager.track, track2)
def test_gst_seek(self):
track = curds.Track.lookup(os.path.join(test_album, "10 - Test Track 10.ogg"))
self.audio.load(track)
self.audio.pause()
self.main_loop_until(Gst.State.PAUSED)
self.audio.seek(value=50.0)
gtk.main_loop(delay=0.1)
self.assertEqual(self.audio.duration(), 10.0)
self.assertEqual(self.audio.position(), 5.0)
self.assertEqual(gst.Position.get_text(), "00:05")
self.assertEqual(gst.Duration.get_text(), "-00:05")
self.audio.seek_step(step=2 * Gst.SECOND)
gtk.main_loop(delay=0.1)
self.assertEqual(self.audio.position(), 7.0)
self.assertEqual(gst.Position.get_text(), "00:07")
self.assertEqual(gst.Duration.get_text(), "-00:03")
self.audio.seek_step(step=-4*Gst.SECOND)
gtk.main_loop(delay=0.1)
self.assertEqual(self.audio.position(), 3.0)
self.assertEqual(gst.Position.get_text(), "00:03")
self.assertEqual(gst.Duration.get_text(), "-00:07")
self.audio.seek_step(step=-4*Gst.SECOND)
gtk.main_loop(delay=0.1)
self.assertEqual(self.audio.position(), 0.0)
self.assertEqual(gst.Position.get_text(), "00:00")
self.assertEqual(gst.Duration.get_text(), "-00:10")
self.audio.seek_step(step=11*Gst.SECOND)
gtk.main_loop(delay=0.1)
self.assertEqual(self.audio.position(), 10.0)
self.assertEqual(gst.Position.get_text(), "00:10")
self.assertEqual(gst.Duration.get_text(), "-00:00")
def test_gst_volume(self):
self.assertAlmostEqual(self.audio.get_property("volume"), 1.0)
self.assertEqual(gst.Volume.get_value(), 100.0)