feat: tested album artist relation

This commit is contained in:
Hellow 2024-04-13 15:36:16 +02:00
parent bdbaeceda8
commit 4473ff08d3

View File

@ -1,18 +1,13 @@
import unittest import unittest
import music_kraken from music_kraken.objects import Song, Album, Artist, Collection, Country
from music_kraken.objects import Song, Album, Artist, Collection
class TestCollection(unittest.TestCase): class TestCollection(unittest.TestCase):
def test_song_album_relation(self): @staticmethod
""" def complicated_object() -> Artist:
Tests that return Artist(
album = album.any_song.one_album
is the same object
"""
artist: Artist = Artist(
name="artist", name="artist",
country=Country.by_alpha_2("DE"),
main_album_list=[ main_album_list=[
Album( Album(
title="album", title="album",
@ -35,7 +30,14 @@ class TestCollection(unittest.TestCase):
] ]
) )
a = artist.main_album_collection[0] def test_song_album_relation(self):
"""
Tests that
album = album.any_song.one_album
is the same object
"""
a = self.complicated_object().main_album_collection[0]
b = a.song_collection[0].album_collection[0] b = a.song_collection[0].album_collection[0]
c = a.song_collection[1].album_collection[0] c = a.song_collection[1].album_collection[0]
d = b.song_collection[0].album_collection[0] d = b.song_collection[0].album_collection[0]
@ -52,5 +54,37 @@ class TestCollection(unittest.TestCase):
self.assertTrue(a.title == b.title == c.title == d.title == e.title == f.title == g.title == "new_title") self.assertTrue(a.title == b.title == c.title == d.title == e.title == f.title == g.title == "new_title")
def test_album_artist_relation(self):
"""
Tests that
artist = artist.any_album.any_song.one_artist
is the same object
"""
a = self.complicated_object()
b = a.main_album_collection[0].artist_collection[0]
c = b.main_album_collection[0].artist_collection[0]
d = c.main_album_collection[0].artist_collection[0]
self.assertTrue(a.id == b.id == c.id == d.id)
self.assertTrue(a.name == b.name == c.name == d.name == "artist")
self.assertTrue(a.country == b.country == c.country == d.country)
def test_song_artist_relations(self):
"""
Tests that
artist = artist.any_album.any_song.one_artist
is the same object
"""
a = self.complicated_object()
b = a.main_album_collection[0].song_collection[0].main_artist_collection[0]
c = b.main_album_collection[0].song_collection[0].main_artist_collection[0]
d = c.main_album_collection[0].song_collection[0].main_artist_collection[0]
self.assertTrue(a.id == b.id == c.id == d.id)
self.assertTrue(a.name == b.name == c.name == d.name == "artist")
self.assertTrue(a.country == b.country == c.country == d.country)
if __name__ == "__main__": if __name__ == "__main__":
unittest.main() unittest.main()