db: Have Tracks remove themselves from Playlist Maps when deleted
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
parent
0fd1069484
commit
952d70c282
|
@ -49,12 +49,17 @@ class TestTrackTable(unittest.TestCase):
|
|||
def test_track_table_delete(self):
|
||||
track = db.make_fake_track(1, 1.234, "Test Title", "/a/b/c/d.efg")
|
||||
genre = db.genre.Table.find("Test Genre")
|
||||
playlist = db.playlist.Table.find("Test Playlist")
|
||||
|
||||
db.genre.Map.insert(genre, track)
|
||||
db.playlist.Map.insert(playlist, track)
|
||||
db.playlist.TempMap.insert(playlist, track)
|
||||
db.track.Table.delete(track)
|
||||
|
||||
self.assertIsNone(db.track.Table.lookup(pathlib.Path("/a/b/c/d.efg")))
|
||||
self.assertEqual(db.genre.Map.lookup_tracks(genre), [ ])
|
||||
self.assertEqual(db.playlist.Map.lookup_tracks(playlist), [ ])
|
||||
self.assertEqual(db.playlist.TempMap.lookup_tracks(playlist), [ ])
|
||||
|
||||
def test_track_table_get(self):
|
||||
track = db.make_fake_track(1, 1.234, "Test Title", "/a/b/c/d.efg")
|
||||
|
|
|
@ -119,7 +119,10 @@ class TrackTable(objects.Table):
|
|||
|
||||
def do_delete(self, track):
|
||||
from . import genre
|
||||
from . import playlist
|
||||
genre.Map.delete_track(track)
|
||||
playlist.Map.delete_track(track)
|
||||
playlist.TempMap.delete_track(track)
|
||||
return execute("DELETE FROM tracks WHERE trackid=?", [ int(track) ])
|
||||
|
||||
def do_get(self, rowid):
|
||||
|
|
Loading…
Reference in New Issue