38 lines
1.6 KiB
Markdown
38 lines
1.6 KiB
Markdown
# Task Brief: Implement Playwright E2E Tests for LinkdingSync
|
|
|
|
## Context
|
|
LinkdingSync is a Firefox browser extension that synchronizes bookmarks with a self-hosted Linkding instance. Current state: Basic functionality exists but lacks comprehensive E2E test coverage for bookmark sync operations.
|
|
|
|
## Goal
|
|
Implement comprehensive Playwright E2E tests to increase test coverage and ensure bookmark sync reliability.
|
|
|
|
## Acceptance Criteria
|
|
- [ ] Tests pass for happy path (bookmark creation, sync to Linkding)
|
|
- [ ] Tests fail appropriately for invalid API responses
|
|
- [ ] Tests run under 5 minutes (Firefox primary)
|
|
- [ ] Coverage increases by at least 50%
|
|
- [ ] Tests include proper setup/teardown (browser launch, API authentication)
|
|
- [ ] Tests cover: bookmark creation, API sync, conflict resolution, folder structure, auto-tag generation
|
|
|
|
## Constraints
|
|
- Don't modify core extension logic (manifest.json, main sync logic)
|
|
- Use existing API patterns (token authentication)
|
|
- Keep tests focused on UI automation, not unit logic
|
|
- Tests must work in headless mode for CI
|
|
|
|
## Related Files
|
|
- `@LinkdingSync\popup.html` - UI for bookmark entry
|
|
- `@LinkdingSync\background.js` - Service worker
|
|
- `@LinkdingSync\utils\sync.js` - Sync logic
|
|
- `@LinkdingSync\manifest.json` - Extension config
|
|
- `@LinkdingSync\playwright.config.ts` - Test configuration
|
|
|
|
## Time Estimate
|
|
45-60 minutes for initial test implementation
|
|
|
|
## Checkpoints
|
|
- 50%: Initial test structure created, first tests passing
|
|
- 90%: Most tests implemented, iterating on fixes
|
|
|
|
## Chatlog Reference
|
|
- Session log: `@LinkdingSync\chatlog.md` |