# tests/test_fetch_reddit.py
import feedparser
import fetch_reddit

ATOM = """<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<entry><title>New Beach House single</title>
<link href="https://www.reddit.com/r/indieheads/comments/abc/x/"/>
<id>t3_abc</id><updated>2026-07-22T10:00:00+00:00</updated></entry>
<entry><title>Weekly discussion thread</title>
<link href="https://www.reddit.com/r/indieheads/comments/def/y/"/>
<id>t3_def</id><updated>2026-07-21T10:00:00+00:00</updated></entry>
</feed>"""


def test_parse_feed_shape_and_cap():
    parsed = feedparser.parse(ATOM)
    recs = fetch_reddit.parse_feed("indieheads", parsed, cap=1)
    assert len(recs) == 1                       # кап соблюдён (2 записи → 1)
    assert recs[0]["post_id"] == "reddit:indieheads:abc"
    assert recs[0]["platform"] == "reddit"
    assert recs[0]["account"] == "indieheads"
    assert recs[0]["caption"] == "New Beach House single"
    assert recs[0]["permalink"].endswith("/abc/x/")
    assert recs[0]["posted_at"].startswith("2026-07-22")
    assert recs[0]["metric"] is None            # score в RSS не приходит
