codex author changes
This commit is contained in:
@@ -83,6 +83,69 @@ class InferBookTests(unittest.TestCase):
|
||||
self.assertEqual(row["sequence"], "05")
|
||||
self.assertEqual(row["title"], "Pogrzebany")
|
||||
|
||||
def test_build_proposed_path_omits_author_from_subfolders(self) -> None:
|
||||
proposed_path = report.build_proposed_abs_path(
|
||||
"Jussi Adler-Olsen",
|
||||
"Adler-Olsen Jussi - Departament Q",
|
||||
"04",
|
||||
"",
|
||||
"Kartoteka 64 - Jussi Adler-Olsen",
|
||||
"",
|
||||
)
|
||||
|
||||
self.assertEqual(
|
||||
proposed_path,
|
||||
"Jussi Adler-Olsen/Departament Q/Vol. 04 - Kartoteka 64",
|
||||
)
|
||||
|
||||
def test_build_proposed_path_omits_author_only_series_folder(self) -> None:
|
||||
proposed_path = report.build_proposed_abs_path(
|
||||
"Jeffrey Archer",
|
||||
"Archer",
|
||||
"",
|
||||
"",
|
||||
"Kain I Abel",
|
||||
"",
|
||||
)
|
||||
|
||||
self.assertEqual(proposed_path, "Jeffrey Archer/Kain I Abel")
|
||||
|
||||
def test_strips_nearly_matching_author_prefix_from_title(self) -> None:
|
||||
row = self.infer_row(
|
||||
"Abmercombie Joe/Abercrombie Joe - Czerwona kraina (Audiobooki2.pl)",
|
||||
["Czerwona kraina (01).mp3"],
|
||||
)
|
||||
|
||||
self.assertEqual(row["author"], "Abmercombie Joe")
|
||||
self.assertEqual(row["title"], "Czerwona kraina (Audiobooki2 pl)")
|
||||
self.assertEqual(
|
||||
row["proposed_abs_path"],
|
||||
"Abmercombie Joe/Czerwona kraina (Audiobooki2 pl)",
|
||||
)
|
||||
|
||||
def test_strips_nearly_matching_author_prefix_from_nested_title(self) -> None:
|
||||
row = self.infer_row(
|
||||
"Dan Simons/Dan Simmons - cykl Hyperion (tom 3) Endymion (Audiobooki2.pl)",
|
||||
["001 Endymion.mp3"],
|
||||
)
|
||||
|
||||
self.assertEqual(row["author"], "Dan Simons")
|
||||
self.assertEqual(row["title"], "cykl Hyperion (tom 3) Endymion (Audiobooki2 pl)")
|
||||
self.assertEqual(
|
||||
row["proposed_abs_path"],
|
||||
"Dan Simons/cykl Hyperion (tom 3) Endymion (Audiobooki2 pl)",
|
||||
)
|
||||
|
||||
def test_strips_multi_author_prefix_when_current_author_is_in_root(self) -> None:
|
||||
row = self.infer_row(
|
||||
"Chmielarz Wojciech/Ćwiek Jakub i Chmielarz Wojciech - Skowyt",
|
||||
["1.mp3"],
|
||||
)
|
||||
|
||||
self.assertEqual(row["author"], "Chmielarz Wojciech")
|
||||
self.assertEqual(row["title"], "Skowyt")
|
||||
self.assertEqual(row["proposed_abs_path"], "Chmielarz Wojciech/Skowyt")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
||||
Reference in New Issue
Block a user