63 lines
2.2 KiB
Python
63 lines
2.2 KiB
Python
# Copyright 2021 (c) Anna Schumaker.
|
|
import db
|
|
import unittest
|
|
from gi.repository import Gtk
|
|
from . import model
|
|
from . import sort
|
|
from . import view
|
|
|
|
class TestPlaylistView(unittest.TestCase):
|
|
def test_init(self):
|
|
collection = db.user.Table.find("Collection")
|
|
pview = view.PlaylistView()
|
|
|
|
self.assertIsInstance(pview, Gtk.ColumnView)
|
|
self.assertIsInstance(pview.get_model(), model.PlaylistSelection)
|
|
self.assertIsInstance(pview.get_filter_model(), Gtk.FilterListModel)
|
|
|
|
self.assertTrue(pview.has_css_class("data-table"))
|
|
self.assertTrue(pview.get_enable_rubberband())
|
|
self.assertTrue(pview.get_hexpand())
|
|
self.assertTrue(pview.get_vexpand())
|
|
|
|
self.assertIsNone(pview.get_playlist())
|
|
pview.set_playlist(collection)
|
|
self.assertEqual(pview.get_playlist(), collection)
|
|
|
|
|
|
class TestPlaylistWindow(unittest.TestCase):
|
|
def test_init(self):
|
|
collection = db.user.Table.find("Collection")
|
|
window = view.PlaylistWindow()
|
|
|
|
self.assertIsInstance(window, Gtk.ScrolledWindow)
|
|
self.assertIsInstance(window.get_child(), view.PlaylistView)
|
|
self.assertIsInstance(window.get_filter_model(), Gtk.FilterListModel)
|
|
|
|
self.assertIsNone(window.get_playlist())
|
|
window.set_playlist(collection)
|
|
self.assertEqual(window.get_playlist(), collection)
|
|
|
|
|
|
class TestSortOrderView(unittest.TestCase):
|
|
def test_init(self):
|
|
collection = db.user.Table.find("Collection")
|
|
sview = view.SortOrderView()
|
|
|
|
self.assertIsInstance(sview, Gtk.ListView)
|
|
self.assertIsInstance(sview.get_model(), Gtk.NoSelection)
|
|
self.assertIsInstance(sview.get_model().get_model(), model.FlatSortModel)
|
|
self.assertIsInstance(sview.get_factory(), sort.Factory)
|
|
|
|
sview.set_playlist(collection)
|
|
self.assertEqual(sview.get_model().get_model().get_enabled_model().playlist, collection)
|
|
|
|
|
|
class TestSortOrderPopover(unittest.TestCase):
|
|
def test_init(self):
|
|
pop = view.SortOrderPopover()
|
|
|
|
self.assertIsInstance(pop, Gtk.Popover)
|
|
self.assertIsInstance(pop.get_child(), view.SortOrderView)
|
|
pop.set_playlist(db.user.Table.find("Collection"))
|