Tests / test_and_lint (push) Successful in 13s
Reviewed-on: #12 Co-authored-by: Mathias Scheider <mathias2784@web.de>
28 lines
864 B
Python
28 lines
864 B
Python
import pytest
|
|
|
|
from photools3.llm_session import LlmSession
|
|
|
|
|
|
@pytest.mark.skipif(
|
|
not LlmSession(system_prompt="").is_api_reachable(), reason="API not available"
|
|
)
|
|
def test_llm_session(llm_session, test_photo):
|
|
llm_session.system_prompt = "Return only JSON format: {'keywords': ['...']}"
|
|
result = llm_session.call(
|
|
prompt="keywords for the attached picture", photos=[test_photo]
|
|
)
|
|
assert result is not None
|
|
|
|
|
|
@pytest.mark.skipif(
|
|
not LlmSession(system_prompt="").is_api_reachable(), reason="API not available"
|
|
)
|
|
def test_llm_session_captions_and_keywords(
|
|
llm_session_captions_and_keywords, test_photo
|
|
):
|
|
result = llm_session_captions_and_keywords.call(photos=[test_photo])
|
|
assert "caption" in result
|
|
assert "tags" in result
|
|
assert isinstance(result["caption"], str)
|
|
assert isinstance(result["tags"], list)
|