Files
scrap-homes-bot/tests/test_listings.py
2026-09-22 17:25:03 +02:00

35 lines
1.1 KiB
Python

from property_bot.listings import format_listing, listing_from_event
def event() -> dict[str, object]:
return {
"type": "listing.new",
"listing": {
"externalId": "abc",
"url": "https://example.test/listing",
"title": "Просторная квартира",
"price": 4500,
"currency": "PLN",
"additionalFees": 700,
"area": 62.5,
"rooms": 3,
"location": {"city": "Warszawa", "district": "Wola", "street": "Prosta"},
"images": ["https://example.test/image.jpg"],
},
}
def test_parses_and_formats_listing() -> None:
listing = listing_from_event(event())
assert listing is not None
assert listing.images == ("https://example.test/image.jpg",)
text = format_listing(listing)
assert "4500 PLN" in text
assert "Warszawa, Wola, Prosta" in text
assert "https://example.test/listing" in text
def test_ignores_ready_and_incomplete_events() -> None:
assert listing_from_event({"type": "service.ready"}) is None
assert listing_from_event({"type": "listing.new", "listing": {}}) is None