Migrate from Poetry and pyenv to uv
This commit is contained in:
+44
-13
@@ -1,4 +1,5 @@
|
||||
"""Tests for the pool naming convention helpers (src.core.naming)."""
|
||||
|
||||
import pytest
|
||||
|
||||
from src.core.naming import (
|
||||
@@ -9,14 +10,23 @@ from src.core.naming import (
|
||||
parse_3d_format,
|
||||
parse_pool_stem,
|
||||
parse_tmdb_id,
|
||||
three_d_format_from_filename,
|
||||
year_from_filename,
|
||||
)
|
||||
|
||||
|
||||
@pytest.mark.parametrize("year,ok", [
|
||||
("1968", True), (1968, True), ("968", False), ("19688", False),
|
||||
("abcd", False), ("", False), (" 1999 ", True),
|
||||
])
|
||||
@pytest.mark.parametrize(
|
||||
"year,ok",
|
||||
[
|
||||
("1968", True),
|
||||
(1968, True),
|
||||
("968", False),
|
||||
("19688", False),
|
||||
("abcd", False),
|
||||
("", False),
|
||||
(" 1999 ", True),
|
||||
],
|
||||
)
|
||||
def test_is_valid_year(year, ok):
|
||||
assert is_valid_year(year) is ok
|
||||
|
||||
@@ -82,8 +92,10 @@ def test_is_canonical_pool_stem():
|
||||
|
||||
|
||||
def test_canonical_pool_stem_with_3d_format():
|
||||
assert canonical_pool_stem("Avatar", 2009, 19995, "hsbs") == \
|
||||
"Avatar (2009) [tmdbid-19995].3D.HSBS"
|
||||
assert (
|
||||
canonical_pool_stem("Avatar", 2009, 19995, "hsbs")
|
||||
== "Avatar (2009) [tmdbid-19995].3D.HSBS"
|
||||
)
|
||||
# upper-cased regardless of input case
|
||||
assert canonical_pool_stem("Avatar", 2009, None, "fsbs") == "Avatar (2009).3D.FSBS"
|
||||
# empty/None → no tag at all
|
||||
@@ -118,12 +130,31 @@ def test_canonical_pool_stem_3d_without_tmdb_id():
|
||||
assert parse_3d_format("Avatar (2009).3D.MVC") == "MVC"
|
||||
|
||||
|
||||
@pytest.mark.parametrize("name,year", [
|
||||
("Matrix.1999.1080p.BluRay.mkv", "1999"),
|
||||
("Šíleně smutná princezna (1968).mkv", "1968"),
|
||||
("Movie 2001 2010 remux.mkv", "2010"), # last standalone year wins
|
||||
("No Year Here.mkv", None),
|
||||
("Film 12345.mkv", None), # not a bare 4-digit year
|
||||
])
|
||||
@pytest.mark.parametrize(
|
||||
"name,year",
|
||||
[
|
||||
("Matrix.1999.1080p.BluRay.mkv", "1999"),
|
||||
("Šíleně smutná princezna (1968).mkv", "1968"),
|
||||
("Movie 2001 2010 remux.mkv", "2010"), # last standalone year wins
|
||||
("No Year Here.mkv", None),
|
||||
("Film 12345.mkv", None), # not a bare 4-digit year
|
||||
],
|
||||
)
|
||||
def test_year_from_filename(name, year):
|
||||
assert year_from_filename(name) == year
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"name,fmt",
|
||||
[
|
||||
("Avatar.2009.3D.HSBS.BluRay.mkv", "HSBS"),
|
||||
("Avatar.2009.3d.hsbs.mkv", "HSBS"),
|
||||
("Avatar (2009) 3D_FTAB 1080p.mkv", "FTAB"),
|
||||
("Avatar (2009) - 3D-MVC.mkv", "MVC"),
|
||||
("Avatar (2009).mkv", None),
|
||||
("Premium3D.HSBS.mkv", None), # "3D" glued to a word doesn't count
|
||||
("Avatar.2009.HSBS.mkv", None), # no "3D" token at all
|
||||
],
|
||||
)
|
||||
def test_three_d_format_from_filename(name, fmt):
|
||||
assert three_d_format_from_filename(name) == fmt
|
||||
|
||||
Reference in New Issue
Block a user