# Copyright 2021 (c) Anna Schumaker. import db import unittest from gi.repository import GObject from . import playlist class TestPlaylist(unittest.TestCase): def test_init(self): db.reset() plist = playlist.Playlist({ 0:1, "plstateid":10 }, "missing-icon") self.assertIsInstance(plist, GObject.GObject) self.assertFalse(plist.has_children()) self.assertEqual(plist._rowid, 1) self.assertEqual(plist.get_property("rowid"), 1) self.assertEqual(plist._icon_name, "missing-icon") self.assertEqual(plist.get_property("icon-name"), "missing-icon") self.assertIsNone(plist._plstate) self.assertIsNone(plist.get_property("plist_state")) with self.assertRaises(NotImplementedError): plist.get_property("name") class TestParentPlaylist(unittest.TestCase): def test_init(self): parent = playlist.ParentPlaylist({ 0:1, "plstateid":10 }, "missing-icon") self.assertIsInstance(parent, playlist.Playlist) self.assertTrue(parent.has_children()) with self.assertRaises(NotImplementedError): parent.get_child_table() with self.assertRaises(NotImplementedError): parent.get_n_children() with self.assertRaises(NotImplementedError): parent.get_child(0) with self.assertRaises(NotImplementedError): parent.get_child_index(0)