Compare commits

..

1 Commits

Author SHA1 Message Date
79698e308b Fix tests
Some checks failed
CI / lint (ubuntu-latest, 3.9) (push) Has been cancelled
CI / build-and-test (macos-13, 3.13) (push) Has been cancelled
CI / build-and-test (macos-13, 3.9) (push) Has been cancelled
CI / build-and-test (macos-14, 3.13) (push) Has been cancelled
CI / build-and-test (macos-14, 3.9) (push) Has been cancelled
CI / build-and-test (ubuntu-22.04, 3.13) (push) Has been cancelled
CI / build-and-test (ubuntu-22.04, 3.9) (push) Has been cancelled
CI / build-and-test (ubuntu-22.04-arm, 3.13) (push) Has been cancelled
CI / build-and-test (ubuntu-22.04-arm, 3.9) (push) Has been cancelled
CI / build-and-test (windows-latest, 3.13) (push) Has been cancelled
CI / build-and-test (windows-latest, 3.9) (push) Has been cancelled
2025-07-18 18:14:22 -07:00
2 changed files with 20 additions and 12 deletions

View File

@ -213,12 +213,15 @@ class ComicArchive:
return self.archiver.extension() == ".cbz"
def seems_to_be_a_comic_archive(self) -> bool:
if (
not (isinstance(self.archiver, UnknownArchiver))
and self.get_number_of_pages() > 0
and self.archiver.is_valid(self.path)
):
return True
try:
if (
not (isinstance(self.archiver, UnknownArchiver))
and self.get_number_of_pages() > 0
and self.archiver.is_valid(self.path)
):
return True
except Exception:
...
return False

View File

@ -4,6 +4,7 @@ import os
import pathlib
import platform
import shutil
from contextlib import nullcontext as does_not_raise
import pytest
from importlib_metadata import entry_points
@ -49,7 +50,8 @@ def test_write_cr(tmp_comic_path):
md = tmp_comic.read_tags("cr")
md.apply_default_page_list(tmp_comic.get_page_name_list())
assert tmp_comic.write_tags(md, "cr")
with does_not_raise():
tmp_comic.write_tags(md, "cr")
md = tmp_comic.read_tags("cr")
@ -61,7 +63,8 @@ def test_save_cr_rar(tmp_path, md_saved):
tmp_comic = comicapi.comicarchive.ComicArchive(tmp_path / cbr_path.name)
assert tmp_comic.seems_to_be_a_comic_archive()
assert tmp_comic.write_tags(comicapi.genericmetadata.md_test, "cr")
with does_not_raise():
tmp_comic.write_tags(comicapi.genericmetadata.md_test, "cr")
md = tmp_comic.read_tags("cr")
@ -77,7 +80,8 @@ def test_page_type_write(tmp_comic_path):
t = md.pages[0]
t.type = ""
assert tmp_comic.write_tags(md, "cr")
with does_not_raise():
tmp_comic.write_tags(md, "cr")
md = tmp_comic.read_tags("cr")
@ -89,8 +93,8 @@ def test_invalid_zip(tmp_comic_path):
f.write(b"PK\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")
tmp_comic = comicapi.comicarchive.ComicArchive(tmp_comic_path)
result = tmp_comic.write_tags(comicapi.genericmetadata.md_test, "cr") # This is not the first file
assert result
with pytest.raises(OSError, match="^Error listing files in zip archive"):
tmp_comic.write_tags(comicapi.genericmetadata.md_test, "cr") # This is not the first file
assert not tmp_comic.seems_to_be_a_comic_archive() # Calls archiver.is_valid
@ -113,7 +117,8 @@ def test_copy_from_archive(archiver, tmp_path, cbz, md_saved):
archive = archiver.open(comic_path)
assert archive.copy_from_archive(cbz.archiver)
with does_not_raise():
archive.copy_from_archive(cbz.archiver)
comic_archive = comicapi.comicarchive.ComicArchive(comic_path)