X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=tests%2Ftest_track.py;h=37ab3b0d8bb6877789fb1880b29fdae2b090db19;hb=refs%2Fheads%2Ftrack_equality;hp=b572221a3f2c214a42be23f6877f9ea27e80fae3;hpb=24cc6f0ba625f217d6127fc0cee880b22a8c6cbf;p=mpd-sima.git diff --git a/tests/test_track.py b/tests/test_track.py index b572221..37ab3b0 100644 --- a/tests/test_track.py +++ b/tests/test_track.py @@ -28,16 +28,36 @@ class TestTrackObject(unittest.TestCase): trk = Track(**DEVOLT) self.assertTrue(trk.collapsed_tags, 'Should have collapsed a tag') self.assertFalse(isinstance(trk.albumartist, list), 'Failed to collapse albumartist tag') - self.assertTrue(trk.get_artist().name in DEVOLT.get('albumartist'), + self.assertTrue(trk.Artist.name in DEVOLT.get('albumartist'), 'Failed to split multiple tag?') def test_boolean_type(self): self.assertFalse(bool(Track())) + for trk in [{}, {'artist': 'Devolt'}, {'artist': 'Devolt', 'file':''}]: + self.assertFalse(bool(Track(**trk))) def test_albumartist(self): trk = Track(albumartist='album_artist', artist='track_artist') - self.assertEqual(trk.get_artist().name, 'album_artist') + self.assertEqual(trk.Artist.name, 'album_artist') trk = Track(artist='track_artist') - self.assertEqual(trk.get_artist().name, 'track_artist') + self.assertEqual(trk.Artist.name, 'track_artist') + +class TestTrackObjectEquality(unittest.TestCase): + + def test_identity(self): + trk0 = Track(file='/foo/bar', + musicbrainz_artistid='d8e7e3e2-49ab-4f7c-b148-fc946d521f99', + title='Crazy') + trk1 = Track(file='/foo/bar/baz', + musicbrainz_artistid='d8e7e3e2-49ab-4f7c-b148-fc946d521f99', + title='Crazy') + self.assertTrue(trk1 == trk0, 'different files same artist/title should be equal') + trk0 = Track(file='/foo/bar', + musicbrainz_artistid='d8e7e3e2-49ab-4f7c-b148-fc946d521f88', + title='Crazy') + trk1 = Track(file='/foo/bar/baz', + musicbrainz_artistid='d8e7e3e2-49ab-4f7c-b148-fc946d521f99', + title='Crazy') + self.assertTrue(trk1 != trk0, 'different files same title different artist should not be equal') # vim: ai ts=4 sw=4 sts=4 expandtab