playlist: Create a VisibleTracks label

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
Anna Schumaker 2021-11-01 15:36:51 -04:00
parent 44370b265b
commit 0ed71f8792
2 changed files with 32 additions and 0 deletions

12
playlist/footer.py Normal file
View File

@ -0,0 +1,12 @@
# Copyright 2021 (c) Anna Schumaker.
from gi.repository import Gtk
class VisibleTracks(Gtk.Label):
def __init__(self):
Gtk.Label.__init__(self)
self.set_halign(Gtk.Align.START)
self.set_hexpand(True)
def set_count(self, n):
s = 's' if n != 1 else ''
self.set_text(f"Showing {n} track{s}")

20
playlist/test_footer.py Normal file
View File

@ -0,0 +1,20 @@
# Copyright 2021 (c) Anna Schumaker.
import unittest
from gi.repository import Gtk
from . import footer
class TestVisibleTracks(unittest.TestCase):
def test_init(self):
visible = footer.VisibleTracks()
self.assertIsInstance(visible, Gtk.Label)
self.assertEqual(visible.get_halign(), Gtk.Align.START)
self.assertTrue(visible.get_hexpand())
def test_count(self):
visible = footer.VisibleTracks()
visible.set_count(0)
self.assertEqual(visible.get_text(), "Showing 0 tracks")
visible.set_count(1)
self.assertEqual(visible.get_text(), "Showing 1 track")
visible.set_count(2)
self.assertEqual(visible.get_text(), "Showing 2 tracks")