calendar-plugin/tests/calendar_entries.md

3.6 KiB

Calendar Entry Test Fixtures

Purpose

Define canonical calendar entries used across admin UI, public UI, CalDAV, ICS, and API tests so scenarios are consistent end-to-end.

Global Assumptions

  • Timezone baseline: Europe/London
  • Date format: ISO 8601 in docs, converted as needed by UI/API
  • IDs/UIDs are stable in test environments

Fixture Set

CE-001 Single Timed Event

  • Title: Board Meeting
  • Location: Room A
  • Category: Governance
  • Start: 2026-04-01T10:00:00+01:00
  • End: 2026-04-01T11:30:00+01:00
  • Repeat: none
  • Description: Quarterly board review.

CE-002 All-Day Event

  • Title: Office Closed
  • Location: HQ
  • Category: Operations
  • Start: 2026-05-04 (all day)
  • End: 2026-05-05 (exclusive end for all-day semantics)
  • Repeat: none
  • Description: Public holiday closure.

CE-003 Daily Recurrence (Count-Limited)

  • Title: Daily Standup
  • Location: Online
  • Category: Team
  • Start: 2026-04-06T09:00:00+01:00
  • End: 2026-04-06T09:15:00+01:00
  • Repeat: daily
  • Custom interval: 1
  • Range mode: count
  • Count: 10
  • Description: 15 minute sync.

CE-004 Weekly Recurrence (No End)

  • Title: Community Lunch
  • Location: Cafeteria
  • Category: Community
  • Start: 2026-04-08T12:30:00+01:00
  • End: 2026-04-08T13:30:00+01:00
  • Repeat: weekly
  • Custom interval: 1
  • Range mode: no_end
  • Description: Weekly community lunch.

CE-005 Monthly Recurrence (Until Date)

  • Title: Finance Close
  • Location: Finance Office
  • Category: Finance
  • Start: 2026-04-30T17:00:00+01:00
  • End: 2026-04-30T18:00:00+01:00
  • Repeat: monthly
  • Custom interval: 1
  • Range mode: until
  • Until: 2026-08-31
  • Description: Month-end close process.

CE-006 Yearly Recurrence

  • Title: Annual Conference
  • Location: Main Hall
  • Category: Events
  • Start: 2026-06-15T10:00:00+01:00
  • End: 2026-06-15T17:00:00+01:00
  • Repeat: yearly
  • Custom interval: 1
  • Range mode: count
  • Count: 3
  • Description: Annual community conference.

CE-007 Custom Every 2 Weeks (Until Date)

  • Title: Fortnightly Coaching
  • Location: Online
  • Category: Training
  • Start: 2026-04-07T15:00:00+01:00
  • End: 2026-04-07T16:00:00+01:00
  • Repeat: custom
  • Base unit: weekly
  • Interval: 2
  • Range mode: until
  • Until: 2026-07-31
  • Description: Coaching check-in.

CE-008 DST Boundary Event

  • Title: DST Validation Event
  • Location: Lab
  • Category: QA
  • Start: 2026-10-25T00:30:00+01:00
  • End: 2026-10-25T02:30:00+00:00
  • Repeat: none
  • Description: Validates DST transition rendering.

CE-009 Leap-Year Annual Event

  • Title: Leap Day Marker
  • Location: Calendar
  • Category: QA
  • Start: 2028-02-29T09:00:00+00:00
  • End: 2028-02-29T10:00:00+00:00
  • Repeat: yearly
  • Custom interval: 1
  • Range mode: count
  • Count: 3
  • Description: Leap day recurrence behavior.

CE-010 Recurring Event with Exception Delete

  • Title: Therapy Session
  • Location: Clinic
  • Category: Health
  • Start: 2026-04-03T14:00:00+01:00
  • End: 2026-04-03T15:00:00+01:00
  • Repeat: weekly
  • Custom interval: 1
  • Range mode: count
  • Count: 8
  • Description: Used for single-occurrence delete exception tests.
  • Exception target occurrence: 2026-04-17T14:00:00+01:00 (delete this occurrence only)

Core Assertions by Fixture

  • CE-001/CE-002 validate single-event CRUD, all-day handling, UI display.
  • CE-003..CE-007 validate recurrence creation, expansion, update, and persistence.
  • CE-008 validates DST render/sync behavior.
  • CE-009 validates leap-year recurrence behavior.
  • CE-010 validates recurrence exception behavior (no series split).