fix: youtube (services) comment formatter crashes on a non-dict comment (#1746)

This commit is contained in:
Afonso Coutinho
2026-06-03 05:29:01 +01:00
committed by GitHub
parent 9aa2445ec7
commit 6e38d3f2ef
2 changed files with 17 additions and 0 deletions

View File

@@ -0,0 +1,15 @@
from services.youtube.youtube_handler import format_comments_for_context
def test_format_comments_skips_non_dict_entries():
# comments come from json.loads of yt-dlp output; a malformed entry (None
# or a bare string) made the old loop call .get on a non-dict and crash.
data = {"success": True, "comments": [
{"author": "alice", "text": "great", "likes": 4},
"junk-row",
None,
{"author": "bob", "text": "nice", "likes": 1},
]}
out = format_comments_for_context(data, "https://youtu.be/x")
assert "@alice" in out and "@bob" in out
assert "junk-row" not in out