]> kaliko git repositories - mpd-sima.git/blobdiff - tests/test_track.py
Changed tracks equality test
[mpd-sima.git] / tests / test_track.py
index b572221a3f2c214a42be23f6877f9ea27e80fae3..37ab3b0d8bb6877789fb1880b29fdae2b090db19 100644 (file)
@@ -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