mirror of
https://github.com/obra/superpowers
synced 2026-07-26 20:44:29 +00:00
20 lines
445 B
Python
20 lines
445 B
Python
|
|
import pytest
|
||
|
|
from unittest.mock import MagicMock
|
||
|
|
|
||
|
|
|
||
|
|
@pytest.fixture
|
||
|
|
def mock_ctx():
|
||
|
|
ctx = MagicMock()
|
||
|
|
ctx._hooks = {}
|
||
|
|
ctx._injected = []
|
||
|
|
|
||
|
|
def register_hook(event, fn):
|
||
|
|
ctx._hooks[event] = fn
|
||
|
|
|
||
|
|
def inject_message(content, role="user"):
|
||
|
|
ctx._injected.append({"content": content, "role": role})
|
||
|
|
|
||
|
|
ctx.register_hook.side_effect = register_hook
|
||
|
|
ctx.inject_message.side_effect = inject_message
|
||
|
|
return ctx
|