Skip to main content
Glama

MCP OmniFocus

by someposer
test_scripting.py1.17 kB
from textwrap import dedent from unittest.mock import MagicMock, patch import pytest from mcp_omnifocus.utils.scripting import run_jxa_script def test_successful_script_execution(): """Test successful AppleScript execution.""" # Mock successful subprocess.run mock_result = MagicMock() mock_result.returncode = 0 mock_result.stdout = "Hello World\n" mock_result.stderr = "" with patch("subprocess.run", return_value=mock_result) as mock_run: script = dedent(""" (() => { return "Hello World"; })();""") output = run_jxa_script(script) # Verify subprocess.run was called correctly mock_run.assert_called_once_with( ["osascript", "-l", "JavaScript", "-e", script], capture_output=True, text=True, timeout=30 ) # Verify results assert output == "Hello World" @pytest.mark.requires_omnifocus def test_evaluate_javascript(): """Test evaluate_javascript function.""" script = dedent(""" (() => { return "Hello from OmniFocus"; })();""") output = run_jxa_script(script) assert output == "Hello from OmniFocus"

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/someposer/mcp-omnifocus'

If you have feedback or need assistance with the MCP directory API, please join our Discord server