============================= test session starts ==============================
platform darwin -- Python 3.13.7, pytest-9.0.3, pluggy-1.6.0 -- ~/granola-tool/.venv/bin/python
cachedir: .pytest_cache
rootdir: ~/granola-tool
configfile: pyproject.toml
plugins: cov-7.1.0
collecting ... collected 18 items

scripts/tests/test_cmd_export.py::test_cmd_export_generates_fathom_compatible_markdown PASSED [  5%]
scripts/tests/test_cmd_list.py::test_cmd_list_json_output PASSED         [ 11%]
scripts/tests/test_cmd_list.py::test_cmd_list_text_output PASSED         [ 16%]
scripts/tests/test_cmd_show.py::test_cmd_show_finds_by_id_prefix PASSED  [ 22%]
scripts/tests/test_cmd_show.py::test_cmd_show_finds_by_title_substring PASSED [ 27%]
scripts/tests/test_cmd_show.py::test_cmd_show_exits_on_not_found PASSED  [ 33%]
scripts/tests/test_compute_duration.py::test_compute_duration_from_utterance_timestamps PASSED [ 38%]
scripts/tests/test_compute_duration.py::test_compute_duration_returns_none_for_empty_list PASSED [ 44%]
scripts/tests/test_compute_duration.py::test_compute_duration_returns_none_for_missing_timestamps PASSED [ 50%]
scripts/tests/test_extract_calendar_times.py::test_extract_calendar_times_returns_start_and_end_from_calendar_event PASSED [ 55%]
scripts/tests/test_extract_calendar_times.py::test_extract_calendar_times_returns_none_for_missing_event PASSED [ 61%]
scripts/tests/test_extract_calendar_times.py::test_extract_calendar_times_returns_none_for_non_dict_event PASSED [ 66%]
scripts/tests/test_extract_people.py::test_extract_people_returns_names_and_emails_from_nested_attendees PASSED [ 72%]
scripts/tests/test_format_time.py::test_format_time_converts_iso_to_hhmm PASSED [ 77%]
scripts/tests/test_format_time.py::test_format_time_returns_question_mark_for_none PASSED [ 83%]
scripts/tests/test_format_time.py::test_format_time_returns_question_mark_for_invalid PASSED [ 88%]
scripts/tests/test_load_cache.py::test_load_cache_parses_string_state PASSED [ 94%]
scripts/tests/test_load_cache.py::test_load_cache_parses_object_state PASSED [100%]

============================== 18 passed in 0.05s ==============================
