Skip malformed Gitea activity feed entries #90

Merged
rockachopa merged 1 commits from timmy/89-skip-malformed-activity-feed-entries into main 2026-08-06 09:01:36 +00:00
2 changed files with 31 additions and 0 deletions

View File

@ -48,4 +48,5 @@ async def activity_events() -> list[dict]:
"created_at": event.get("created", ""),
}
for event in events
if isinstance(event, dict)
]

View File

@ -118,3 +118,33 @@ async def test_activity_events_fetches_feed_for_authenticated_user(monkeypatch):
"created_at": "2026-08-05T03:00:00Z",
}]
assert paths == ["users/timmy/activities/feeds?limit=20"]
@pytest.mark.anyio
async def test_activity_events_skips_malformed_feed_entries(monkeypatch):
async def fake_current_user():
return {"login": "timmy"}
async def fake_fetch(path):
return [
None,
{
"op_type": "push",
"act_user": {"login": "timmy"},
"repo": {"full_name": "stackchain/stackchain-dashboard"},
"created": "2026-08-06T08:00:00Z",
},
"invalid",
]
monkeypatch.setattr(gitea_proxy, "current_user", fake_current_user)
monkeypatch.setattr(gitea_proxy, "fetch", fake_fetch)
result = await gitea_proxy.activity_events()
assert result == [{
"type": "push",
"actor": {"login": "timmy"},
"repo": {"full_name": "stackchain/stackchain-dashboard"},
"created_at": "2026-08-06T08:00:00Z",
}]