| 123456789101112131415161718192021222324252627 |
- import pytest
- from room_cal._utils import CalendarEntry
- from room_cal.ical_feeds import fetch_calendar
- from room_cal.cal._backend import EventRecord
- _FIRE_ENTRY = CalendarEntry(name='Fire', url='webcal://cal.4114.us/fire.ics')
- _HOUSE_ENTRY = CalendarEntry(name='House', caldav='House')
- def _assert_events(events: list[EventRecord], expected_calendar: str):
- assert isinstance(events, list), "fetch_calendar should return a list"
- for e in events:
- assert isinstance(e, EventRecord), f"Expected EventRecord, got {type(e)}"
- assert e._meta.get('calendar') == expected_calendar
- assert e.end >= e.start
- @pytest.mark.asyncio
- async def test_fire_http_ical():
- events = await fetch_calendar(_FIRE_ENTRY)
- _assert_events(events, 'Fire')
- @pytest.mark.asyncio
- async def test_house_caldav():
- events = await fetch_calendar(_HOUSE_ENTRY)
- _assert_events(events, 'House')
|