Added {filepath} template field in prep for --post-command and other goodies

This commit is contained in:
Rhet Turnbull
2021-06-13 18:40:45 -07:00
parent 2cdec3fc78
commit c0bd0ffc9f
9 changed files with 173 additions and 37 deletions

View File

@@ -1041,3 +1041,29 @@ def test_export_dir():
with pytest.raises(ValueError):
rendered, _ = template.render("{export_dir.foo}", options)
def test_filepath():
"""Test {filepath} template"""
from osxphotos.photoinfo import PhotoInfoNone
from osxphotos.phototemplate import PhotoTemplate
options = RenderOptions(filepath="/foo/bar.jpeg")
template = PhotoTemplate(PhotoInfoNone())
rendered, _ = template.render("{filepath}", options)
assert rendered[0] == "/foo/bar.jpeg"
rendered, _ = template.render("{filepath.name}", options)
assert rendered[0] == "bar.jpeg"
rendered, _ = template.render("{filepath.parent}", options)
assert rendered[0] == "/foo"
rendered, _ = template.render("{filepath.stem}", options)
assert rendered[0] == "bar"
rendered, _ = template.render("{filepath.suffix}", options)
assert rendered[0] == ".jpeg"
with pytest.raises(ValueError):
rendered, _ = template.render("{filepath.foo}", options)