Files
silverbullet-icalendar/conductor/tracks/testing_infrastructure_20260219/plan.md
sstent 90ab92421a
Some checks failed
Build SilverBullet Plug / build (push) Has been cancelled
feat(test): implement Playwright E2E and Dockerized testing infrastructure
2026-02-21 13:19:37 -08:00

1.7 KiB

Implementation Plan - Testing Infrastructure

Phase 1: Environment & Mock Server [checkpoint: 1a46341]

  • Task: Scaffold Docker environment 23a59b9
    • Create test_data/ directory.
    • Create docker-compose.test.yml with SilverBullet and an Nginx container serving test_data/.
  • Task: Integration Test Scaffolding 2bfd9d5
    • Create tests/integration_test.ts that uses the actual ts-ics parser on files in test_data/.
  • Task: Conductor - User Manual Verification 'Environment & Mock Server' (Protocol in workflow.md)
    • Ensure use of docker-compose -f docker-compose.test.yml down -v for clean starts.

Phase 2: Playwright E2E Setup [checkpoint: e80e4fb]

  • Task: Initialize Playwright 319a955
    • Setup Playwright with necessary configurations for Docker (headless, CI mode).
  • Task: Implement sync smoke test ed15079
    • Create tests/e2e/sync.spec.ts.
    • Automate login, plug installation (icalendar.plug.js), and triggering the "iCalendar: Sync" command.
    • Implement console listener to fail on Error or TypeError.
  • Task: Conductor - User Manual Verification 'Playwright E2E Setup' (Protocol in workflow.md)

Phase 3: Validation & Bug Fix

  • Task: Verify Infrastructure against current bug 2bfd9d5
    • Add the problematic .ics to test_data/.
    • Confirm that E2E and Integration tests fail with Unknown RRULE property 'WORKWEEKSTART'.
  • Task: Implement Fix for WORKWEEKSTART a8755eb
    • Update RRULE_KEY_MAP in icalendar.ts.
    • Run tests again to confirm they pass.
  • [~] Task: Conductor - User Manual Verification 'Validation & Bug Fix' (Protocol in workflow.md)
    • Update Playwright to run in headed mode via xvfb-run per user request.