mirror of
https://github.com/nathom/streamrip.git
synced 2025-06-01 07:48:25 -04:00
Album downloads working
This commit is contained in:
parent
837e934476
commit
89f76b7f58
20 changed files with 338 additions and 125 deletions
BIN
tests/1x1_pixel.jpg
Normal file
BIN
tests/1x1_pixel.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 631 B |
File diff suppressed because one or more lines are too long
97
tests/test_tagger.py
Normal file
97
tests/test_tagger.py
Normal file
|
@ -0,0 +1,97 @@
|
|||
import pytest
|
||||
from mutagen.flac import FLAC
|
||||
from util import arun
|
||||
|
||||
from streamrip.metadata import *
|
||||
from streamrip.tagger import tag_file
|
||||
|
||||
test_flac = "tests/silence.flac"
|
||||
test_cover = "tests/1x1_pixel.jpg"
|
||||
|
||||
|
||||
def wipe_test_flac():
|
||||
audio = FLAC(test_flac)
|
||||
# Remove all tags
|
||||
audio.delete()
|
||||
audio.save()
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def sample_metadata() -> TrackMetadata:
|
||||
return TrackMetadata(
|
||||
TrackInfo(
|
||||
id="12345",
|
||||
quality=3,
|
||||
bit_depth=24,
|
||||
explicit=True,
|
||||
sampling_rate=96,
|
||||
work=None,
|
||||
),
|
||||
"testtitle",
|
||||
AlbumMetadata(
|
||||
AlbumInfo("5678", 4, "flac"),
|
||||
"testalbum",
|
||||
"testalbumartist",
|
||||
"1999",
|
||||
["rock", "pop"],
|
||||
Covers(),
|
||||
14,
|
||||
3,
|
||||
"testalbumcomposer",
|
||||
"testcomment",
|
||||
compilation="testcompilation",
|
||||
copyright="(c) stuff (p) other stuff",
|
||||
date="1998-02-13",
|
||||
description="testdesc",
|
||||
encoder="ffmpeg",
|
||||
grouping="testgroup",
|
||||
lyrics="ye ye ye",
|
||||
purchase_date=None,
|
||||
),
|
||||
"testartist",
|
||||
3,
|
||||
1,
|
||||
"testcomposer",
|
||||
)
|
||||
|
||||
|
||||
def test_tag_flac_no_cover(sample_metadata):
|
||||
wipe_test_flac()
|
||||
arun(tag_file(test_flac, sample_metadata, None))
|
||||
file = FLAC(test_flac)
|
||||
assert file["title"][0] == "testtitle"
|
||||
assert file["album"][0] == "testalbum"
|
||||
assert file["composer"][0] == "testcomposer"
|
||||
assert file["comment"][0] == "testcomment"
|
||||
assert file["artist"][0] == "testartist"
|
||||
assert file["albumartist"][0] == "testalbumartist"
|
||||
assert file["year"][0] == "1999"
|
||||
assert file["genre"][0] == "rock, pop"
|
||||
assert file["tracknumber"][0] == "03"
|
||||
assert file["discnumber"][0] == "01"
|
||||
assert file["copyright"][0] == "© stuff ℗ other stuff"
|
||||
assert file["tracktotal"][0] == "14"
|
||||
assert file["date"][0] == "1998-02-13"
|
||||
assert "purchase_date" not in file, file["purchase_date"]
|
||||
|
||||
|
||||
def test_tag_flac_cover(sample_metadata):
|
||||
wipe_test_flac()
|
||||
arun(tag_file(test_flac, sample_metadata, test_cover))
|
||||
file = FLAC(test_flac)
|
||||
assert file["title"][0] == "testtitle"
|
||||
assert file["album"][0] == "testalbum"
|
||||
assert file["composer"][0] == "testcomposer"
|
||||
assert file["comment"][0] == "testcomment"
|
||||
assert file["artist"][0] == "testartist"
|
||||
assert file["albumartist"][0] == "testalbumartist"
|
||||
assert file["year"][0] == "1999"
|
||||
assert file["genre"][0] == "rock, pop"
|
||||
assert file["tracknumber"][0] == "03"
|
||||
assert file["discnumber"][0] == "01"
|
||||
assert file["copyright"][0] == "© stuff ℗ other stuff"
|
||||
assert file["tracktotal"][0] == "14"
|
||||
assert file["date"][0] == "1998-02-13"
|
||||
with open(test_cover, "rb") as img:
|
||||
assert file.pictures[0].data == img.read()
|
||||
assert "purchase_date" not in file, file["purchase_date"]
|
Loading…
Add table
Add a link
Reference in a new issue