Resolve "Track position don't take care about disc number"
This commit is contained in:
parent
16aef2e597
commit
a493d34b8f
14 changed files with 82 additions and 17 deletions
|
|
@ -20,6 +20,7 @@ def test_get_all_metadata_at_once():
|
|||
"album": "Peer Gynt Suite no. 1, op. 46",
|
||||
"date": datetime.date(2012, 8, 15),
|
||||
"track_number": 1,
|
||||
"disc_number": 1,
|
||||
"musicbrainz_albumid": uuid.UUID("a766da8b-8336-47aa-a3ee-371cc41ccc75"),
|
||||
"musicbrainz_recordingid": uuid.UUID("bd21ac48-46d8-4e78-925f-d9cc2a294656"),
|
||||
"musicbrainz_artistid": uuid.UUID("013c8e5b-d72a-4cd3-8dee-6c64d6125823"),
|
||||
|
|
@ -40,6 +41,7 @@ def test_get_all_metadata_at_once():
|
|||
("album", "Peer Gynt Suite no. 1, op. 46"),
|
||||
("date", datetime.date(2012, 8, 15)),
|
||||
("track_number", 1),
|
||||
("disc_number", 1),
|
||||
("musicbrainz_albumid", uuid.UUID("a766da8b-8336-47aa-a3ee-371cc41ccc75")),
|
||||
("musicbrainz_recordingid", uuid.UUID("bd21ac48-46d8-4e78-925f-d9cc2a294656")),
|
||||
("musicbrainz_artistid", uuid.UUID("013c8e5b-d72a-4cd3-8dee-6c64d6125823")),
|
||||
|
|
@ -67,6 +69,7 @@ def test_can_get_metadata_from_ogg_file(field, value):
|
|||
("album", "Peer Gynt Suite no. 1, op. 46"),
|
||||
("date", datetime.date(2012, 8, 15)),
|
||||
("track_number", 1),
|
||||
("disc_number", 1),
|
||||
("musicbrainz_albumid", uuid.UUID("a766da8b-8336-47aa-a3ee-371cc41ccc75")),
|
||||
("musicbrainz_recordingid", uuid.UUID("bd21ac48-46d8-4e78-925f-d9cc2a294656")),
|
||||
("musicbrainz_artistid", uuid.UUID("013c8e5b-d72a-4cd3-8dee-6c64d6125823")),
|
||||
|
|
@ -94,6 +97,7 @@ def test_can_get_metadata_from_opus_file(field, value):
|
|||
("album", "Ballast der Republik"),
|
||||
("date", datetime.date(2012, 5, 4)),
|
||||
("track_number", 1),
|
||||
("disc_number", 1),
|
||||
("musicbrainz_albumid", uuid.UUID("1f0441ad-e609-446d-b355-809c445773cf")),
|
||||
("musicbrainz_recordingid", uuid.UUID("124d0150-8627-46bc-bc14-789a3bc960c8")),
|
||||
("musicbrainz_artistid", uuid.UUID("c3bc80a6-1f4a-4e17-8cf0-6b1efe8302f1")),
|
||||
|
|
@ -122,6 +126,7 @@ def test_can_get_metadata_from_ogg_theora_file(field, value):
|
|||
("album", "You Can't Stop Da Funk"),
|
||||
("date", datetime.date(2006, 2, 7)),
|
||||
("track_number", 2),
|
||||
("disc_number", 1),
|
||||
("musicbrainz_albumid", uuid.UUID("ce40cdb1-a562-4fd8-a269-9269f98d4124")),
|
||||
("musicbrainz_recordingid", uuid.UUID("f269d497-1cc0-4ae4-a0c4-157ec7d73fcb")),
|
||||
("musicbrainz_artistid", uuid.UUID("9c6bddde-6228-4d9f-ad0d-03f6fcb19e13")),
|
||||
|
|
@ -163,6 +168,7 @@ def test_can_get_pictures(name):
|
|||
("album", "The Slip"),
|
||||
("date", datetime.date(2008, 5, 5)),
|
||||
("track_number", 1),
|
||||
("disc_number", 1),
|
||||
("musicbrainz_albumid", uuid.UUID("12b57d46-a192-499e-a91f-7da66790a1c1")),
|
||||
("musicbrainz_recordingid", uuid.UUID("30f3f33e-8d0c-4e69-8539-cbd701d18f28")),
|
||||
("musicbrainz_artistid", uuid.UUID("b7ffd2af-418f-4be2-bdd1-22f8b48613da")),
|
||||
|
|
|
|||
|
|
@ -512,3 +512,13 @@ def test_can_create_license(db):
|
|||
redistribute=True,
|
||||
url="http://cc",
|
||||
)
|
||||
|
||||
|
||||
def test_track_order_for_album(factories):
|
||||
album = factories["music.Album"]()
|
||||
t1 = factories["music.Track"](album=album, position=1, disc_number=1)
|
||||
t2 = factories["music.Track"](album=album, position=1, disc_number=2)
|
||||
t3 = factories["music.Track"](album=album, position=2, disc_number=1)
|
||||
t4 = factories["music.Track"](album=album, position=2, disc_number=2)
|
||||
|
||||
assert list(models.Track.objects.order_for_album()) == [t1, t3, t2, t4]
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@ def test_artist_with_albums_serializer(factories, to_api_date):
|
|||
|
||||
def test_album_track_serializer(factories, to_api_date):
|
||||
upload = factories["music.Upload"](
|
||||
track__license="cc-by-4.0", track__copyright="test"
|
||||
track__license="cc-by-4.0", track__copyright="test", track__disc_number=2
|
||||
)
|
||||
track = upload.track
|
||||
setattr(track, "playable_uploads", [upload])
|
||||
|
|
@ -84,6 +84,7 @@ def test_album_track_serializer(factories, to_api_date):
|
|||
"mbid": str(track.mbid),
|
||||
"title": track.title,
|
||||
"position": track.position,
|
||||
"disc_number": track.disc_number,
|
||||
"uploads": [serializers.TrackUploadSerializer(upload).data],
|
||||
"creation_date": to_api_date(track.creation_date),
|
||||
"listen_url": track.listen_url,
|
||||
|
|
@ -174,7 +175,7 @@ def test_album_serializer(factories, to_api_date):
|
|||
|
||||
def test_track_serializer(factories, to_api_date):
|
||||
upload = factories["music.Upload"](
|
||||
track__license="cc-by-4.0", track__copyright="test"
|
||||
track__license="cc-by-4.0", track__copyright="test", track__disc_number=2
|
||||
)
|
||||
track = upload.track
|
||||
setattr(track, "playable_uploads", [upload])
|
||||
|
|
@ -185,6 +186,7 @@ def test_track_serializer(factories, to_api_date):
|
|||
"mbid": str(track.mbid),
|
||||
"title": track.title,
|
||||
"position": track.position,
|
||||
"disc_number": track.disc_number,
|
||||
"uploads": [serializers.TrackUploadSerializer(upload).data],
|
||||
"creation_date": to_api_date(track.creation_date),
|
||||
"lyrics": track.get_lyrics_url(),
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ def test_can_create_track_from_file_metadata_no_mbid(db, mocker):
|
|||
"album": "Test album",
|
||||
"date": datetime.date(2012, 8, 15),
|
||||
"track_number": 4,
|
||||
"disc_number": 2,
|
||||
"license": "Hello world: http://creativecommons.org/licenses/by-sa/4.0/",
|
||||
"copyright": "2018 Someone",
|
||||
}
|
||||
|
|
@ -34,6 +35,7 @@ def test_can_create_track_from_file_metadata_no_mbid(db, mocker):
|
|||
assert track.title == metadata["title"]
|
||||
assert track.mbid is None
|
||||
assert track.position == 4
|
||||
assert track.disc_number == 2
|
||||
assert track.license.code == "cc-by-sa-4.0"
|
||||
assert track.copyright == metadata["copyright"]
|
||||
assert track.album.title == metadata["album"]
|
||||
|
|
@ -66,6 +68,7 @@ def test_can_create_track_from_file_metadata_mbid(factories, mocker):
|
|||
assert track.title == metadata["title"]
|
||||
assert track.mbid == metadata["musicbrainz_recordingid"]
|
||||
assert track.position == 4
|
||||
assert track.disc_number is None
|
||||
assert track.album.title == metadata["album"]
|
||||
assert track.album.mbid == metadata["musicbrainz_albumid"]
|
||||
assert track.album.artist.mbid == metadata["musicbrainz_albumartistid"]
|
||||
|
|
@ -402,6 +405,7 @@ def test_federation_audio_track_to_metadata(now):
|
|||
"musicbrainzId": str(uuid.uuid4()),
|
||||
"name": "Black in back",
|
||||
"position": 5,
|
||||
"disc": 2,
|
||||
"published": published.isoformat(),
|
||||
"license": "http://creativecommons.org/licenses/by-sa/4.0/",
|
||||
"copyright": "2018 Someone",
|
||||
|
|
@ -441,6 +445,7 @@ def test_federation_audio_track_to_metadata(now):
|
|||
"title": payload["name"],
|
||||
"date": released,
|
||||
"track_number": payload["position"],
|
||||
"disc_number": payload["disc"],
|
||||
"license": "http://creativecommons.org/licenses/by-sa/4.0/",
|
||||
"copyright": "2018 Someone",
|
||||
# musicbrainz
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue