# Copyright 2021 (c) Anna Schumaker. from lib import tagstore from . import tags from . import user import unittest class TestTags(unittest.TestCase): def tearDown(self): tags.reset() def test_tags_init(self): self.assertIsInstance(tags.Artist, tagstore.TagStore) self.assertIsInstance(tags.Album, tagstore.TagSuperStore) self.assertIsInstance(tags.Genre, tagstore.TagStore) self.assertIsInstance(tags.Decade, tagstore.TagStore) self.assertIsInstance(tags.Year, tagstore.TagSuperStore) self.assertIsInstance(tags.User, user.UserTagStore) def test_tags_reset(self): tags.Artist.store = {"a" : 1 } tags.Album.store = {("a", "b") : 2 } tags.Genre.store = {"c" : 3 } tags.Decade.store = {"d" : 4 } tags.User.store = {"e" : 5 } tags.reset() self.assertEqual(tags.Artist.store, { }) self.assertEqual(tags.Album.store, { }) self.assertEqual(tags.Genre.store, { }) self.assertEqual(tags.Decade.store, { }) self.assertIsNotNone(tags.User["Collection"]) self.assertIsNotNone(tags.User["Up Next"]) self.assertIsNotNone(tags.User["Previous"]) self.assertIsNotNone(tags.User["Favorites"]) self.assertIsNotNone(tags.User["Up Next"]) def test_tags_state(self): state = tags.get_state() self.assertEqual(state, ( tags.Artist, tags.Album, tags.Genre, tags.Decade, tags.Year, tags.User )) tags.set_state(*(1, 2, 3, 4, 5, 6)) self.assertEqual(tags.Artist, 1) self.assertEqual(tags.Album, 2) self.assertEqual(tags.Genre, 3) self.assertEqual(tags.Decade, 4) self.assertEqual(tags.Year, 5) self.assertEqual(tags.User, 6) tags.set_state(*state)