test: mocked-session rule tests stub the always-on exclusions lookup; tool count 24 (#2880)
CI & Build / Python lint (push) Successful in 3s
CI & Build / Plugin hooks (push) Successful in 7s
CI & Build / integration (push) Successful in 21s
CI & Build / TypeScript typecheck (push) Successful in 34s
CI & Build / Python tests (push) Successful in 1m5s
CI & Build / Build & push image (push) Successful in 29s
CI & Build / Python lint (push) Successful in 3s
CI & Build / Plugin hooks (push) Successful in 7s
CI & Build / integration (push) Successful in 21s
CI & Build / TypeScript typecheck (push) Successful in 34s
CI & Build / Python tests (push) Successful in 1m5s
CI & Build / Build & push image (push) Successful in 29s
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -169,7 +169,7 @@ def test_register_attaches_all_sixteen_tools():
|
|||||||
mcp = FakeMCP()
|
mcp = FakeMCP()
|
||||||
|
|
||||||
register(mcp)
|
register(mcp)
|
||||||
assert len(mcp.names) == 22
|
assert len(mcp.names) == 24 # +exclude/include_always_on_rulebook (milestone 297)
|
||||||
# spot-check a few names
|
# spot-check a few names
|
||||||
assert "list_rulebooks" in mcp.names
|
assert "list_rulebooks" in mcp.names
|
||||||
assert "create_rule" in mcp.names
|
assert "create_rule" in mcp.names
|
||||||
|
|||||||
@@ -4,6 +4,15 @@ import pytest
|
|||||||
from tests.helpers import fake_note
|
from tests.helpers import fake_note
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture(autouse=True)
|
||||||
|
def _no_exclusions():
|
||||||
|
"""build_session_context asks for the bound project's always-on
|
||||||
|
exclusions (milestone 297); these tests script the rules only."""
|
||||||
|
with patch("scribe.services.plugin_context.rulebooks_svc.excluded_always_on_rulebooks",
|
||||||
|
AsyncMock(return_value=[])):
|
||||||
|
yield
|
||||||
|
|
||||||
|
|
||||||
pytestmark = pytest.mark.usefixtures("_no_supersession")
|
pytestmark = pytest.mark.usefixtures("_no_supersession")
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,15 @@ import pytest
|
|||||||
from tests.helpers import fake_rule, fake_rulebook, fake_topic, make_mock_session
|
from tests.helpers import fake_rule, fake_rulebook, fake_topic, make_mock_session
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture(autouse=True)
|
||||||
|
def _no_exclusions():
|
||||||
|
"""get_applicable_rules asks for the project's always-on exclusions
|
||||||
|
(milestone 297) through its own session; these mocked-session tests
|
||||||
|
script the rule queries only, so the exclusions lookup is stubbed empty."""
|
||||||
|
with patch("scribe.services.rulebooks.excluded_always_on_rulebooks", AsyncMock(return_value=[])):
|
||||||
|
yield
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.asyncio
|
@pytest.mark.asyncio
|
||||||
async def test_create_rulebook_stores_to_db():
|
async def test_create_rulebook_stores_to_db():
|
||||||
mock_session = make_mock_session()
|
mock_session = make_mock_session()
|
||||||
|
|||||||
Reference in New Issue
Block a user