47 lines
1.3 KiB
Python
47 lines
1.3 KiB
Python
# Copyright 2019 (c) Anna Schumaker.
|
|
from . import data
|
|
from . import notify
|
|
from . import trak
|
|
from . import threadqueue
|
|
import os
|
|
import pathlib
|
|
import trackdb
|
|
import unittest
|
|
|
|
test_path = pathlib.Path("./trier")
|
|
test_library = pathlib.Path("./trier/Test Library")
|
|
test_tracks = pathlib.Path("./trier/Test Album")
|
|
|
|
class TestTags(unittest.TestCase):
|
|
def setUp(self):
|
|
notify.clear()
|
|
trak.reset()
|
|
self.new_track = None
|
|
self.lib = trackdb.add_path(test_path)
|
|
|
|
def on_new_track(self, track, lib):
|
|
self.new_track = track
|
|
|
|
def test_trak_init(self):
|
|
self.assertFalse(trak.trak_lock.locked())
|
|
self.assertEqual(trak.trak_db, { })
|
|
|
|
def test_trak_lookup(self):
|
|
trackdb.library.TrackAdded.register(self.on_new_track)
|
|
path = test_tracks / "01 - Test Track.ogg"
|
|
|
|
track = trak.lookup(path, self.lib)
|
|
self.assertEqual(track.filepath, pathlib.Path(path))
|
|
self.assertEqual(self.new_track, track)
|
|
|
|
self.new_track = None
|
|
self.assertEqual(trak.lookup(path, self.lib), track)
|
|
self.assertEqual(self.new_track, None)
|
|
|
|
self.assertIsNone(trak.lookup(test_tracks / "test.txt", self.lib))
|
|
|
|
def test_trak_reset(self):
|
|
trak.trak_db = { 1 : "a", 2 : "b", 3 : "c" }
|
|
trak.reset()
|
|
self.assertEqual(trak.trak_db, { })
|