test(entry_service): add a failure case test for create method

This commit adds a unit test for an important "unhappy path" in the
EntryService's `create` method.

It specifically verifies that the method gracefully returns `None`
when provided with a `travel_diary_id` that does not exist in the
database, ensuring the initial guard clause works as expected.
This commit is contained in:
Gustavo Henrique Santos Souza de Miranda 2025-07-20 15:21:49 -03:00
parent e46f02cc39
commit 0227879bb3
1 changed files with 16 additions and 1 deletions

View File

@ -53,3 +53,18 @@ def test_create_entry_successfully(populated_db_session):
entry_in_db = session.query(Entry).filter_by(id=created_entry.id).one()
assert entry_in_db.title == "Primeiro Dia na Praia"
def test_create_entry_fails_when_diary_id_is_invalid(db_session):
session = db_session
service = EntryService(session)
invalid_id = 666
result = service.create(
travel_diary_id=invalid_id,
title="Título de Teste",
text="Texto de Teste",
date=datetime(2025, 7, 20),
photos=[]
)
assert result is None