Compare commits

...

2 Commits

Author SHA1 Message Date
claude[bot]
d298c69645 chore: remove unused prisma.types import from db_test.py
Co-authored-by: Nicholas Tindle <ntindle@users.noreply.github.com>
2025-12-26 15:55:55 +00:00
itsababseh
d9dbd5f8c0 Filter creators with approved agents 2025-12-26 15:55:55 +00:00
2 changed files with 36 additions and 0 deletions

View File

@@ -459,6 +459,9 @@ async def get_store_creators(
# Build where clause with sanitized inputs
where = {}
# Only return creators with approved agents
where["num_agents"] = {"gt": 0}
if featured:
where["is_featured"] = featured

View File

@@ -411,3 +411,36 @@ async def test_get_store_agents_search_category_array_injection():
# Verify the query executed without error
# Category should be parameterized, preventing SQL injection
assert isinstance(result.agents, list)
@pytest.mark.asyncio(loop_scope="session")
async def test_get_store_creators_only_returns_approved(mocker):
mock_creators = [
prisma.models.Creator(
name="Creator One",
username="creator1",
description="desc",
avatar_url="avatar.jpg",
num_agents=1,
agent_rating=4.5,
agent_runs=10,
is_featured=False,
)
]
mock_creator = mocker.patch("prisma.models.Creator.prisma")
mock_creator.return_value.find_many = mocker.AsyncMock(return_value=mock_creators)
mock_creator.return_value.count = mocker.AsyncMock(return_value=1)
result = await db.get_store_creators()
assert len(result.creators) == 1
assert result.creators[0].username == "creator1"
mock_creator.return_value.find_many.assert_called_once()
mock_creator.return_value.count.assert_called_once()
_, find_kwargs = mock_creator.return_value.find_many.call_args
_, count_kwargs = mock_creator.return_value.count.call_args
assert find_kwargs["where"].num_agents == {"gt": 0}
assert count_kwargs["where"].num_agents == {"gt": 0}