- Add all page objects to fixtures (plannerPage, syncPage, tagPage, notePage, sideNavPage)
- Create assertion helpers (expectTaskCount, expectTaskVisible, etc.)
- Enhance CLAUDE.md with patterns, import paths, and all fixtures
- Add const assertion to selectors for better TypeScript support
Add comprehensive improvements to make e2e test development faster and easier:
1. **New Page Objects** - Reduce code duplication and improve maintainability:
- task.page.ts: Task operations (get, mark done, edit, subtasks, etc.)
- settings.page.ts: Settings navigation and plugin management
- dialog.page.ts: Dialog interactions (save, close, date editing, etc.)
- All page objects integrated into test.fixture.ts for easy access
2. **Centralized Selectors** - Single source of truth:
- Expanded constants/selectors.ts with 50+ selectors
- Organized by category (Navigation, Tasks, Dialogs, Settings, etc.)
- Makes selector updates easier when UI changes
3. **Comprehensive Documentation** - Complete e2e/README.md guide:
- Page object usage examples
- Common test patterns
- Best practices and anti-patterns
- Troubleshooting guide
- Step-by-step instructions for writing new tests
These improvements provide a better foundation for AI-assisted test development
and make it faster to add new e2e tests.
- Add waitForStatePersistence utility for sync tests to replace hardcoded delays
- Fix nav-list vs nav-list-tree selector inconsistencies across test files
- Replace waitForTimeout calls with proper element waits and Angular stability checks
- Update selectors.ts constants to use correct nav-list-tree component selector