topen/test/test_cli.py
Marty Oehme 3ef552bbe5
ref: Print optional error message on editor process error
Editor function takes an optional io object which is used to print an
error output if the subprocess errors.
2025-11-29 18:52:44 +01:00

19 lines
592 B
Python

from pathlib import Path
from unittest.mock import Mock, patch
from topen import add_annotation, open_editor
def test_open_editor_escapes_shell():
"""Ensure filenames with spaces/metas do not allow shell injection."""
with patch("subprocess.run") as run_mock:
open_editor(Path("my note$1.txt"), "vim")
run_mock.assert_called_once_with(["vim", "my note$1.txt"], check=True)
#
# def test_add_annotation_saves_task():
# task = Mock()
# add_annotation(task, "hello")
# task.add_annotation.assert_called_once_with("hello")
# task.save.assert_called_once()