calendar-plugin/tests/user_ui_caldav_1hr_spec.md

2.5 KiB

User Functional Test Spec (UI + CalDAV, ~1 Hour)

Goal

Exercise the highest-value user flows across web UI, admin setup/users pages, recurrence logic, ICS, and CalDAV synchronization within 60 minutes.

Preconditions (5 minutes)

  • Tester has:
    • WordPress admin account
    • one approved calendar user account (for UI + CalDAV write tests)
    • one pending user account (for approval flow checks)
  • Test calendar client available (for example Thunderbird).
  • Plugin active and calendar page with [calendar] exists.

Test Plan

1. Setup Page (8 minutes)

  • Open Setup.
  • Verify controls are present and usable:
    • CalDAV/ICS calendar name
    • URL slug
    • plugin table prefix
    • diagnostics enabled
    • uninstall cleanup mode
    • buttons: Save Settings, Seed Events, Delete All Events Data
  • Click Seed Events.
  • Confirm success message appears.

2. Users Admin Flow (6 minutes)

  • Open Users page.
  • Verify pending user appears.
  • Approve pending user.
  • Remove a defunct test user (if present) and verify list refreshes.

3. Calendar UI Auth + CRUD (12 minutes)

  • Open calendar page in logged-out mode; verify read-only behavior.
  • Log in as approved user.
  • Create a single timed event.
  • Edit same event (title/category/location/description).
  • Delete the event.
  • Confirm list/month views update after each operation.

4. Recurrence + Exception UX (12 minutes)

  • Create a recurring event (daily or weekly).
  • Re-open event and confirm recurrence preview pane is visible.
  • Select one occurrence in preview (verify visual highlight).
  • Deselect and reselect to verify toggle behavior.
  • Click Delete Occurrence and confirm selected occurrence disappears while series remains.

5. CalDAV Round-Trip (10 minutes)

  • In CalDAV client:
    • subscribe/connect using approved account.
    • create one event.
    • edit one event.
    • delete one single occurrence from a recurring series.
  • In web UI:
    • refresh and confirm all CalDAV changes are reflected.

6. ICS + Diagnostics (7 minutes)

  • Open ICS URL and confirm file downloads and contains seeded + user-created events.
  • Open Diagnostics page:
    • verify diagnostics snapshot renders.
    • click Download Diagnostics and confirm JSON file downloads.

Pass Criteria

  • No fatal errors.
  • CRUD works from UI and CalDAV.
  • Single-occurrence delete creates exception without splitting series.
  • Admin controls behave as expected.
  • Diagnostics download works as attachment.

Failure Notes Template

  • Step:
  • Expected:
  • Actual:
  • URL/page/client:
  • Timestamp (local):
  • Screenshot/log reference: