55 lines
2.2 KiB
Python
55 lines
2.2 KiB
Python
# Copyright 2021 (c) Anna Schumaker.
|
|
from . import runtime
|
|
from gi.repository import Gtk
|
|
import unittest
|
|
|
|
class TestPlaylistRuntime(unittest.TestCase):
|
|
def setUp(self):
|
|
runtime.set_runtime(0)
|
|
runtime.set_visible_count(0)
|
|
|
|
def test_runtime_init(self):
|
|
self.assertIsInstance(runtime.Runtime, Gtk.Label)
|
|
self.assertIsInstance(runtime.Visible, Gtk.Label)
|
|
self.assertIsInstance(runtime.Box, Gtk.Box)
|
|
|
|
self.assertEqual(runtime.Runtime.get_text(), "0 seconds")
|
|
self.assertEqual(runtime.Runtime.get_halign(), Gtk.Align.END)
|
|
self.assertTrue(runtime.Runtime.get_hexpand())
|
|
|
|
self.assertEqual(runtime.Visible.get_text(), "Showing 0 tracks")
|
|
self.assertEqual(runtime.Visible.get_halign(), Gtk.Align.START)
|
|
self.assertTrue(runtime.Visible.get_hexpand())
|
|
|
|
self.assertEqual(runtime.Box.get_margin_start(), 5)
|
|
self.assertEqual(runtime.Box.get_margin_end(), 5)
|
|
|
|
self.assertIn(runtime.Visible, runtime.Box)
|
|
self.assertIn(runtime.Runtime, runtime.Box)
|
|
|
|
def test_runtime_set_runtime(self):
|
|
runtime.set_runtime(0)
|
|
self.assertEqual(runtime.Runtime.get_text(), "0 seconds")
|
|
runtime.set_runtime(1)
|
|
self.assertEqual(runtime.Runtime.get_text(), "1 second")
|
|
runtime.set_runtime(60)
|
|
self.assertEqual(runtime.Runtime.get_text(), "1 minute")
|
|
runtime.set_runtime(125)
|
|
self.assertEqual(runtime.Runtime.get_text(), "2 minutes, 5 seconds")
|
|
runtime.set_runtime(3600)
|
|
self.assertEqual(runtime.Runtime.get_text(), "1 hour")
|
|
runtime.set_runtime(7320)
|
|
self.assertEqual(runtime.Runtime.get_text(), "2 hours, 2 minutes")
|
|
runtime.set_runtime(86400)
|
|
self.assertEqual(runtime.Runtime.get_text(), "1 day")
|
|
runtime.set_runtime(180000)
|
|
self.assertEqual(runtime.Runtime.get_text(), "2 days, 2 hours")
|
|
|
|
def test_runtime_set_visible_count(self):
|
|
runtime.set_visible_count(0)
|
|
self.assertEqual(runtime.Visible.get_text(), "Showing 0 tracks")
|
|
runtime.set_visible_count(1)
|
|
self.assertEqual(runtime.Visible.get_text(), "Showing 1 track")
|
|
runtime.set_visible_count(3)
|
|
self.assertEqual(runtime.Visible.get_text(), "Showing 3 tracks")
|