Files
Connor Johnstone 7d00a2dadb
Some checks failed
Integration Tests / e2e-tests (push) Failing after 4s
Integration Tests / unit-tests (push) Failing after 1m1s
Implement comprehensive frontend integration testing with Playwright
- Add Playwright E2E testing framework with cross-browser support (Chrome, Firefox)
- Create authentication helpers for CalDAV server integration
- Implement calendar interaction helpers with event creation, drag-and-drop, and view switching
- Add comprehensive drag-and-drop test suite with event cleanup
- Configure CI/CD integration with Gitea Actions for headless testing
- Support both local development and CI environments with proper dependency management
- Include video recording, screenshots, and HTML reporting for test debugging
- Handle Firefox-specific timing and interaction challenges with force clicks and timeouts

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-08 11:54:40 -04:00

203 lines
9.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Page snapshot
```yaml
- generic [ref=e2]:
- complementary [ref=e3]:
- generic [ref=e4]:
- heading "Runway" [level=1] [ref=e5]
- generic [ref=e6]:
- generic [ref=e7]: test
- generic [ref=e8]: https://baikal.rcjohnstone.com/dav.php/
- generic [ref=e9]:
- heading "My Calendars" [level=3] [ref=e10]
- list [ref=e11]:
- listitem [ref=e12] [cursor=pointer]:
- generic [ref=e13] [cursor=pointer]:
- checkbox [checked] [ref=e14] [cursor=pointer]
- generic [ref=e16] [cursor=pointer]: Default
- listitem [ref=e17] [cursor=pointer]:
- generic [ref=e18] [cursor=pointer]:
- checkbox [checked] [ref=e19] [cursor=pointer]
- generic [ref=e21] [cursor=pointer]: My New Calendar
- listitem [ref=e22] [cursor=pointer]:
- generic [ref=e23] [cursor=pointer]:
- checkbox [checked] [ref=e24] [cursor=pointer]
- generic [ref=e26] [cursor=pointer]: Third Calendar
- generic [ref=e27]:
- heading "External Calendars" [level=3] [ref=e28]
- list [ref=e29]:
- listitem [ref=e30]:
- generic [ref=e31] [cursor=pointer]:
- checkbox [checked] [ref=e32] [cursor=pointer]
- generic [ref=e34] [cursor=pointer]: DSA
- generic [ref=e35] [cursor=pointer]:
- 'generic "Last updated: 2025-09-08 11:40" [ref=e36] [cursor=pointer]': 11:40
- button "🔄" [ref=e37] [cursor=pointer]
- listitem [ref=e38]:
- generic [ref=e39] [cursor=pointer]:
- checkbox [checked] [ref=e40] [cursor=pointer]
- generic [ref=e42] [cursor=pointer]: Work
- generic [ref=e43] [cursor=pointer]:
- 'generic "Last updated: 2025-09-08 11:40" [ref=e44] [cursor=pointer]': 11:40
- button "🔄" [ref=e45] [cursor=pointer]
- generic [ref=e46]:
- button "+ Add Calendar" [ref=e47] [cursor=pointer]
- combobox [ref=e49] [cursor=pointer]:
- option "Month"
- option "Week" [selected]
- combobox [ref=e51] [cursor=pointer]:
- option "Default" [selected]
- option "Ocean"
- option "Forest"
- option "Sunset"
- option "Purple"
- option "Dark"
- option "Rose"
- option "Mint"
- combobox [ref=e53] [cursor=pointer]:
- option "Default" [selected]
- option "Google Calendar"
- button "Logout" [ref=e54] [cursor=pointer]
- main [ref=e55]:
- generic [ref=e57]:
- generic [ref=e58]:
- generic [ref=e59]:
- button "" [ref=e60] [cursor=pointer]
- button "15" [ref=e61] [cursor=pointer]
- heading "September 2025" [level=2] [ref=e62]
- generic [ref=e63]:
- button "Today" [ref=e64] [cursor=pointer]
- button "" [ref=e65] [cursor=pointer]
- generic [ref=e66]:
- generic [ref=e67]:
- generic [ref=e70]:
- generic [ref=e71]: Sun
- generic [ref=e72]: "7"
- generic [ref=e74]:
- generic [ref=e75]: Mon
- generic [ref=e76]: "8"
- generic [ref=e78]:
- generic [ref=e79]: Tue
- generic [ref=e80]: "9"
- generic [ref=e82]:
- generic [ref=e83]: Wed
- generic [ref=e84]: "10"
- generic [ref=e86]:
- generic [ref=e87]: Thu
- generic [ref=e88]: "11"
- generic [ref=e90]:
- generic [ref=e91]: Fri
- generic [ref=e92]: "12"
- generic [ref=e94]:
- generic [ref=e95]: Sat
- generic [ref=e96]: "13"
- generic [ref=e98]:
- generic [ref=e99]:
- generic [ref=e100]: 12 AM
- generic [ref=e101]: 1 AM
- generic [ref=e102]: 2 AM
- generic [ref=e103]: 3 AM
- generic [ref=e104]: 4 AM
- generic [ref=e105]: 5 AM
- generic [ref=e106]: 6 AM
- generic [ref=e107]: 7 AM
- generic [ref=e108]: 8 AM
- generic [ref=e109]: 9 AM
- generic [ref=e110]: 10 AM
- generic [ref=e111]: 11 AM
- generic [ref=e112]: 12 PM
- generic [ref=e113]: 1 PM
- generic [ref=e114]: 2 PM
- generic [ref=e115]: 3 PM
- generic [ref=e116]: 4 PM
- generic [ref=e117]: 5 PM
- generic [ref=e118]: 6 PM
- generic [ref=e119]: 7 PM
- generic [ref=e120]: 8 PM
- generic [ref=e121]: 9 PM
- generic [ref=e122]: 10 PM
- generic [ref=e123]: 11 PM
- generic [ref=e124]:
- generic [ref=e125]:
- generic:
- generic [ref=e128] [cursor=pointer]:
- generic [ref=e129] [cursor=pointer]: Invalid Drag Test 1757345928576
- generic [ref=e130] [cursor=pointer]: 1:00 - 02:00 PM
- generic [ref=e134] [cursor=pointer]:
- generic [ref=e135] [cursor=pointer]: Cross Day Drag 1757345927213
- generic [ref=e136] [cursor=pointer]: 9:00 - 10:00 AM
- generic [ref=e140] [cursor=pointer]:
- generic [ref=e141] [cursor=pointer]: Invalid Drag Test 1757346258778
- generic [ref=e142] [cursor=pointer]: 1:00 - 02:00 PM
- generic [ref=e146] [cursor=pointer]:
- generic [ref=e147] [cursor=pointer]: Drag Test Event 1757346275445
- generic [ref=e148] [cursor=pointer]: 1:00 - 02:00 AM
- generic [ref=e152] [cursor=pointer]:
- generic [ref=e153] [cursor=pointer]: Invalid Drag Test 1757346277496
- generic [ref=e154] [cursor=pointer]: 1:00 - 02:00 PM
- generic [ref=e158] [cursor=pointer]:
- generic [ref=e159] [cursor=pointer]: Cross Day Drag 1757346258183
- generic [ref=e160] [cursor=pointer]: 9:00 - 10:00 AM
- generic [ref=e164] [cursor=pointer]:
- generic [ref=e165] [cursor=pointer]: Visual Feedback Test 1757346258108
- generic [ref=e166] [cursor=pointer]: 11:00 AM - 12:00 PM
- generic [ref=e170] [cursor=pointer]:
- generic [ref=e171] [cursor=pointer]: BOSK and Beyond
- generic [ref=e172] [cursor=pointer]: 6:00 - 08:00 PM
- generic [ref=e174]:
- generic:
- generic [ref=e177] [cursor=pointer]:
- generic [ref=e178] [cursor=pointer]: All Hands
- generic [ref=e179] [cursor=pointer]: 12:30 - 01:00 PM
- generic [ref=e183] [cursor=pointer]:
- generic [ref=e184] [cursor=pointer]: MACI Tag-Up Meeting
- generic [ref=e185] [cursor=pointer]: 6:00 - 07:00 PM
- generic:
- generic:
- generic: 11:45 AM
- generic [ref=e187]:
- generic:
- generic [ref=e190] [cursor=pointer]:
- generic [ref=e191] [cursor=pointer]: test
- generic [ref=e192] [cursor=pointer]: 5:45 - 06:45 PM
- generic [ref=e196] [cursor=pointer]:
- generic [ref=e197] [cursor=pointer]: Tech & Logistics Commission Meeting
- generic [ref=e198] [cursor=pointer]: 6:30 - 08:30 PM
- generic [ref=e202] [cursor=pointer]:
- generic [ref=e203] [cursor=pointer]: OrbitIQ/Victus Haze IRAD Standup
- generic [ref=e204] [cursor=pointer]: 3:30 - 04:00 PM
- generic [ref=e208] [cursor=pointer]:
- generic [ref=e209] [cursor=pointer]: VLEO IRaD - Standup (15 - 30 mins)
- generic [ref=e210] [cursor=pointer]: 5:00 - 05:30 PM
- generic [ref=e214] [cursor=pointer]:
- generic [ref=e215] [cursor=pointer]: "Lunch-and-Learn: Susan G. Komen Partnership"
- generic [ref=e216] [cursor=pointer]: 12:00 - 01:00 PM
- generic [ref=e221] [cursor=pointer]:
- generic [ref=e222] [cursor=pointer]: Communications Committee Meeting
- generic [ref=e223] [cursor=pointer]: 6:30 - 07:30 PM
- generic [ref=e225]:
- generic:
- generic [ref=e228] [cursor=pointer]:
- generic [ref=e229] [cursor=pointer]: "SolCity Action Alert: PACK THE ROOM at Metro Council Meeting"
- generic [ref=e230] [cursor=pointer]: 6:00 - 07:00 PM
- generic [ref=e234] [cursor=pointer]:
- generic [ref=e235] [cursor=pointer]: Membership Engagement & Political Education Committee Meetings
- generic [ref=e236] [cursor=pointer]: 6:30 - 08:30 PM
- generic [ref=e240] [cursor=pointer]:
- generic [ref=e241] [cursor=pointer]: OrbitIQ/Victus Haze IRAD Standup
- generic [ref=e242] [cursor=pointer]: 3:30 - 04:00 PM
- generic [ref=e246] [cursor=pointer]:
- generic [ref=e247] [cursor=pointer]: KM NLP Weekly Technical Meeting
- generic [ref=e248] [cursor=pointer]: 4:30 - 05:00 PM
- generic [ref=e252] [cursor=pointer]:
- generic [ref=e253] [cursor=pointer]: VLEO IRaD - Standup (15 - 30 mins)
- generic [ref=e254] [cursor=pointer]: 5:00 - 05:30 PM
- generic [ref=e257]:
- generic:
- generic [ref=e260] [cursor=pointer]:
- generic [ref=e261] [cursor=pointer]: Gender Affirming Clothing Swap
- generic [ref=e262] [cursor=pointer]: 11:00 AM - 01:00 PM
- generic [ref=e266] [cursor=pointer]:
- generic [ref=e267] [cursor=pointer]: Website Sub-Committee Working Meeting
- generic [ref=e268] [cursor=pointer]: 3:00 - 05:00 PM
```