Files
sigal/tests/test_plugins.py

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

64 lines
1.8 KiB
Python
Raw Normal View History

2018-01-04 00:15:47 +01:00
import os
2020-03-15 22:58:03 -03:00
from sigal.gallery import Gallery
2023-07-15 12:58:10 +02:00
from sigal.utils import init_plugins
2018-01-04 00:15:47 +01:00
CURRENT_DIR = os.path.dirname(__file__)
def _build_with_plugin(
settings, input_path, output_path, plugin, **additional_settings
):
settings["source"] = os.path.join(settings["source"], input_path)
settings["destination"] = str(output_path)
settings["plugins"] = [plugin]
settings.update(additional_settings)
2018-01-04 00:15:47 +01:00
2018-02-16 23:36:52 +01:00
init_plugins(settings)
gal = Gallery(settings, ncpu=1)
2018-02-16 23:36:52 +01:00
gal.build()
return gal
2018-01-04 00:15:47 +01:00
def test_media_page(settings, tmp_path, disconnect_signals):
_build_with_plugin(settings, "dir2", tmp_path, "sigal.plugins.media_page")
assert (tmp_path / "KeckObservatory20071020.jpg.html").is_file()
def test_nomedia(settings, tmp_path, disconnect_signals):
_build_with_plugin(settings, "nomedia", tmp_path, "sigal.plugins.nomedia")
for path, dirs, files in os.walk(str(tmp_path)):
assert "ignore" not in path
for file in files:
assert "ignore" not in file
def test_nonmedia_files(settings, tmp_path, disconnect_signals):
_build_with_plugin(
settings,
"nonmedia_files",
tmp_path,
"sigal.plugins.nonmedia_files",
nonmedia_files_options={"thumb_bg_color": "red"},
)
assert (tmp_path / "dummy.pdf").is_file()
assert (tmp_path / "thumbnails" / "dummy.tn.jpg").is_file()
def test_titleregexp(settings, tmp_path, disconnect_signals):
conf = {
"regexp": [
{
"search": r"test ?(.*)",
"replace": r"titleregexp \1",
"substitute": [["2", "02"]],
"break": 1,
}
]
}
gal = _build_with_plugin(
settings, "dir1", tmp_path, "sigal.plugins.titleregexp", titleregexp=conf
)
assert gal.albums["test2"].title == "titleregexp 02"